• JoshGui
  • NEWBIE
  • 0 Points
  • Member since 2010

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 12
    Questions
  • 9
    Replies

I'm using the authentication method described by Chuck Mortimore at Dreamforce with the url from the client's browser:

https://login.salesforce.com/services/oauth2/authorize?response_type=code&client_id=<your_client_id>&redirect_uri=<your_redirect_uri> 

 

This is described also in the article below:

 

http://wiki.developerforce.com/page/Digging_Deeper_into_OAuth_2.0_on_Force.com

 

However, our external app is being placed into an iframe, and the login.salesforce.com page has restrictions on being placed in an iframe.  I understand why Salesforce wouldn't want their main login page to be placed in an iframe, but since we are building an app that simply uses it for authentication and data storage, this is unfortunate.  Does anyone have a solution?

 

I would think it would be better to offer a separate way of authenticating with Oauth, a different service that points at a different login page for external apps... 

 

Does anyone know if a Customer Portal user with the Authenticated Website profile can be set on that profile to have CRUD rights to Push Topics (the streaming API object)?  I do not want to purchase this license unless I know that for sure, but can't really tell until I purchase the license..

 

Thanks,
Josh 

Does anyone know if it is possible to use the new Streaming API with Sites?  I've got a working example going with a logged in user, getting push to a visualforce page.  It doesn't appear there is the ability to give the Sites User's profile read rights to the standard object "Push Topics."  

 

So I'm thinking this might be done using OAuth, and just seeing if anyone had any input on this?  

 

Thanks,

Josh

Does anyone know if it is possible to use the new Streaming API for push with Sites?  I've got a working example going with a logged in user, getting push to a visualforce page.  It doesn't appear there is the ability to give the Sites User's profile read rights to the standard object "Push Topics."  

 

So I'm thinking this might be done using OAuth, and just seeing if anyone had any input on this?  

 

Thanks,

Josh

Our sites are not being able to be used with https.  It appears that the certificate salesforce has for SSL is not valid.  our site is

 

https://hhs.force.com/

 

When I look at the certificate, it has been issued for slotmatching3.salesforce.com by Akamai Subordinate CA 3.

 

We use sites for entering form information for an application, and it is essential that our customers use https.  Is anybody else having this problem?  Does anyone have any information about this?

 

I opened a support ticket early yesterday and they are still "researching..."

 

Looking through the documentation below, I found this, which is happening even though ours is out of a production org.

 

"Only production organizations have the valid secure.force.com SSL certificates to access sites using HTTPS.
Note: If a site within a sandbox (non-production) organization is accessed using HTTPS, a certificate name
mismatch warning may appear."

 

reference: https://login.salesforce.com/help/doc/en/salesforce_platform_portal_implementation_guide.pdf

We're making SOAP calls to a WSDL on the salesforce side, using aws.  We are intermittently, but very frequently getting time outs connecting to Salesforce.  Is anybody else experiencing this sort of thing, or have any advice?

 

Update:  From our office, the dns ip address that we are served for login.salesforce.com dns is pingable.  However, from the amazon box that we have setup, pinging fails to this ip address.  I'm assuming they're geo serving ip addresses.  Could this be resolved using a static ip address for our wsdl calls?

 

Thanks,
Josh Guimond
 

We'd like to use chatter to log errors, instead of sending emails to ourselves, which is what we do now.  However, we have two different orgs with the same application.  Is it possible for one org to post to another org's group feed (using apex only)?

We'd like to use chatter to log errors, instead of sending emails to ourselves, which is what we do now.  However, we have two different orgs with the same application.  Is it possible for one org to post to another org's group feed (using apex only)?

We'd like to have a dynamic drop-down (apex selectList)  with visualforce pages being the options to redirect a user to.  You can set what visualforce pages a user has access to on the profile.

 

Does anyone know of a way to be able to make this list dynamic based on what profile a user has?  I hope I'm being clear!

We are a privately owned national company, headquartered in Austin with over 35 years of sustained growth. Our IT Department is looking for a positive, customer service driven individual to fill the role of Salesforce Administrator / Developer.  
 
The person in this position is responsible for building, managing, and maintaining the company’s Salesforce instance that will be used by all levels of management and ownership.  There will be an emphasis on building custom apps to automate existing manual processes within HHS to streamline operations.  The individual in the position must have strong project management skills and be able to communicate effectively about schedules and time frames in addition to managing exceptions as to completion dates.  This person must have the ability to understand the goals of the organization and translate those goals into a clear vision for the development of the Salesforce schema.  
 
