Skip to content

Instantly share code, notes, and snippets.

View dancinllama's full-sized avatar

James Loghry dancinllama

View GitHub Profile
public class OpportunityTriggerHandler extends TriggerHandler {
private Map<Id, Opportunity> newOpportunityMap = new Map<Id, Opportunity>();
private Map<Id, Opportunity> oldOpportunityMap = new Map<Id, Opportunity>();
private List<Opportunity> triggerNew = new List<Opportunity>();
private List<Opportunity> triggerOld = new List<Opportunity>();
public OpportunityTriggerHandler() {
this.triggerNew = (List<Opportunity>) Trigger.new;
this.triggerOld = (List<Opportunity>) Trigger.old;
{{#each this.product.prodBean.subscriptionLabels}}
{{this}}
{{/each}}
//Iterate over a seperate array, but with same length.
//returns empty string for each subscription label, when it should return some text
{{#each this.product.prodBean.subscriptionDurations}}
{{this.product.prodBean.subscriptionLabels.[{{@index}}]}}]
{{/each}}
@dancinllama
dancinllama / gist:3136488
Created July 18, 2012 14:24
Creating a portal user
public static Account createPortalAccount(){
User u = [Select Id From User Where Id=:UserInfo.getUserId()];
Id roleId = [Select Id From UserRole Where PortalType='None' Limit 1].Id;
User accountOwner = null;
System.runAs(u){
Map<String,Object> acctOwnerInputParams = new Map<String,Object>();
acctOwnerInputParams = new Map<String,Object>();
acctOwnerInputParams.put('UserRoleId',roleId);
acctOwnerInputParams.put('Username','batmanowner@wayneenterprises.com');
@dancinllama
dancinllama / 1. Lightning Design System Checkbox Lightning Component (cmp)
Last active October 7, 2015 22:30
The checkboxes in the Salesforce Lightning Design System are odd ducks. They require a DOM structure that the Lightning component or aura ui:inputCheckbox tag doesn't support natively, due to the "slds-checkbox--faux" span, etc. Furthermore, the SLDS checkbox uses Ids to control the value between the faux span and the input:checkbox. I'm not sur…
<!-- LDS markup for a checkbox (https://www.lightningdesignsystem.com/components/forms/) -->
<div class="slds-form-element margintop10">
<label class="slds-checkbox" for="requiredCheckbox">
<ui:inputCheckbox aura:Id="requiredCheckbox" value="{!v.selectedFormObject.Required_On_Form__c}" />
<span class="slds-checkbox--faux" />
<span class="slds-form-element__label marginleft10">Required on Form?</span>
</label>
</div>
private Map<String,Set<String>> parseCsv(Integer numRecords){
//csvFile is public Blob member variable...
String csvData = csvFile.ToString();
csvData = csvData.replace('"','');
List<String> records = csvData.split('\r?\n');
Map<String,Set<String>> ans = ...
//Start at 1 to skip header row
for(Integer i=1; i < records.size() && (numRecords == null || i <= numRecords); i++){
//Apex Controller code
public List<SelectOption> filterCriteria{
get{
//TODO change the names to labels
List<SelectOption> options = new List<SelectOption>();
for(Account a : [Select Name,Value__c From Account Limit 10]){
options.add(new SelectOption(a.Value__c,a.Name);
}
return options;
}
@dancinllama
dancinllama / gist:3749781
Created September 19, 2012 13:49
java connection error handling examp
for (int i=0; i< saveResults.length; i++) {
if (saveResults[i].isSuccess()) {
System.out.println(i+". Successfully deleted record - Id: " + saveResults[i].getId());
} else {
Error[] errors = saveResults[i].getErrors();
for (int j=0; j< errors.length; j++) {
System.out.println("ERROR deleting record: " + errors[j].getMessage());
}
}
@dancinllama
dancinllama / gist:3800800
Created September 28, 2012 16:30
partial success handling
//sobjList is my array of records inserted..
this.currentIndex = 0;
for(Database.SaveResult sr : Database.insert(objects,false)){
if(!sr.success){
exceptions.add(createException(batchId,sr.getErrors().get(0),sobjList.get(currentIndex)));
}
currentIndex++;
}
@dancinllama
dancinllama / gist:4074621
Created November 14, 2012 20:37
vf page to redirect to login page
<apex:page showHeader="false" standardController="Trial__c" extensions="PAM1_ProvisioningLoginTrial">
<head>
<apex:includeScript value="{!URLFOR($Resource.jquerymin182, '/jquery-1.8.2.min.js')}" />
<script>
$j = jQuery.noConflict();
$j.post("{!url}", { username: "{!username}", password: "{!password}" },
function(data) {
if(data) {
window.href('{!url}');
}