Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

adding fallback widgets

  • Loading branch information...
commit 578d5f78567599f94846d8a72d420783e362d8fa 1 parent a7da8f0
@mickle00 authored
Showing with 542 additions and 123 deletions.
  1. +10 −0 src/classes/CaseFallbackExtension.cls
  2. +5 −0 src/classes/CaseFallbackExtension.cls-meta.xml
  3. +33 −8 src/classes/CaseTransferController.cls
  4. +62 −61 src/classes/ConnectionClass.cls
  5. +12 −0 src/classes/GuestAccountExtension.cls
  6. +5 −0 src/classes/GuestAccountExtension.cls-meta.xml
  7. +79 −0 src/classes/GuestMassUpdateExtension.cls
  8. +5 −0 src/classes/GuestMassUpdateExtension.cls-meta.xml
  9. +7 −1 src/layouts/Account-Administrator.layout
  10. +12 −0 src/layouts/Account-Lodging Operations - HPS.layout
  11. +4 −4 src/layouts/Account-Lodging Operations - PAC%2FSAM.layout
  12. +16 −0 src/layouts/Assignment_Groups__c-Assignment Layout.layout
  13. +6 −0 src/layouts/Case-Lodging Operations - Fallbacks.layout
  14. +23 −4 src/layouts/Guest__c-Fallback.layout
  15. +8 −0 src/layouts/Out_of_Office_Notice__c-Out of Office Notice Layout.layout
  16. +11 −0 src/objects/Account.object
  17. +31 −0 src/objects/Case.object
  18. +127 −36 src/objects/Guest__c.object
  19. +7 −0 src/pages/CaseFallbackWidget.page
  20. +5 −0 src/pages/CaseFallbackWidget.page-meta.xml
  21. +19 −9 src/pages/CaseTransfer.page
  22. +7 −0 src/pages/GuestAccountWidget.page
  23. +5 −0 src/pages/GuestAccountWidget.page-meta.xml
  24. +38 −0 src/pages/GuestMassUpdate.page
  25. +5 −0 src/pages/GuestMassUpdate.page-meta.xml