This position involves a high degree of exposure to senior management and our company ownership group. While we are definitely not looking for “corporate drones”, we do require that members of our team be able to interact successfully with all levels of management and work effectively in a corporate environment.

We’ve been looking for the right individuals to fill our ranks for quite a while now so we’re going to mix it up a little bit. Along with the standard Resume & Cover Letter submission, we’d like to encourage interested candidates to call the following number (512-354-7685) and leave a brief (3 minutes or less) voicemail telling us a little bit about yourself and why you feel like you’d be a good fit for the job. Voicemail submissions will get top priority during the screening process so please humor us and make the call. Thanks for your interest and we look forward to hearing from you!

Required Skills:
  • Microsoft Office - Must have excellent Microsoft Office skills with Word, Excel, and Power point.
  • Salesforce Administration - Must have advanced knowledge of Salesforce customization and management. This includes working knowledge of:  Visual Force, Integration with 3rd party systems using the Data Loader and other protocols, Java Script, HTML & CSS, Building Custom Apps, Salesforce Sites, AppExchange packages and applications, mobile administration & configuration.
  • Development Experience - Experience in software design, development, implementation, and production support.  Experience with Visualforce, Apex, Triggers, API preferred.
  • Communication - Must have excellent oral and written communications skills.
  • Training & Documentation Development - Must be effective in providing instruction to all level of management in one-on-one and group settings.  In addition, must be able to create and maintain well formatted documentation.
  • Organization / Prioritization - Must be very well organized and be able to handle and prioritize multiple simultaneous requests.
  • Exceptional Customer Service Attitude - Must be able to provide effective support and provide excellent service to internal HHS employees and HHS customers.
  • Ability to Work Independently and be Proactive
  • Salesforce.com Certified Administrator (or Developer) preferred
  • 2-3 years of hands-on experience administering and developing SFDC
Salary:  competitive with full benefits
Resume / Cover Letter to:  joshg@hhs1.com

Does anybody have any recommendations or experience with changing the Owner using a Trigger (versus a workflow rule)?  I've setup a trigger that automatically "Submits" to an Approval Process based on the Owner of the record, but it looks like the trigger fires off the approval to the current owner before a Workflow rule can change the owner to who i'd like.  I don't even mind if I have to hardcode the preferred ownerid into the trigger.

This is probably a simple problem, but can't figure it out myself.  (amateur).

 

I have  a Site with pages, and a custom controller so that a (public) guest user can fill out a form and it then redirects them to a new page with output fields so they can see what they entered.  The problem I am having is that this custom object has "record types" and all submissions are going into the default record type, and I'm not sure how to change that.  I have a different Page for each (record type) submission form, and would like to be able to "set" the record type based on the page they are on.

 

Along the same lines, "during" adding a new record, I'd like to set a custom field "Status_c" to a value - that I can change later in my administrator ui, that the guest user would not be able to see or input or change.  I believe these are related tasks?

 

If anybody could help, or at least point in the right direction, I'd very much appreciate it!!!!

 

 

Here's part of a page and controller:

 

 

<apex:page controller="PIFBonusController" tabStyle="Account" sidebar="false" showHeader="false">
<meta name="robots" content="noindex">
<apex:form >
<apex:pageBlock title="Bonus PIF">
<p/>First Name:<br/><apex:inputField required="true" value="{!newpif.First_Name__c}"/>
<p/>Last Name:<br/><apex:inputField required="true" value="{!newpif.Last_Name__c}"/>

 

<apex:page controller="PIFBonusController" tabStyle="Account" sidebar="false" showHeader="false">

   <apex:form >

   <apex:pageBlock title="Bonus PIF">

       <p/>First Name:<br/><apex:inputField required="true" value="{!newpif.First_Name__c}"/>

       <p/>Last Name:<br/><apex:inputField required="true" value="{!newpif.Last_Name__c}"/>

 

 

   <apex:commandButton value="Submit PIF" action="{!Save}"/>

 

   </apex:pageBlock>

   </apex:form> 

</apex:page>

 

 

 

public with sharing class PIFBonusController {
 
  // the contact record you are adding values to
  public PIF__c newpif {
    get {
      if (newpif == null)
        newpif = new PIF__c();
      return newpif;
    }
    set;
  }
 
  public PIFBonusController() {
    // blank constructor
  }
 
  // save button is clicked
  public PageReference save() {
 
    try {
      insert newpif; // inserts the new record into the database
    } catch (DMLException e) {
      ApexPages.addMessage(new ApexPages.message(ApexPages.severity.ERROR,'Error creating new PIF.'));
      return null;
    }
 
    // if successfully inserted new pif, then displays the thank you page.
    return Page.PIF_Bonus_Thankyou;
  }
 
}

Does anyone know if it is possible to use the new Streaming API with Sites?  I've got a working example going with a logged in user, getting push to a visualforce page.  It doesn't appear there is the ability to give the Sites User's profile read rights to the standard object "Push Topics."  

 

So I'm thinking this might be done using OAuth, and just seeing if anyone had any input on this?  

 

Thanks,

Josh

We'd like to use chatter to log errors, instead of sending emails to ourselves, which is what we do now.  However, we have two different orgs with the same application.  Is it possible for one org to post to another org's group feed (using apex only)?

We'd like to have a dynamic drop-down (apex selectList)  with visualforce pages being the options to redirect a user to.  You can set what visualforce pages a user has access to on the profile.

 

Does anyone know of a way to be able to make this list dynamic based on what profile a user has?  I hope I'm being clear!

Trying to install the IDE to solve the problem caused by saleforce code bugs.

 

It terminates with the following:-

 

http://www.yatecourtbarn.adsl24.co.uk/images/force_IDE.JPG

 

Is it just me, or is this all a heap of crap?

With Winter '11, if you create a Site, a new Salesforce-provided class gets deployed to your org: MyProfilePageController.cls

 

There is test code in this class that fails if you don't have a portal user installed. This prevents you from doing anything in that org that requires running all tests.

 

Here is the error:

 

System.QueryException: List has no rows for assignment to SObject

Class.MyProfilePageController.testSave: line 78, column 35 External entry point

 

and the line in question:

 

 

User existingPortalUser = [SELECT id, profileId, userRoleId FROM User WHERE UserRoleId <> null AND UserType='CustomerSuccess' LIMIT 1];

 

This failure prevents doing any save from Eclipse. You can't deploy new code, edit object metadata files, etc. Complete showstopper.

 