View
10 src/classes/CaseFallbackExtension.cls
@@ -0,0 +1,10 @@
+public with sharing class CaseFallbackExtension {
+ public Case myCase{get;set;}
+
+ public CaseFallbackExtension (ApexPages.StandardController stdController) {
+ if (!Test.isRunningTest()) stdController.addFields(this.FIELDNAMES);
+ this.myCase = (Case) stdController.getRecord();
+ }
+
+ private List<String> FIELDNAMES = new List<String>{'Account.Fallback_Notes__c'};
+}
View
5 src/classes/CaseFallbackExtension.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>23.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
View
41 src/classes/CaseTransferController.cls
@@ -3,12 +3,18 @@ public class CaseTransferController{
public Case myCase {get;set;}
public string transferReason {get;set;}
public String transferringToCaseTeam {get;set;}
+ public List<selectOption> caseTeamPicklistOptions;
+ public boolean validCaseTeamSelected;
+ public boolean caseTeamSelected {get;set;}
public CaseTransferController(ApexPages.StandardController stdController){
// Get fields without needing to query for them
// Hack to allow tests to run
if (!Test.isRunningTest()) stdController.addFields(this.FIELDNAMES);
this.myCase = (Case)stdController.getRecord();
+ validCaseTeamSelected = false;
+ caseTeamSelected = false;
+ transferringToCaseTeam = '';
}
public PageReference returnToCase(){
@@ -16,8 +22,11 @@ public class CaseTransferController{
}
public PageReference transferCase(){
- this.createTransferredCase(myCase);
- return this.returnToCase();
+ this.changeCaseTeam();
+ if (this.validCaseTeamSelected){
+ this.createTransferredCase(myCase);
+ return this.returnToCase();
+ } return null;
}
public PageReference closeAndTransferCase(){
@@ -28,19 +37,35 @@ public class CaseTransferController{
}
public List<selectOption> getCaseTeamPicklistOptions() {
- List<selectOption> options = new List<selectOption>();
- String appendText;
- for (Case_Team__c myCaseTeam : getAllCaseTeams()) {
- appendText = myCaseTeam.Email__c == null ? '' : ' (' + myCaseTeam.Email__c + ')';
- options.add(new selectOption(myCaseTeam.Name, myCaseTeam.Name + appendText));
+ if (this.caseTeamPicklistOptions == null){
+ this.caseTeamPicklistOptions = new List<selectOption>();
+ this.caseTeamPicklistOptions.add(new selectOption('', '--Please Select a Team--'));
+ String appendText;
+ for (Case_Team__c myCaseTeam : getAllCaseTeams()) {
+ appendText = myCaseTeam.Email__c == null ? '' : ' (' + myCaseTeam.Email__c + ')';
+ this.caseTeamPicklistOptions.add(new selectOption(myCaseTeam.Name, myCaseTeam.Name + appendText));
+ }
}
- return options;
+ return this.caseTeamPicklistOptions;
}
/**
Move to CaseTeamClass???
**/
+ public void changeCaseTeam(){
+ this.caseTeamSelected = true;
+ if (this.transferringToCaseTeam != ''){
+ this.validCaseTeamSelected = true;
+ } else {
+ this.validCaseTeamSelected = false;
+ }
+ }
+ public boolean getValidCaseTeamSelected(){
+ if (this.caseTeamSelected) return validCaseTeamSelected;
+ return true;
+ }
+
public Map<String, Id> getCaseTeamToRecordTypeIdMap(){
if (this.caseTeamToRecordTypeIdMap == null){
this.caseTeamToRecordTypeIdMap = new Map<String, Id>();
View
123 src/classes/ConnectionClass.cls
@@ -9,6 +9,7 @@ public with sharing class ConnectionClass {
,PSG_Account_ID__c
,Type__c
,Status__c
+ ,ETP_Status__c
,Platform__c
,Go_Date__c
,LastModifiedDate
@@ -27,7 +28,7 @@ public with sharing class ConnectionClass {
public static List<Connection__c> getConnectionsByAccountId (Id accountId){
return [SELECT Id
- ,Account__c
+ ,Account__c
,Name
,Connectivity_System__c
,Connectivity_System__r.Connectivity_Vendor__r.Name
@@ -68,12 +69,12 @@ public with sharing class ConnectionClass {
// Check for updates before upserting. Since this is displayed with rollout steps, and notes,
public static void upsertConnection(Connection__c myConnection){
- if (myConnection.Id != null){
- Connection__c oldConnection = getConnection(myConnection.Id);
- if (oldConnection != myConnection) upsert myConnection;
- } else{
- insert myConnection;
- }
+ if (myConnection.Id != null){
+ Connection__c oldConnection = getConnection(myConnection.Id);
+ if (oldConnection != myConnection) upsert myConnection;
+ } else{
+ insert myConnection;
+ }
}
public void buildConnectionIntegrationKeys(List<Connection__c> myConnections, Map<Id, Connection__c> myOldConnectionMap){
@@ -81,17 +82,17 @@ public with sharing class ConnectionClass {
this.accountActiveConnectionMap = getAccountActiveConnectionMap(accountIds);
for (Connection__c myConnection : myConnections){
- if (myConnection.Status__c == 'Connected'){
+ if (myConnection.Status__c == 'Connected'){
this.buildConnectionIntegrationKey(myConnection);
this.addActiveConnection(myConnection);
- } else {
- if (myOldConnectionMap != null){
- if (myOldConnectionMap.get(myConnection.Id).Status__c == 'Connected'){
- this.removeActiveConnection(myConnection);
- }
- }
- myConnection.Integration_Connection_Key__c = null;
- }
+ } else {
+ if (myOldConnectionMap != null){
+ if (myOldConnectionMap.get(myConnection.Id).Status__c == 'Connected'){
+ this.removeActiveConnection(myConnection);
+ }
+ }
+ myConnection.Integration_Connection_Key__c = null;
+ }
}
update this.accountActiveConnectionMap.values();
}
@@ -101,69 +102,69 @@ public with sharing class ConnectionClass {
this.accountActiveConnectionMap = getAccountActiveConnectionMap(accountIds);
for (Connection__c myDeletedConnection : myDeletedConnections){
- if (myDeletedConnection.Status__c == 'Connected'){
- this.removeActiveConnection(myDeletedConnection);
- }
+ if (myDeletedConnection.Status__c == 'Connected'){
+ this.removeActiveConnection(myDeletedConnection);
+ }
}
update this.accountActiveConnectionMap.values();
}
- /**
-
- PRIVATE METHODS
-
- **/
-
- private Map<Id, Account> accountActiveConnectionMap;
- private Set<Id> accountIds;
+ /**
+
+ PRIVATE METHODS
+
+ **/
+
+ private Map<Id, Account> accountActiveConnectionMap;
+ private Set<Id> accountIds;
private void buildConnectionIntegrationKey(Connection__c myConnection){
- String concatenator = ':';
- myConnection.Integration_Connection_Key__c = myConnection.PSG_Account_ID__c + concatenator
- + myConnection.Type__c + concatenator
- + myConnection.Platform__c;
+ String concatenator = ':';
+ myConnection.Integration_Connection_Key__c = myConnection.PSG_Account_ID__c + concatenator
+ + myConnection.Type__c + concatenator
+ + myConnection.Platform__c;
}
private void addActiveConnection(Connection__c myConnection){
- string activeConnectionKey = myConnection.Type__c + '-' + myConnection.Platform__c;
- Account myConnectionsAccount = this.accountActiveConnectionMap.get(myConnection.Account__c);
- if (myConnectionsAccount != null){
- if (myConnectionsAccount.Active_Connections__c != null){
- if (!myConnectionsAccount.Active_Connections__c.contains(activeConnectionKey)){
- myConnectionsAccount.Active_Connections__c = myConnectionsAccount.Active_Connections__c + ';'+ activeConnectionKey;
- }
- } else{
- myConnectionsAccount.Active_Connections__c = activeConnectionKey;
- }
- }
+ string activeConnectionKey = myConnection.Type__c + '-' + myConnection.Platform__c;
+ Account myConnectionsAccount = this.accountActiveConnectionMap.get(myConnection.Account__c);
+ if (myConnectionsAccount != null){
+ if (myConnectionsAccount.Active_Connections__c != null){
+ if (!myConnectionsAccount.Active_Connections__c.contains(activeConnectionKey)){
+ myConnectionsAccount.Active_Connections__c = myConnectionsAccount.Active_Connections__c + ';'+ activeConnectionKey;
+ }
+ } else{
+ myConnectionsAccount.Active_Connections__c = activeConnectionKey;
+ }
+ }
}
private void removeActiveConnection(Connection__c myConnection){
- string activeConnectionKey = myConnection.Type__c + '-' + myConnection.Platform__c;
- Account myConnectionsAccount = this.accountActiveConnectionMap.get(myConnection.Account__c);
- if (myConnectionsAccount != null){
- if (myConnectionsAccount.Active_Connections__c != null){
- if (myConnectionsAccount.Active_Connections__c.contains(activeConnectionKey)){
- myConnectionsAccount.Active_Connections__c = myConnectionsAccount.Active_Connections__c.replace(activeConnectionKey, '');
- }
- }
-
- }
+ string activeConnectionKey = myConnection.Type__c + '-' + myConnection.Platform__c;
+ Account myConnectionsAccount = this.accountActiveConnectionMap.get(myConnection.Account__c);
+ if (myConnectionsAccount != null){
+ if (myConnectionsAccount.Active_Connections__c != null){
+ if (myConnectionsAccount.Active_Connections__c.contains(activeConnectionKey)){
+ myConnectionsAccount.Active_Connections__c = myConnectionsAccount.Active_Connections__c.replace(activeConnectionKey, '');
+ }
+ }
+
+ }
}
private Set<Id> getAccountIds (List<Connection__c> myConnections){
- Set<Id> accountIds = new Set<Id>();
- for (Connection__c myConnection : myConnections){
- accountIds.add(myConnection.Account__c);
- }
- return accountIds;
+ Set<Id> accountIds = new Set<Id>();
+ for (Connection__c myConnection : myConnections){
+ accountIds.add(myConnection.Account__c);
+ }
+ return accountIds;
}
private Map<Id, Account> getAccountActiveConnectionMap(Set<Id> accountIds){
- return new Map<Id, Account> ([SELECT Id
- ,Active_Connections__c
- FROM Account
- WHERE Id IN : accountIds]);
+ return new Map<Id, Account> ([SELECT Id
+ ,Active_Connections__c
+ FROM Account
+ WHERE Id IN : accountIds]);
}
}
View
12 src/classes/GuestAccountExtension.cls
@@ -0,0 +1,12 @@
+public with sharing class GuestAccountExtension {
+
+ public Guest__c myGuest{get;set;}
+
+ public GuestAccountExtension (ApexPages.StandardController stdController) {
+ if (!Test.isRunningTest()) stdController.addFields(this.FIELDNAMES);
+ this.myGuest = (Guest__c) stdController.getRecord();
+ }
+
+ private List<String> FIELDNAMES = new List<String>{'Case__r.Account.Name'
+ ,'Case__r.Account.Fallback_Notes__c'};
+}
View
5 src/classes/GuestAccountExtension.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>23.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
View
79 src/classes/GuestMassUpdateExtension.cls
@@ -0,0 +1,79 @@
+public with sharing class GuestMassUpdateExtension {
+
+ public List<Guest__c> openGuests;
+ List<GuestWrapper> myGuestWrappers;
+ public Guest__c guestTemplate;
+ public boolean allSelected {get;set;}
+
+ public GuestMassUpdateExtension (ApexPages.StandardSetController controller) {
+ controller.setPageSize(100);
+ this.allSelected = false;
+ }
+
+ public List<Guest__c> getOpenGuests(){
+ if (this.openGuests == null){
+ this.openGuests = new List<Guest__c>();
+ this.openGuests = [SELECT Id
+ ,Name
+ ,Expedia_Booking_ID__c
+ ,Status__c
+ ,Arrival_Date__c
+ FROM Guest__c
+ WHERE Case__c = :ApexPages.currentPage().getParameters().get('Id')
+ AND Closed__c = false
+ ORDER BY Arrival_Date__c ASC];
+ } return this.openGuests;
+ }
+
+ public void selectAll(){
+ if (this.allSelected){
+ for (GuestWrapper myGuestWrapper : this.getGuestWrappers()){
+ myGuestWrapper.isSelected = true;
+ }
+ } else {
+ for (GuestWrapper myGuestWrapper : this.getGuestWrappers()){
+ myGuestWrapper.isSelected = false;
+ }
+ }
+ }
+
+ public List<GuestWrapper> getGuestWrappers(){
+ if (this.myGuestWrappers == null){
+ this.myGuestWrappers = new List<GuestWrapper>();
+ for (Guest__c myGuest : this.getOpenGuests()){
+ GuestWrapper myGuestWrapper = new GuestWrapper(myGuest);
+ myGuestWrappers.add(myGuestWrapper);
+ }
+ } return this.myGuestWrappers;
+ }
+
+ public Guest__c getGuestTemplate(){
+ //TODO: Look at StandardSetController.getRecord()
+ //TODO: Scope RecordType
+ if (this.guestTemplate == null){
+ this.guestTemplate = new Guest__c(RecordTypeId = '012c00000008U8L');
+ } return this.guestTemplate;
+ }
+
+ public void updateAllGuests(){
+ for (GuestWrapper myGuestWrapper : this.myGuestWrappers){
+ if (myGuestWrapper.isSelected){
+ myGuestWrapper.myGuest.Status__c = this.guestTemplate.Status__c;
+ }
+ }
+ }
+
+ public PageReference cancel(){
+ return new ApexPages.StandardController(new Case(Id=ApexPages.currentPage().getParameters().get('Id'))).cancel();
+ }
+
+ public class GuestWrapper{
+ public Guest__c myGuest{get;set;}
+ public boolean isSelected{get;set;}
+
+ public GuestWrapper(Guest__c myGuest){
+ this.myGuest = myGuest;
+ this.isSelected = false;
+ }
+ }
+}
View
5 src/classes/GuestMassUpdateExtension.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>24.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
View
8 src/layouts/Account-Administrator.layout
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Layout xmlns="http://soap.sforce.com/2006/04/metadata">
+ <excludeButtons>DataDotComClean</excludeButtons>
<excludeButtons>Submit</excludeButtons>
<layoutSections>
<customLabel>false</customLabel>
@@ -73,6 +74,10 @@
</layoutItems>
<layoutItems>
<behavior>Edit</behavior>
+ <field>Fallback_Notes__c</field>
+ </layoutItems>
+ <layoutItems>
+ <behavior>Edit</behavior>
<field>Fax_to_Email_Address__c</field>
</layoutItems>
<layoutItems>
@@ -610,8 +615,9 @@
<fields>Connectivity_System_Vendor__c</fields>
<fields>Go_Date__c</fields>
<fields>Platform__c</fields>
- <fields>Status__c</fields>
<fields>Type__c</fields>
+ <fields>Status__c</fields>
+ <fields>ETP_Status__c</fields>
<fields>Connectivity_System__c.NAME</fields>
<fields>Connectivity_System__c.Connectivity_System_Type__c</fields>
<fields>Connectivity_System__c.Connectivity_Vendor__c</fields>
View
12 src/layouts/Account-Lodging Operations - HPS.layout
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Layout xmlns="http://soap.sforce.com/2006/04/metadata">
+ <excludeButtons>DataDotComClean</excludeButtons>
<excludeButtons>Submit</excludeButtons>
<layoutSections>
<customLabel>false</customLabel>
@@ -221,11 +222,22 @@
<fields>Name</fields>
<fields>Super_Region__c</fields>
<fields>Phone</fields>
+ <fields>Fax</fields>
<fields>Expedia_Hotel_Id__c</fields>
<fields>Vendor_Id__c</fields>
+ <fields>Market_Manager_Name__c</fields>
<fields>Region__c</fields>
<fields>BillingAddress</fields>
<fields>ParentId</fields>
+ <relatedLists>
+ <fields>Number__c</fields>
+ <fields>Contact.CNTC_FIRST_NAME</fields>
+ <fields>Contact.NAME</fields>
+ <fields>Contact.CNTC_TITLE</fields>
+ <fields>Contact.CNTC_EMAIL</fields>
+ <fields>Contact.CNTC_PHONE1</fields>
+ <relatedList>Account_Contact__c.Account__c</relatedList>
+ </relatedLists>
</miniLayout>
<relatedLists>
<fields>Number__c</fields>
View
8 src/layouts/Account-Lodging Operations - PAC%2FSAM.layout
@@ -488,15 +488,15 @@
</relatedLists>
<relatedLists>
<fields>NAME</fields>
- <fields>Account_Repco__c</fields>
+ <fields>Connectivity_System_Vendor__c</fields>
<fields>Go_Date__c</fields>
<fields>Platform__c</fields>
- <fields>Status__c</fields>
<fields>Type__c</fields>
+ <fields>Status__c</fields>
+ <fields>ETP_Status__c</fields>
<fields>Connectivity_System__c.NAME</fields>
- <fields>Connectivity_System__c.Connectivity_Vendor__c</fields>
<fields>Connectivity_System__c.Connectivity_System_Type__c</fields>
- <fields>Integration_Connection_Key__c</fields>
+ <fields>Connectivity_System__c.Connectivity_Vendor__c</fields>
<relatedList>Connection__c.Account__c</relatedList>
</relatedLists>
<relatedLists>
View
16 src/layouts/Assignment_Groups__c-Assignment Layout.layout
@@ -33,6 +33,14 @@
<behavior>Readonly</behavior>
<field>Name</field>
</layoutItems>
+ <layoutItems>
+ <behavior>Edit</behavior>
+ <field>Vacation_Start__c</field>
+ </layoutItems>
+ <layoutItems>
+ <behavior>Edit</behavior>
+ <field>Vacation_End__c</field>
+ </layoutItems>
</layoutColumns>
<style>TwoColumnsTopToBottom</style>
</layoutSections>
@@ -79,6 +87,14 @@
<fields>Language__c.NAME</fields>
<relatedList>Group_Member_Language__c.Group_Member__c</relatedList>
</relatedLists>
+ <relatedLists>
+ <fields>NAME</fields>
+ <fields>User__c</fields>
+ <fields>Type__c</fields>
+ <fields>Start_Date__c</fields>
+ <fields>End_Date__c</fields>
+ <relatedList>Out_of_Office_Notice__c.Group_Member__c</relatedList>
+ </relatedLists>
<showEmailCheckbox>false</showEmailCheckbox>
<showHighlightsPanel>false</showHighlightsPanel>
<showInteractionLogPanel>false</showInteractionLogPanel>
View
6 src/layouts/Case-Lodging Operations - Fallbacks.layout
@@ -150,12 +150,18 @@
<relatedList>RelatedCommentsList</relatedList>
</relatedLists>
<relatedLists>
+ <customButtons>Mass_Update</customButtons>
+ <customButtons>Export_Guest_List</customButtons>
+ <excludeButtons>New</excludeButtons>
<fields>NAME</fields>
<fields>Status__c</fields>
<fields>Expedia_Booking_ID__c</fields>
<fields>Days_Until_Arrival__c</fields>
<fields>Arrival_Date__c</fields>
<fields>Check_Out_Date__c</fields>
+ <fields>Original_Book_Date__c</fields>
+ <fields>Multiple_Booking__c</fields>
+ <fields>Original_Room_Type__c</fields>
<relatedList>Guest__c.Case__c</relatedList>
<sortField>Days_Until_Arrival__c</sortField>
<sortOrder>Asc</sortOrder>
View
27 src/layouts/Guest__c-Fallback.layout
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Layout xmlns="http://soap.sforce.com/2006/04/metadata">
+ <excludeButtons>Clone</excludeButtons>
<excludeButtons>Submit</excludeButtons>
<layoutSections>
<customLabel>true</customLabel>
@@ -16,6 +17,10 @@
<field>Expedia_Booking_ID__c</field>
</layoutItems>
<layoutItems>
+ <behavior>Readonly</behavior>
+ <field>Admin_Tools_Link__c</field>
+ </layoutItems>
+ <layoutItems>
<behavior>Edit</behavior>
<field>Status__c</field>
</layoutItems>
@@ -65,6 +70,10 @@
<behavior>Readonly</behavior>
<field>Number_of_Nights__c</field>
</layoutItems>
+ <layoutItems>
+ <behavior>Edit</behavior>
+ <field>Multiple_Booking__c</field>
+ </layoutItems>
</layoutColumns>
<style>TwoColumnsLeftToRight</style>
</layoutSections>
@@ -80,18 +89,22 @@
</layoutItems>
<layoutItems>
<behavior>Edit</behavior>
+ <field>Closed_By__c</field>
+ </layoutItems>
+ <layoutItems>
+ <behavior>Edit</behavior>
<field>Closed_Date_Time__c</field>
</layoutItems>
+ <layoutItems>
+ <behavior>Readonly</behavior>
+ <field>Days_Before_Arrival_Completed__c</field>
+ </layoutItems>
</layoutColumns>
<layoutColumns>
<layoutItems>
<behavior>Edit</behavior>
<field>Hotel_Confirmation_Number__c</field>
</layoutItems>
- <layoutItems>
- <behavior>Edit</behavior>
- <field>Guest_Record_Closed_Time__c</field>
- </layoutItems>
</layoutColumns>
<style>TwoColumnsLeftToRight</style>
</layoutSections>
@@ -105,6 +118,12 @@
<layoutColumns/>
<style>CustomLinks</style>
</layoutSections>
+ <relatedLists>
+ <relatedList>RelatedNoteList</relatedList>
+ </relatedLists>
+ <relatedLists>
+ <relatedList>RelatedEntityHistoryList</relatedList>
+ </relatedLists>
<showEmailCheckbox>false</showEmailCheckbox>
<showHighlightsPanel>false</showHighlightsPanel>
<showInteractionLogPanel>false</showInteractionLogPanel>
View
8 src/layouts/Out_of_Office_Notice__c-Out of Office Notice Layout.layout
@@ -12,6 +12,14 @@
<field>Name</field>
</layoutItems>
<layoutItems>
+ <behavior>Edit</behavior>
+ <field>Group_Member__c</field>
+ </layoutItems>
+ <layoutItems>
+ <behavior>Edit</behavior>
+ <field>Status__c</field>
+ </layoutItems>
+ <layoutItems>
<behavior>Required</behavior>
<field>User__c</field>
</layoutItems>
View
11 src/objects/Account.object
@@ -613,6 +613,17 @@ Users should NOT be able to edit this field, as that could cause it to get out o
<type>Picklist</type>
</fields>
<fields>
+ <fullName>Fallback_Notes__c</fullName>
+ <externalId>false</externalId>
+ <label>Fallback Notes</label>
+ <length>255</length>
+ <required>false</required>
+ <trackFeedHistory>false</trackFeedHistory>
+ <trackHistory>false</trackHistory>
+ <type>Text</type>
+ <unique>false</unique>
+ </fields>
+ <fields>
<fullName>Fax_to_Email_Address__c</fullName>
<externalId>false</externalId>
<label>Fax to Email Address</label>
View
31 src/objects/Case.object
@@ -874,6 +874,18 @@
<unique>false</unique>
</fields>
<fields>
+ <fullName>Account_Location__c</fullName>
+ <externalId>false</externalId>
+ <formula>Account.BillingCity &amp;
+IF(ISBLANK(Account.BillingState), &quot;&quot;, &quot;, &quot; &amp; Account.BillingState) &amp;
+IF(ISBLANK(Account.BillingCountry),&quot;&quot;, &quot;, &quot;&amp;Account.BillingCountry)</formula>
+ <label>Account Location</label>
+ <required>false</required>
+ <trackHistory>false</trackHistory>
+ <type>Text</type>
+ <unique>false</unique>
+ </fields>
+ <fields>
<fullName>Account_Market__c</fullName>
<externalId>false</externalId>
<formula>Account.Market__r.Name</formula>
@@ -12663,6 +12675,7 @@ See also: http://success.salesforce.com/ideaView?c=09a30000000D9xo&amp;id=087300
<columns>CASES.STATUS</columns>
<columns>Earliest_Guest_Arrival__c</columns>
<columns>ACCOUNT.NAME</columns>
+ <columns>Account_Location__c</columns>
<columns>Account_Language__c</columns>
<columns>SuperRegion__c</columns>
<columns>Unresolved_Guests__c</columns>
@@ -17864,6 +17877,24 @@ See also: http://success.salesforce.com/ideaView?c=09a30000000D9xo&amp;id=087300
</sharedTo>
</listViews>
<listViews>
+ <fullName>My_Fallback_Cases</fullName>
+ <columns>CASES.CASE_NUMBER</columns>
+ <columns>CASES.STATUS</columns>
+ <columns>Earliest_Guest_Arrival__c</columns>
+ <columns>ACCOUNT.NAME</columns>
+ <columns>Account_Language__c</columns>
+ <columns>Account_Location__c</columns>
+ <columns>SuperRegion__c</columns>
+ <columns>Unresolved_Guests__c</columns>
+ <filterScope>Mine</filterScope>
+ <filters>
+ <field>CASES.RECORDTYPE</field>
+ <operation>equals</operation>
+ <value>Case.Lodging_Operations_Fallback</value>
+ </filters>
+ <label># My Fallback Cases</label>
+ </listViews>
+ <listViews>
<fullName>New_Transferred_SR</fullName>
<columns>CASES.CASE_NUMBER</columns>
<columns>NAME</columns>
View
163 src/objects/Guest__c.object
@@ -39,6 +39,17 @@
<enableHistory>true</enableHistory>
<enableReports>true</enableReports>
<fields>
+ <fullName>Account_Fallback_Notes__c</fullName>
+ <externalId>false</externalId>
+ <formula>Case__r.Account.Fallback_Notes__c</formula>
+ <inlineHelpText>Only editable by selected users on the Account page</inlineHelpText>
+ <label>Account Fallback Notes</label>
+ <required>false</required>
+ <trackHistory>false</trackHistory>
+ <type>Text</type>
+ <unique>false</unique>
+ </fields>
+ <fields>
<fullName>Additional_Information__c</fullName>
<externalId>false</externalId>
<label>Additional Information</label>
@@ -48,6 +59,16 @@
<visibleLines>3</visibleLines>
</fields>
<fields>
+ <fullName>Admin_Tools_Link__c</fullName>
+ <externalId>false</externalId>
+ <formula>HYPERLINK(&quot;http://www.expedia.com&quot;, Expedia_Booking_ID__c , &quot;_blank&quot;)</formula>
+ <label>Admin Tools Link</label>
+ <required>false</required>
+ <trackHistory>false</trackHistory>
+ <type>Text</type>
+ <unique>false</unique>
+ </fields>
+ <fields>
<fullName>Age_days__c</fullName>
<externalId>false</externalId>
<formula>IF( Closed__c , Closed_Date_Time__c -CreatedDate,NOW()-CreatedDate)</formula>
@@ -932,6 +953,16 @@ IF(Age_days__c&lt;3,&quot;48-72 hours&quot;,
<type>Date</type>
</fields>
<fields>
+ <fullName>Closed_By__c</fullName>
+ <externalId>false</externalId>
+ <label>Closed By</label>
+ <length>255</length>
+ <required>false</required>
+ <trackHistory>false</trackHistory>
+ <type>Text</type>
+ <unique>false</unique>
+ </fields>
+ <fields>
<fullName>Closed_Date_Time__c</fullName>
<externalId>false</externalId>
<label>Closed Date/Time</label>
@@ -978,10 +1009,21 @@ IF(Age_days__c&lt;3,&quot;48-72 hours&quot;,
<type>TextArea</type>
</fields>
<fields>
+ <fullName>Days_Before_Arrival_Completed__c</fullName>
+ <externalId>false</externalId>
+ <formula>Arrival_Date__c - DATEVALUE(Closed_Date_Time__c)</formula>
+ <label>Days Before Arrival Completed</label>
+ <precision>18</precision>
+ <required>false</required>
+ <scale>0</scale>
+ <trackHistory>false</trackHistory>
+ <type>Number</type>
+ <unique>false</unique>
+ </fields>
+ <fields>
<fullName>Days_Until_Arrival__c</fullName>
<externalId>false</externalId>
- <formula>Arrival_Date__c - TODAY()</formula>
- <formulaTreatBlanksAs>BlankAsZero</formulaTreatBlanksAs>
+ <formula>IF (Arrival_Date__c - TODAY() &gt;= 0, Arrival_Date__c - TODAY(), null)</formula>
<label>Days Until Arrival</label>
<precision>18</precision>
<required>false</required>
@@ -1184,6 +1226,16 @@ OR(ISPICKVAL(Difference_Absorbed_By__c, &quot;Shared Hotel &amp; Expedia-DO NOT
<type>Lookup</type>
</fields>
<fields>
+ <fullName>Multiple_Booking__c</fullName>
+ <defaultValue>false</defaultValue>
+ <description>Whether the BookingItem was associated with a booking that had multiple BookingItems associated with it.</description>
+ <externalId>false</externalId>
+ <inlineHelpText>Whether the BookingItem was associated with a booking that had multiple BookingItems associated with it.</inlineHelpText>
+ <label>Multiple Booking</label>
+ <trackHistory>false</trackHistory>
+ <type>Checkbox</type>
+ </fields>
+ <fields>
<fullName>New_Booking_Rate__c</fullName>
<externalId>false</externalId>
<label>New Booking Net Cost</label>
@@ -1612,6 +1664,26 @@ OR(ISPICKVAL(Difference_Absorbed_By__c, &quot;Shared Hotel &amp; Expedia-DO NOT
<fullName>Reassigned to APAC CS</fullName>
<default>false</default>
</picklistValues>
+ <picklistValues>
+ <fullName>New</fullName>
+ <default>false</default>
+ </picklistValues>
+ <picklistValues>
+ <fullName>Relocated</fullName>
+ <default>false</default>
+ </picklistValues>
+ <picklistValues>
+ <fullName>Resend</fullName>
+ <default>false</default>
+ </picklistValues>
+ <picklistValues>
+ <fullName>Follow Up</fullName>
+ <default>false</default>
+ </picklistValues>
+ <picklistValues>
+ <fullName>Confirmed</fullName>
+ <default>false</default>
+ </picklistValues>
<sorted>false</sorted>
</picklist>
<trackHistory>true</trackHistory>
@@ -1725,9 +1797,23 @@ OR(ISPICKVAL(Difference_Absorbed_By__c, &quot;Shared Hotel &amp; Expedia-DO NOT
<type>Text</type>
<unique>false</unique>
</fields>
+ <fields>
+ <fullName>of_Guests__c</fullName>
+ <externalId>false</externalId>
+ <formula>1</formula>
+ <label># of Guests</label>
+ <precision>18</precision>
+ <required>false</required>
+ <scale>0</scale>
+ <trackHistory>false</trackHistory>
+ <type>Number</type>
+ <unique>false</unique>
+ </fields>
<label>Guest</label>
<listViews>
<fullName>All</fullName>
+ <columns>NAME</columns>
+ <columns>Days_Until_Arrival__c</columns>
<filterScope>Everything</filterScope>
<label>All</label>
</listViews>
@@ -4579,51 +4665,23 @@ OR(ISPICKVAL(Difference_Absorbed_By__c, &quot;Shared Hotel &amp; Expedia-DO NOT
<picklistValues>
<picklist>Status__c</picklist>
<values>
- <fullName>Accommodated at Original Hotel</fullName>
- <default>false</default>
- </values>
- <values>
- <fullName>Completed</fullName>
- <default>false</default>
- </values>
- <values>
- <fullName>Credit Pending</fullName>
- <default>false</default>
- </values>
- <values>
- <fullName>Reassigned to APAC CS</fullName>
- <default>false</default>
- </values>
- <values>
- <fullName>Reassigned to Europe CS</fullName>
- <default>false</default>
- </values>
- <values>
- <fullName>Researching</fullName>
- <default>false</default>
- </values>
- <values>
- <fullName>Response Submitted</fullName>
- <default>false</default>
- </values>
- <values>
- <fullName>Submitted</fullName>
+ <fullName>Confirmed</fullName>
<default>false</default>
</values>
<values>
- <fullName>Waiting for Customer</fullName>
+ <fullName>Follow Up</fullName>
<default>false</default>
</values>
<values>
- <fullName>Waiting for Hotel</fullName>
- <default>false</default>
+ <fullName>New</fullName>
+ <default>true</default>
</values>
<values>
- <fullName>Waiting for Legal</fullName>
+ <fullName>Relocated</fullName>
<default>false</default>
</values>
<values>
- <fullName>Waiting for Market Management</fullName>
+ <fullName>Resend</fullName>
<default>false</default>
</values>
</picklistValues>
@@ -4921,6 +4979,16 @@ OR(ISPICKVAL(Difference_Absorbed_By__c, &quot;Shared Hotel &amp; Expedia-DO NOT
<customTabListAdditionalFields>Difference_Absorbed_By__c</customTabListAdditionalFields>
<customTabListAdditionalFields>Guest_Email__c</customTabListAdditionalFields>
<searchFilterFields>NAME</searchFilterFields>
+ <searchFilterFields>Expedia_Booking_ID__c</searchFilterFields>
+ <searchFilterFields>Original_Hotel_Expedia_ID__c</searchFilterFields>
+ <searchFilterFields>Status__c</searchFilterFields>
+ <searchFilterFields>Arrival_Date__c</searchFilterFields>
+ <searchFilterFields>Closed__c</searchFilterFields>
+ <searchResultsAdditionalFields>Status__c</searchResultsAdditionalFields>
+ <searchResultsAdditionalFields>Arrival_Date__c</searchResultsAdditionalFields>
+ <searchResultsAdditionalFields>Original_Hotel_Expedia_ID__c</searchResultsAdditionalFields>
+ <searchResultsAdditionalFields>Expedia_Booking_ID__c</searchResultsAdditionalFields>
+ <searchResultsAdditionalFields>Language__c</searchResultsAdditionalFields>
</searchLayouts>
<sharingModel>ControlledByParent</sharingModel>
<validationRules>
@@ -5011,4 +5079,27 @@ OR(ISPICKVAL(Difference_Absorbed_By__c, &quot;Shared Hotel &amp; Expedia-DO NOT
<errorDisplayField>Check_Out_Date__c</errorDisplayField>
<errorMessage>Check-out date cannot be the same or before the arrival date.</errorMessage>
</validationRules>
+ <webLinks>
+ <fullName>Export_Guest_List</fullName>
+ <availability>online</availability>
+ <displayType>massActionButton</displayType>
+ <linkType>javascript</linkType>
+ <masterLabel>Export Guest List</masterLabel>
+ <openType>onClickJavaScript</openType>
+ <protected>false</protected>
+ <requireRowSelection>false</requireRowSelection>
+ <url>window.open(&quot;00Oc0000000F97M?pv0={!Case.Id}&amp;export=1&amp;enc=UTF-8&amp;xf=xls&quot;)</url>
+ </webLinks>
+ <webLinks>
+ <fullName>Mass_Update</fullName>
+ <availability>online</availability>
+ <displayType>massActionButton</displayType>
+ <height>600</height>
+ <linkType>page</linkType>
+ <masterLabel>Mass Update</masterLabel>
+ <openType>sidebar</openType>
+ <page>GuestMassUpdate</page>
+ <protected>false</protected>
+ <requireRowSelection>false</requireRowSelection>
+ </webLinks>
</CustomObject>
View
7 src/pages/CaseFallbackWidget.page
@@ -0,0 +1,7 @@
+<apex:page standardController="Case" extensions="CaseFallbackExtension">
+ <apex:PageBlock mode="maindetail">
+ <apex:PageBlockSection columns="1">
+ <apex:outputField value="{!myCase.Account.Fallback_Notes__c}"/>
+ </apex:PageBlockSection>
+ </apex:PageBlock>
+</apex:page>
View
5 src/pages/CaseFallbackWidget.page-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>23.0</apiVersion>
+ <label>CaseFallbackWidget</label>
+</ApexPage>
View
28 src/pages/CaseTransfer.page
@@ -4,8 +4,9 @@
width:95%;
height:100px;
}
+.caseTeamError { color: blue; font-weight: strong;}
</style>
-
+<apex:messages />
<apex:pageBlock title="Transfer Case">
<apex:pageBlockSection title="Original Case" collapsible="false">
<apex:outputField value="{!Case.CaseNumber}"/>
@@ -21,14 +22,23 @@ height:100px;
</apex:pageBlockSectionItem>
<apex:outputField value="{!Case.Team__c}"/>
</apex:pageBlockSection>
- <apex:pageBlockSection title="Transfer Details" collapsible="false" columns="1">
- <apex:form styleClass="detailList">
- <apex:pageBlockSectionItem >
- <apex:outputLabel value="New Case Team: " styleClass="labelCol" for="caseteam"/>
- <apex:selectList value="{!transferringToCaseTeam}" size="1" title="Team" id="caseteam" >
- <apex:selectOptions value="{!CaseTeamPicklistOptions}"></apex:selectOptions>
- </apex:selectList>
- </apex:pageBlockSectionItem>
+ <apex:pageBlockSection title="Transfer Details" collapsible="false" columns="1" id="transferDetails">
+ <apex:form >
+ <apex:pageBlockSectionItem id="caseTeamSection" >
+ <apex:outputLabel value="New Case Team: " styleClass="labelCol" for="caseteam"/>
+ <apex:outputPanel styleClass="requiredInput" layout="block">
+ <apex:outputPanel styleClass="requiredBlock" layout="block"/>
+ <apex:actionRegion >
+ <apex:selectList value="{!transferringToCaseTeam}" size="1" title="Team" id="caseteam">
+ <apex:selectOptions value="{!CaseTeamPicklistOptions}"></apex:selectOptions>
+ <apex:actionSupport event="onchange" reRender="transferDetails" action="{!changeCaseTeam}"/>
+ </apex:selectList>
+ </apex:actionRegion>
+ <apex:outputPanel styleClass="errorMsg" layout="block" rendered="{!IF(validCaseTeamSelected, false, true)}">
+ <strong>Error:</strong> You must enter a valid value.
+ </apex:outputPanel>
+ </apex:outputPanel>
+ </apex:pageBlockSectionItem>
<br/>
<apex:pageBlockSectionItem >
<apex:outputLabel value="Reason for Transfer: " styleClass="labelCol" for="reasonForTransfer"/>
View
7 src/pages/GuestAccountWidget.page
@@ -0,0 +1,7 @@
+<apex:page standardController="Guest__c" extensions="GuestAccountExtension">
+ <apex:PageBlock mode="maindetail">
+ <apex:PageBlockSection columns="1">
+ <apex:outputField value="{!myGuest.Case__r.Account.Fallback_Notes__c}"/>
+ </apex:PageBlockSection>
+ </apex:PageBlock>
+</apex:page>
View
5 src/pages/GuestAccountWidget.page-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>23.0</apiVersion>
+ <label>GuestAccountWidget</label>
+</ApexPage>
View
38 src/pages/GuestMassUpdate.page
@@ -0,0 +1,38 @@
+<apex:page standardController="Guest__c"
+ recordSetVar="guests"
+ tabStyle="Guest__c"
+ extensions="GuestMassUpdateExtension"
+ title="Guests - Mass Close">
+ <apex:form >
+ <apex:PageBlock title="Mass Resolve Guests">
+ <apex:PageBlockButtons location="bottom" >
+ <apex:outputLabel > <strong>Status </strong>
+ <apex:inputField value="{!guestTemplate.Status__c}"/>
+ </apex:outputLabel>
+ <apex:commandButton action="{!updateAllGuests}" value="Change Selected Statuses" rerender="guestTable" status="updatingStatuses"/>
+ <apex:commandButton action="{!save}" value="Save"/>
+ <apex:commandButton action="{!cancel}" value="Cancel"/>
+ </apex:PageBlockButtons>
+ <apex:PageBlockSection columns="1" collapsible="false">
+ <apex:actionStatus id="selectAllStatus" startText="Selecting..."/>
+ <apex:PageBlockTable value="{!GuestWrappers}" var="guest" id="guestTable">
+ <apex:column >
+ <apex:facet name="header">
+ <apex:inputCheckbox value="{!allSelected}">
+ <apex:actionSupport event="onchange" action="{!selectAll}" rerender="guestTable" status="selectAllStatus"/>
+ </apex:inputCheckbox>
+ </apex:facet>
+ <apex:inputCheckbox value="{!guest.isSelected}"/>
+ </apex:column>
+ <apex:column value="{!guest.myGuest.Name}"/>
+ <apex:column value="{!guest.myGuest.Expedia_Booking_ID__c}"/>
+ <apex:column value="{!guest.myGuest.Arrival_Date__c}"/>
+ <apex:column headerValue="Status">
+ <apex:inputField value="{!guest.myGuest.Status__c}"/>
+ </apex:column>
+ </apex:PageBlockTable>
+ <apex:actionStatus id="updatingStatuses" startText="Updating..."/>
+ </apex:PageBlockSection>
+ </apex:PageBlock>
+ </apex:form>
+</apex:page>
View
5 src/pages/GuestMassUpdate.page-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>23.0</apiVersion>
+ <label>GuestMassUpdate</label>
+</ApexPage>
Please sign in to comment.
Something went wrong with that request. Please try again.