Can anyone:

 * confirm this (we think reproducing will require that you create a new Site, perhaps the first Site in the org, after Winter 11)

 * think of a work-around (tried enabling self-service portal, but it doesn't create the required user type)

 

Anyone from Salesforce confirm that this is a bug and not something we're doing wrong?

 

Thanks!

 

Here is the entire class:

 

/**
 * An apex class that keeps updates of a portal user in sync with its corresponding contact.
   Guest users are never able to access this page.
 */
public class MyProfilePageController {

    private User user;
    private boolean isEdit = false;
    
    public User getUser() {
        return user;
    }

    public MyProfilePageController() {
        user = [SELECT id, email, username, usertype, communitynickname, timezonesidkey, languagelocalekey, firstname, lastname, phone, title,
                street, city, country, postalcode, state, localesidkey, mobilephone, extension, fax, contact.email
                FROM User
                WHERE id = :UserInfo.getUserId()];
        // guest users should never be able to access this page
        if (user.usertype == 'GUEST') {
            throw new NoAccessException();
        }
    }
    
    public Boolean getIsEdit() {
        return isEdit;
    }
    
    public void edit() {
        isEdit=true;
    }    
    
    public void save() {
        if (user.contact != null) {              
            setContactFields(user.contact);
        }
        
        try {
            update user;
            if (user.contact != null) { 
                update user.contact;
            }
            isEdit=false;
        } catch(DmlException e) {
            ApexPages.addMessages(e);
        }
    }
    
    public PageReference changePassword() {
        return Page.ChangePassword;
    }
    
    public void cancel() {
        isEdit=false;
        user = [SELECT id, email, username, communitynickname, timezonesidkey, languagelocalekey, firstname, lastname, phone, title,
                street, city, country, postalcode, state, localesidkey, mobilephone, extension, fax, contact.email
                FROM User
                WHERE id = :UserInfo.getUserId()];
    }
    
    private void setContactFields(Contact c) {
        c.title = user.title;
        c.firstname = user.firstname;
        c.lastname = user.lastname;
        c.email = user.email;
        c.phone = user.phone;
        c.mobilephone = user.mobilephone;
        c.fax = user.fax;
        c.mailingstreet = user.street;
        c.mailingcity = user.city;
        c.mailingstate = user.state;
        c.mailingpostalcode = user.postalcode;
        c.mailingcountry = user.country;
    }

    static testMethod void testSave() {         
        // Modify the test to query for a portal user that exists in your org
        User existingPortalUser = [SELECT id, profileId, userRoleId FROM User WHERE UserRoleId <> null AND UserType='CustomerSuccess' LIMIT 1];
        System.assert(existingPortalUser != null, 'This test depends on an existing test portal user to run');
        
        String randFax = Math.rint(Math.random() * 1000) + '5551234';
        
        System.runAs(existingPortalUser) {
            MyProfilePageController controller = new MyProfilePageController();
            System.assertEquals(existingPortalUser.Id, controller.getUser().Id, 'Did not successfully load the current user');
            System.assert(controller.isEdit == false, 'isEdit should default to false');
            controller.edit();
            System.assert(controller.isEdit == true);
            
            controller.cancel();
            System.assert(controller.isEdit == false);
            
            controller.getUser().Fax = randFax;
            controller.save();
            System.assert(controller.isEdit == false);
        }
        
        // verify that the user and contact were updated
        existingPortalUser = [Select id, fax, Contact.Fax from User where id =: existingPortalUser.Id];
        System.assert(existingPortalUser.fax == randFax);
        System.assert(existingPortalUser.Contact.fax == randFax);
    }

}

 

 

 

  • October 15, 2010
  • Like
  • 0

HELP , I have refreshed a sandbox but cannot login since.  I have used the production login + the sandbox name and the same password but i can't login .

 

Does the login / password change when you refresh a sandbox?

This is probably a simple problem, but can't figure it out myself.  (amateur).

 

I have  a Site with pages, and a custom controller so that a (public) guest user can fill out a form and it then redirects them to a new page with output fields so they can see what they entered.  The problem I am having is that this custom object has "record types" and all submissions are going into the default record type, and I'm not sure how to change that.  I have a different Page for each (record type) submission form, and would like to be able to "set" the record type based on the page they are on.

 

Along the same lines, "during" adding a new record, I'd like to set a custom field "Status_c" to a value - that I can change later in my administrator ui, that the guest user would not be able to see or input or change.  I believe these are related tasks?

 

If anybody could help, or at least point in the right direction, I'd very much appreciate it!!!!

 

 

Here's part of a page and controller:

 

 

<apex:page controller="PIFBonusController" tabStyle="Account" sidebar="false" showHeader="false">
<meta name="robots" content="noindex">
<apex:form >
<apex:pageBlock title="Bonus PIF">
<p/>First Name:<br/><apex:inputField required="true" value="{!newpif.First_Name__c}"/>
<p/>Last Name:<br/><apex:inputField required="true" value="{!newpif.Last_Name__c}"/>

 

<apex:page controller="PIFBonusController" tabStyle="Account" sidebar="false" showHeader="false">

   <apex:form >

   <apex:pageBlock title="Bonus PIF">

       <p/>First Name:<br/><apex:inputField required="true" value="{!newpif.First_Name__c}"/>

       <p/>Last Name:<br/><apex:inputField required="true" value="{!newpif.Last_Name__c}"/>

 

 

   <apex:commandButton value="Submit PIF" action="{!Save}"/>

 

   </apex:pageBlock>

   </apex:form> 

</apex:page>

 

 

 

public with sharing class PIFBonusController {
 
  // the contact record you are adding values to
  public PIF__c newpif {
    get {
      if (newpif == null)
        newpif = new PIF__c();
      return newpif;
    }
    set;
  }
 
  public PIFBonusController() {
    // blank constructor
  }
 
  // save button is clicked
  public PageReference save() {
 
    try {
      insert newpif; // inserts the new record into the database
    } catch (DMLException e) {
      ApexPages.addMessage(new ApexPages.message(ApexPages.severity.ERROR,'Error creating new PIF.'));
      return null;
    }
 
    // if successfully inserted new pif, then displays the thank you page.
    return Page.PIF_Bonus_Thankyou;
  }
 
}