Test Failed
Push — CI ( 02428e...3e0292 )
by Adam
55:43
created
modules/Prospects/metadata/popupdefs.php 3 patches
Indentation   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -42,24 +42,24 @@
 block discarded – undo
42 42
 global $mod_strings;
43 43
 
44 44
 $popupMeta = array('moduleMain' => 'Prospect',
45
-						'varName' => 'PROSPECT',
46
-						'orderBy' => 'prospects.last_name, prospects.first_name',
47
-						'whereClauses' => 
48
-							array('first_name' => 'prospects.first_name',
49
-									'last_name' => 'prospects.last_name'),
50
-						'searchInputs' =>
51
-							array('first_name', 'last_name'),
52
-						'selectDoms' =>
53
-							array('LIST_OPTIONS' => 
54
-											array('dom' => 'prospect_list_type_dom', 'searchInput' => 'list_type'),
55
-								  ),
56
-						'create' =>
57
-							array('formBase' => 'ProspectFormBase.php',
58
-									'formBaseClass' => 'ProspectFormBase',
59
-									'getFormBodyParams' => array('','','ProspectSave'),
60
-									'createButton' => 'LNK_NEW_PROSPECT'
61
-								  )
62
-						);
45
+                        'varName' => 'PROSPECT',
46
+                        'orderBy' => 'prospects.last_name, prospects.first_name',
47
+                        'whereClauses' => 
48
+                            array('first_name' => 'prospects.first_name',
49
+                                    'last_name' => 'prospects.last_name'),
50
+                        'searchInputs' =>
51
+                            array('first_name', 'last_name'),
52
+                        'selectDoms' =>
53
+                            array('LIST_OPTIONS' => 
54
+                                            array('dom' => 'prospect_list_type_dom', 'searchInput' => 'list_type'),
55
+                                    ),
56
+                        'create' =>
57
+                            array('formBase' => 'ProspectFormBase.php',
58
+                                    'formBaseClass' => 'ProspectFormBase',
59
+                                    'getFormBodyParams' => array('','','ProspectSave'),
60
+                                    'createButton' => 'LNK_NEW_PROSPECT'
61
+                                    )
62
+                        );
63 63
 
64 64
 
65 65
 ?>
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 3
 /*********************************************************************************
4 4
  * SugarCRM Community Edition is a customer relationship management program developed by
5 5
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
@@ -56,7 +56,7 @@  discard block
 block discarded – undo
56 56
 						'create' =>
57 57
 							array('formBase' => 'ProspectFormBase.php',
58 58
 									'formBaseClass' => 'ProspectFormBase',
59
-									'getFormBodyParams' => array('','','ProspectSave'),
59
+									'getFormBodyParams' => array('', '', 'ProspectSave'),
60 60
 									'createButton' => 'LNK_NEW_PROSPECT'
61 61
 								  )
62 62
 						);
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,5 +1,7 @@
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if(!defined('sugarEntry') || !sugarEntry) {
3
+    die('Not A Valid Entry Point');
4
+}
3 5
 /*********************************************************************************
4 6
  * SugarCRM Community Edition is a customer relationship management program developed by
5 7
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
Please login to merge, or discard this patch.
modules/Prospects/metadata/searchdefs.php 2 patches
Indentation   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -39,31 +39,31 @@
 block discarded – undo
39 39
 
40 40
 
41 41
 $searchdefs['Prospects'] = array(
42
-				'templateMeta' => array(
43
-						'maxColumns' => '3',
42
+                'templateMeta' => array(
43
+                        'maxColumns' => '3',
44 44
                         'maxColumnsBasic' => '4', 
45 45
                         'widths' => array('label' => '10', 'field' => '30'), 
46
-                       ),
46
+                        ),
47 47
                 'layout' => array(
48
-  					'basic_search' => array(
49
- 							array('name'=>'search_name','label' =>'LBL_NAME', 'type' => 'name'),
50
-                           array('name'=>'current_user_only', 'label'=>'LBL_CURRENT_USER_FILTER', 'type'=>'bool'),
48
+                        'basic_search' => array(
49
+                                array('name'=>'search_name','label' =>'LBL_NAME', 'type' => 'name'),
50
+                            array('name'=>'current_user_only', 'label'=>'LBL_CURRENT_USER_FILTER', 'type'=>'bool'),
51 51
                            
52
-						),
53
-					'advanced_search' => array(
54
-							'first_name', 
55
-							'last_name', 
56
-							array('name' => 'phone', 'label' =>'LBL_ANY_PHONE', 'type' => 'name'),
57
-							array('name' => 'email', 'label' =>'LBL_ANY_EMAIL', 'type' => 'name'),
58
-							'assistant',
59
-							'do_not_call',
60
-							array('name' => 'address_street', 'label'=>'LBL_ANY_ADDRESS', 'type' => 'name'),
61
-							array('name' => 'address_state', 'label' =>'LBL_STATE', 'type' => 'name'),
62
-							array('name' => 'address_postalcode', 'label' =>'LBL_POSTAL_CODE', 'type' => 'name'),
63
-							array('name' => 'primary_address_country', 'label' =>'LBL_COUNTRY', 'type' => 'name', 'options' => 'countries_dom', ), 
64
-							array('name' => 'assigned_user_id', 'type' => 'enum', 'label' => 'LBL_ASSIGNED_TO', 'function' => array('name' => 'get_user_array', 'params' => array(false))),
52
+                        ),
53
+                    'advanced_search' => array(
54
+                            'first_name', 
55
+                            'last_name', 
56
+                            array('name' => 'phone', 'label' =>'LBL_ANY_PHONE', 'type' => 'name'),
57
+                            array('name' => 'email', 'label' =>'LBL_ANY_EMAIL', 'type' => 'name'),
58
+                            'assistant',
59
+                            'do_not_call',
60
+                            array('name' => 'address_street', 'label'=>'LBL_ANY_ADDRESS', 'type' => 'name'),
61
+                            array('name' => 'address_state', 'label' =>'LBL_STATE', 'type' => 'name'),
62
+                            array('name' => 'address_postalcode', 'label' =>'LBL_POSTAL_CODE', 'type' => 'name'),
63
+                            array('name' => 'primary_address_country', 'label' =>'LBL_COUNTRY', 'type' => 'name', 'options' => 'countries_dom', ), 
64
+                            array('name' => 'assigned_user_id', 'type' => 'enum', 'label' => 'LBL_ASSIGNED_TO', 'function' => array('name' => 'get_user_array', 'params' => array(false))),
65 65
 							
66
-					),
67
-				),
68
-		   );
66
+                    ),
67
+                ),
68
+            );
69 69
 ?>
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -46,7 +46,7 @@  discard block
 block discarded – undo
46 46
                        ),
47 47
                 'layout' => array(
48 48
   					'basic_search' => array(
49
- 							array('name'=>'search_name','label' =>'LBL_NAME', 'type' => 'name'),
49
+ 							array('name'=>'search_name', 'label' =>'LBL_NAME', 'type' => 'name'),
50 50
                            array('name'=>'current_user_only', 'label'=>'LBL_CURRENT_USER_FILTER', 'type'=>'bool'),
51 51
                            
52 52
 						),
@@ -60,7 +60,7 @@  discard block
 block discarded – undo
60 60
 							array('name' => 'address_street', 'label'=>'LBL_ANY_ADDRESS', 'type' => 'name'),
61 61
 							array('name' => 'address_state', 'label' =>'LBL_STATE', 'type' => 'name'),
62 62
 							array('name' => 'address_postalcode', 'label' =>'LBL_POSTAL_CODE', 'type' => 'name'),
63
-							array('name' => 'primary_address_country', 'label' =>'LBL_COUNTRY', 'type' => 'name', 'options' => 'countries_dom', ), 
63
+							array('name' => 'primary_address_country', 'label' =>'LBL_COUNTRY', 'type' => 'name', 'options' => 'countries_dom',), 
64 64
 							array('name' => 'assigned_user_id', 'type' => 'enum', 'label' => 'LBL_ASSIGNED_TO', 'function' => array('name' => 'get_user_array', 'params' => array(false))),
65 65
 							
66 66
 					),
Please login to merge, or discard this patch.
modules/Prospects/metadata/SearchFields.php 3 patches
Indentation   +31 added lines, -31 removed lines patch added patch discarded remove patch
@@ -39,35 +39,35 @@
 block discarded – undo
39 39
  ********************************************************************************/
40 40
 
41 41
 $searchFields['Prospects'] = 
42
-	array (
43
-		'first_name' => array( 'query_type'=>'default'),
44
-		'last_name'=> array('query_type'=>'default'),
45
-		'search_name'=> array('query_type'=>'default','db_field'=>array('first_name','last_name'),'force_unifiedsearch'=>true),
46
-		'do_not_call'=> array('query_type'=>'default', 'operator'=>'='),
47
-		'phone'=> array('query_type'=>'default','db_field'=>array('phone_mobile','phone_work','phone_other','phone_fax','phone_home')),
48
-		'email'=> array(
49
-			'query_type' => 'default',
50
-			'operator' => 'subquery',
51
-			'subquery' => 'SELECT eabr.bean_id FROM email_addr_bean_rel eabr JOIN email_addresses ea ON (ea.id = eabr.email_address_id) WHERE eabr.deleted=0 AND ea.email_address LIKE',
52
-			'db_field' => array(
53
-				'id',
54
-			),
55
-		),
56
-		'assistant'=> array('query_type'=>'default'),
57
-		'address_street'=> array('query_type'=>'default','db_field'=>array('primary_address_street','alt_address_street')),
58
-		'address_city'=> array('query_type'=>'default','db_field'=>array('primary_address_city','alt_address_city')),
59
-		'address_state'=> array('query_type'=>'default','db_field'=>array('primary_address_state','alt_address_state')),
60
-		'address_postalcode'=> array('query_type'=>'default','db_field'=>array('primary_address_postalcode','alt_address_postalcode')),
61
-		'address_country'=> array('query_type'=>'default','db_field'=>array('primary_address_country','alt_address_country')),
62
-		'current_user_only'=> array('query_type'=>'default','db_field'=>array('assigned_user_id'),'my_items'=>true, 'vname' => 'LBL_CURRENT_USER_FILTER', 'type' => 'bool'),
63
-		'assigned_user_id'=> array('query_type'=>'default'),
64
-	   //Range Search Support 
65
-	   'range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
66
-	   'start_range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
67
-	   'end_range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
68
-	   'range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
69
-	   'start_range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
70
-       'end_range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),	
71
-	   //Range Search Support
72
-	);
42
+    array (
43
+        'first_name' => array( 'query_type'=>'default'),
44
+        'last_name'=> array('query_type'=>'default'),
45
+        'search_name'=> array('query_type'=>'default','db_field'=>array('first_name','last_name'),'force_unifiedsearch'=>true),
46
+        'do_not_call'=> array('query_type'=>'default', 'operator'=>'='),
47
+        'phone'=> array('query_type'=>'default','db_field'=>array('phone_mobile','phone_work','phone_other','phone_fax','phone_home')),
48
+        'email'=> array(
49
+            'query_type' => 'default',
50
+            'operator' => 'subquery',
51
+            'subquery' => 'SELECT eabr.bean_id FROM email_addr_bean_rel eabr JOIN email_addresses ea ON (ea.id = eabr.email_address_id) WHERE eabr.deleted=0 AND ea.email_address LIKE',
52
+            'db_field' => array(
53
+                'id',
54
+            ),
55
+        ),
56
+        'assistant'=> array('query_type'=>'default'),
57
+        'address_street'=> array('query_type'=>'default','db_field'=>array('primary_address_street','alt_address_street')),
58
+        'address_city'=> array('query_type'=>'default','db_field'=>array('primary_address_city','alt_address_city')),
59
+        'address_state'=> array('query_type'=>'default','db_field'=>array('primary_address_state','alt_address_state')),
60
+        'address_postalcode'=> array('query_type'=>'default','db_field'=>array('primary_address_postalcode','alt_address_postalcode')),
61
+        'address_country'=> array('query_type'=>'default','db_field'=>array('primary_address_country','alt_address_country')),
62
+        'current_user_only'=> array('query_type'=>'default','db_field'=>array('assigned_user_id'),'my_items'=>true, 'vname' => 'LBL_CURRENT_USER_FILTER', 'type' => 'bool'),
63
+        'assigned_user_id'=> array('query_type'=>'default'),
64
+        //Range Search Support 
65
+        'range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
66
+        'start_range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
67
+        'end_range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
68
+        'range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
69
+        'start_range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
70
+        'end_range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),	
71
+        //Range Search Support
72
+    );
73 73
 ?>
Please login to merge, or discard this patch.
Spacing   +17 added lines, -17 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 3
 /*********************************************************************************
4 4
  * SugarCRM Community Edition is a customer relationship management program developed by
5 5
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
@@ -39,12 +39,12 @@  discard block
 block discarded – undo
39 39
  ********************************************************************************/
40 40
 
41 41
 $searchFields['Prospects'] = 
42
-	array (
43
-		'first_name' => array( 'query_type'=>'default'),
42
+	array(
43
+		'first_name' => array('query_type'=>'default'),
44 44
 		'last_name'=> array('query_type'=>'default'),
45
-		'search_name'=> array('query_type'=>'default','db_field'=>array('first_name','last_name'),'force_unifiedsearch'=>true),
45
+		'search_name'=> array('query_type'=>'default', 'db_field'=>array('first_name', 'last_name'), 'force_unifiedsearch'=>true),
46 46
 		'do_not_call'=> array('query_type'=>'default', 'operator'=>'='),
47
-		'phone'=> array('query_type'=>'default','db_field'=>array('phone_mobile','phone_work','phone_other','phone_fax','phone_home')),
47
+		'phone'=> array('query_type'=>'default', 'db_field'=>array('phone_mobile', 'phone_work', 'phone_other', 'phone_fax', 'phone_home')),
48 48
 		'email'=> array(
49 49
 			'query_type' => 'default',
50 50
 			'operator' => 'subquery',
@@ -54,20 +54,20 @@  discard block
 block discarded – undo
54 54
 			),
55 55
 		),
56 56
 		'assistant'=> array('query_type'=>'default'),
57
-		'address_street'=> array('query_type'=>'default','db_field'=>array('primary_address_street','alt_address_street')),
58
-		'address_city'=> array('query_type'=>'default','db_field'=>array('primary_address_city','alt_address_city')),
59
-		'address_state'=> array('query_type'=>'default','db_field'=>array('primary_address_state','alt_address_state')),
60
-		'address_postalcode'=> array('query_type'=>'default','db_field'=>array('primary_address_postalcode','alt_address_postalcode')),
61
-		'address_country'=> array('query_type'=>'default','db_field'=>array('primary_address_country','alt_address_country')),
62
-		'current_user_only'=> array('query_type'=>'default','db_field'=>array('assigned_user_id'),'my_items'=>true, 'vname' => 'LBL_CURRENT_USER_FILTER', 'type' => 'bool'),
57
+		'address_street'=> array('query_type'=>'default', 'db_field'=>array('primary_address_street', 'alt_address_street')),
58
+		'address_city'=> array('query_type'=>'default', 'db_field'=>array('primary_address_city', 'alt_address_city')),
59
+		'address_state'=> array('query_type'=>'default', 'db_field'=>array('primary_address_state', 'alt_address_state')),
60
+		'address_postalcode'=> array('query_type'=>'default', 'db_field'=>array('primary_address_postalcode', 'alt_address_postalcode')),
61
+		'address_country'=> array('query_type'=>'default', 'db_field'=>array('primary_address_country', 'alt_address_country')),
62
+		'current_user_only'=> array('query_type'=>'default', 'db_field'=>array('assigned_user_id'), 'my_items'=>true, 'vname' => 'LBL_CURRENT_USER_FILTER', 'type' => 'bool'),
63 63
 		'assigned_user_id'=> array('query_type'=>'default'),
64 64
 	   //Range Search Support 
65
-	   'range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
66
-	   'start_range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
67
-	   'end_range_date_entered' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
68
-	   'range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
69
-	   'start_range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
70
-       'end_range_date_modified' => array ('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),	
65
+	   'range_date_entered' => array('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
66
+	   'start_range_date_entered' => array('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
67
+	   'end_range_date_entered' => array('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
68
+	   'range_date_modified' => array('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
69
+	   'start_range_date_modified' => array('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),
70
+       'end_range_date_modified' => array('query_type' => 'default', 'enable_range_search' => true, 'is_date_field' => true),	
71 71
 	   //Range Search Support
72 72
 	);
73 73
 ?>
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,5 +1,7 @@
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if(!defined('sugarEntry') || !sugarEntry) {
3
+    die('Not A Valid Entry Point');
4
+}
3 5
 /*********************************************************************************
4 6
  * SugarCRM Community Edition is a customer relationship management program developed by
5 7
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
Please login to merge, or discard this patch.
modules/Prospects/metadata/detailviewdefs.php 2 patches
Indentation   +85 added lines, -85 removed lines patch added patch discarded remove patch
@@ -39,188 +39,188 @@
 block discarded – undo
39 39
 
40 40
 $viewdefs ['Prospects'] = 
41 41
 array (
42
-  'DetailView' => 
43
-  array (
42
+    'DetailView' => 
43
+    array (
44 44
     'templateMeta' => 
45 45
     array (
46
-      'form' => 
47
-      array (
46
+        'form' => 
47
+        array (
48 48
         'buttons' => 
49 49
         array (
50
-          0 => 'EDIT',
51
-          1 => 'DUPLICATE',
52
-          2 => 'DELETE',
53
-          3 => 
54
-          array (
50
+            0 => 'EDIT',
51
+            1 => 'DUPLICATE',
52
+            2 => 'DELETE',
53
+            3 => 
54
+            array (
55 55
             'customCode' => '<input title="{$MOD.LBL_CONVERT_BUTTON_TITLE}" class="button" onclick="this.form.return_module.value=\'Prospects\'; this.form.return_action.value=\'DetailView\'; this.form.return_id.value=\'{$fields.id.value}\';this.form.module.value=\'Leads\';this.form.action.value=\'EditView\';" type="submit" name="CONVERT_LEAD_BTN" value="{$MOD.LBL_CONVERT_BUTTON_LABEL}"/>',
56 56
             'sugar_html' => 
57 57
             array (
58
-              'type' => 'submit',
59
-              'value' => '{$MOD.LBL_CONVERT_BUTTON_LABEL}',
60
-              'htmlOptions' => 
61
-              array (
58
+                'type' => 'submit',
59
+                'value' => '{$MOD.LBL_CONVERT_BUTTON_LABEL}',
60
+                'htmlOptions' => 
61
+                array (
62 62
                 'class' => 'button',
63 63
                 'name' => 'CONVERT_LEAD_BTN',
64 64
                 'id' => 'convert_target_button',
65 65
                 'title' => '{$MOD.LBL_CONVERT_BUTTON_TITLE}',
66 66
                 'onclick' => 'this.form.return_module.value=\'Prospects\'; this.form.return_action.value=\'DetailView\'; this.form.return_id.value=\'{$fields.id.value}\';this.form.module.value=\'Leads\';this.form.action.value=\'EditView\';',
67
-              ),
67
+                ),
68 68
             ),
69
-          ),
70
-          4 => 
71
-          array (
69
+            ),
70
+            4 => 
71
+            array (
72 72
             'customCode' => '<input title="{$APP.LBL_MANAGE_SUBSCRIPTIONS}" class="button" onclick="this.form.return_module.value=\'Prospects\'; this.form.return_action.value=\'DetailView\'; this.form.return_id.value=\'{$fields.id.value}\'; this.form.action.value=\'Subscriptions\'; this.form.module.value=\'Campaigns\';" type="submit" name="Manage Subscriptions" value="{$APP.LBL_MANAGE_SUBSCRIPTIONS}"/>',
73 73
             'sugar_html' => 
74 74
             array (
75
-              'type' => 'submit',
76
-              'value' => '{$APP.LBL_MANAGE_SUBSCRIPTIONS}',
77
-              'htmlOptions' => 
78
-              array (
75
+                'type' => 'submit',
76
+                'value' => '{$APP.LBL_MANAGE_SUBSCRIPTIONS}',
77
+                'htmlOptions' => 
78
+                array (
79 79
                 'class' => 'button',
80 80
                 'id' => 'manage_subscriptions_button',
81 81
                 'name' => 'Manage Subscriptions',
82 82
                 'title' => '{$APP.LBL_MANAGE_SUBSCRIPTIONS}',
83 83
                 'onclick' => 'this.form.return_module.value=\'Prospects\'; this.form.return_action.value=\'DetailView\'; this.form.return_id.value=\'{$fields.id.value}\'; this.form.action.value=\'Subscriptions\'; this.form.module.value=\'Campaigns\';',
84
-              ),
84
+                ),
85
+            ),
85 86
             ),
86
-          ),
87 87
         ),
88 88
         'hidden' => 
89 89
         array (
90
-          0 => '<input type="hidden" name="prospect_id" value="{$fields.id.value}">',
90
+            0 => '<input type="hidden" name="prospect_id" value="{$fields.id.value}">',
91 91
         ),
92 92
         'headerTpl' => 'modules/Prospects/tpls/DetailViewHeader.tpl',
93
-      ),
94
-      'maxColumns' => '2',
95
-      'widths' => 
96
-      array (
93
+        ),
94
+        'maxColumns' => '2',
95
+        'widths' => 
96
+        array (
97 97
         0 => 
98 98
         array (
99
-          'label' => '10',
100
-          'field' => '30',
99
+            'label' => '10',
100
+            'field' => '30',
101 101
         ),
102 102
         1 => 
103 103
         array (
104
-          'label' => '10',
105
-          'field' => '30',
104
+            'label' => '10',
105
+            'field' => '30',
106
+        ),
106 107
         ),
107
-      ),
108
-      'useTabs' => true,
109
-      'tabDefs' => 
110
-      array (
108
+        'useTabs' => true,
109
+        'tabDefs' => 
110
+        array (
111 111
         'LBL_PROSPECT_INFORMATION' => 
112 112
         array (
113
-          'newTab' => true,
114
-          'panelDefault' => 'expanded',
113
+            'newTab' => true,
114
+            'panelDefault' => 'expanded',
115 115
         ),
116 116
         'LBL_MORE_INFORMATION' => 
117 117
         array (
118
-          'newTab' => true,
119
-          'panelDefault' => 'expanded',
118
+            'newTab' => true,
119
+            'panelDefault' => 'expanded',
120 120
         ),
121 121
         'LBL_PANEL_ASSIGNMENT' => 
122 122
         array (
123
-          'newTab' => true,
124
-          'panelDefault' => 'expanded',
123
+            'newTab' => true,
124
+            'panelDefault' => 'expanded',
125
+        ),
125 126
         ),
126
-      ),
127 127
     ),
128 128
     'panels' => 
129 129
     array (
130
-      'lbl_prospect_information' => 
131
-      array (
130
+        'lbl_prospect_information' => 
131
+        array (
132 132
         0 => 
133 133
         array (
134
-          0 => 
135
-          array (
134
+            0 => 
135
+            array (
136 136
             'name' => 'full_name',
137
-          ),
137
+            ),
138 138
         ),
139 139
         1 => 
140 140
         array (
141
-          0 => 'title',
142
-          1 => 
143
-          array (
141
+            0 => 'title',
142
+            1 => 
143
+            array (
144 144
             'name' => 'phone_work',
145 145
             'label' => 'LBL_OFFICE_PHONE',
146
-          ),
146
+            ),
147 147
         ),
148 148
         2 => 
149 149
         array (
150
-          0 => 'department',
151
-          1 => 'phone_mobile',
150
+            0 => 'department',
151
+            1 => 'phone_mobile',
152 152
         ),
153 153
         3 => 
154 154
         array (
155
-          0 => 
156
-          array (
155
+            0 => 
156
+            array (
157 157
             'name' => 'account_name',
158
-          ),
159
-          1 => 'phone_fax',
158
+            ),
159
+            1 => 'phone_fax',
160 160
         ),
161 161
         4 => 
162 162
         array (
163
-          0 => 
164
-          array (
163
+            0 => 
164
+            array (
165 165
             'name' => 'primary_address_street',
166 166
             'label' => 'LBL_PRIMARY_ADDRESS',
167 167
             'type' => 'address',
168 168
             'displayParams' => 
169 169
             array (
170
-              'key' => 'primary',
170
+                'key' => 'primary',
171
+            ),
171 172
             ),
172
-          ),
173
-          1 => 
174
-          array (
173
+            1 => 
174
+            array (
175 175
             'name' => 'alt_address_street',
176 176
             'label' => 'LBL_ALTERNATE_ADDRESS',
177 177
             'type' => 'address',
178 178
             'displayParams' => 
179 179
             array (
180
-              'key' => 'alt',
180
+                'key' => 'alt',
181
+            ),
181 182
             ),
182
-          ),
183 183
         ),
184 184
         5 => 
185 185
         array (
186
-          0 => 'email1',
186
+            0 => 'email1',
187 187
         ),
188 188
         6 => 
189 189
         array (
190
-          0 => 'description',
190
+            0 => 'description',
191 191
         ),
192 192
         7 => 
193 193
         array (
194
-          0 => 'assigned_user_name',
194
+            0 => 'assigned_user_name',
195 195
         ),
196
-      ),
197
-      'LBL_MORE_INFORMATION' => 
198
-      array (
196
+        ),
197
+        'LBL_MORE_INFORMATION' => 
198
+        array (
199 199
         0 => 
200 200
         array (
201
-          0 => 'email_opt_out',
202
-          1 => 'do_not_call',
201
+            0 => 'email_opt_out',
202
+            1 => 'do_not_call',
203
+        ),
203 204
         ),
204
-      ),
205
-      'LBL_PANEL_ASSIGNMENT' => 
206
-      array (
205
+        'LBL_PANEL_ASSIGNMENT' => 
206
+        array (
207 207
         0 => 
208 208
         array (
209
-          0 => 
210
-          array (
209
+            0 => 
210
+            array (
211 211
             'name' => 'modified_by_name',
212 212
             'customCode' => '{$fields.date_modified.value} {$APP.LBL_BY} {$fields.modified_by_name.value}&nbsp;',
213 213
             'label' => 'LBL_DATE_MODIFIED',
214
-          ),
215
-          1 =>
216
-          array (
214
+            ),
215
+            1 =>
216
+            array (
217 217
             'name' => 'created_by_name',
218 218
             'customCode' => '{$fields.date_entered.value} {$APP.LBL_BY} {$fields.created_by_name.value}&nbsp;',
219 219
             'label' => 'LBL_DATE_ENTERED',
220
-          ),
220
+            ),
221 221
         ),
222
-      ),
222
+        ),
223
+    ),
223 224
     ),
224
-  ),
225 225
 );
226 226
 ?>
Please login to merge, or discard this patch.
Spacing   +42 added lines, -42 removed lines patch added patch discarded remove patch
@@ -38,27 +38,27 @@  discard block
 block discarded – undo
38 38
  ********************************************************************************/
39 39
 
40 40
 $viewdefs ['Prospects'] = 
41
-array (
41
+array(
42 42
   'DetailView' => 
43
-  array (
43
+  array(
44 44
     'templateMeta' => 
45
-    array (
45
+    array(
46 46
       'form' => 
47
-      array (
47
+      array(
48 48
         'buttons' => 
49
-        array (
49
+        array(
50 50
           0 => 'EDIT',
51 51
           1 => 'DUPLICATE',
52 52
           2 => 'DELETE',
53 53
           3 => 
54
-          array (
54
+          array(
55 55
             'customCode' => '<input title="{$MOD.LBL_CONVERT_BUTTON_TITLE}" class="button" onclick="this.form.return_module.value=\'Prospects\'; this.form.return_action.value=\'DetailView\'; this.form.return_id.value=\'{$fields.id.value}\';this.form.module.value=\'Leads\';this.form.action.value=\'EditView\';" type="submit" name="CONVERT_LEAD_BTN" value="{$MOD.LBL_CONVERT_BUTTON_LABEL}"/>',
56 56
             'sugar_html' => 
57
-            array (
57
+            array(
58 58
               'type' => 'submit',
59 59
               'value' => '{$MOD.LBL_CONVERT_BUTTON_LABEL}',
60 60
               'htmlOptions' => 
61
-              array (
61
+              array(
62 62
                 'class' => 'button',
63 63
                 'name' => 'CONVERT_LEAD_BTN',
64 64
                 'id' => 'convert_target_button',
@@ -68,14 +68,14 @@  discard block
 block discarded – undo
68 68
             ),
69 69
           ),
70 70
           4 => 
71
-          array (
71
+          array(
72 72
             'customCode' => '<input title="{$APP.LBL_MANAGE_SUBSCRIPTIONS}" class="button" onclick="this.form.return_module.value=\'Prospects\'; this.form.return_action.value=\'DetailView\'; this.form.return_id.value=\'{$fields.id.value}\'; this.form.action.value=\'Subscriptions\'; this.form.module.value=\'Campaigns\';" type="submit" name="Manage Subscriptions" value="{$APP.LBL_MANAGE_SUBSCRIPTIONS}"/>',
73 73
             'sugar_html' => 
74
-            array (
74
+            array(
75 75
               'type' => 'submit',
76 76
               'value' => '{$APP.LBL_MANAGE_SUBSCRIPTIONS}',
77 77
               'htmlOptions' => 
78
-              array (
78
+              array(
79 79
                 'class' => 'button',
80 80
                 'id' => 'manage_subscriptions_button',
81 81
                 'name' => 'Manage Subscriptions',
@@ -86,134 +86,134 @@  discard block
 block discarded – undo
86 86
           ),
87 87
         ),
88 88
         'hidden' => 
89
-        array (
89
+        array(
90 90
           0 => '<input type="hidden" name="prospect_id" value="{$fields.id.value}">',
91 91
         ),
92 92
         'headerTpl' => 'modules/Prospects/tpls/DetailViewHeader.tpl',
93 93
       ),
94 94
       'maxColumns' => '2',
95 95
       'widths' => 
96
-      array (
96
+      array(
97 97
         0 => 
98
-        array (
98
+        array(
99 99
           'label' => '10',
100 100
           'field' => '30',
101 101
         ),
102 102
         1 => 
103
-        array (
103
+        array(
104 104
           'label' => '10',
105 105
           'field' => '30',
106 106
         ),
107 107
       ),
108 108
       'useTabs' => true,
109 109
       'tabDefs' => 
110
-      array (
110
+      array(
111 111
         'LBL_PROSPECT_INFORMATION' => 
112
-        array (
112
+        array(
113 113
           'newTab' => true,
114 114
           'panelDefault' => 'expanded',
115 115
         ),
116 116
         'LBL_MORE_INFORMATION' => 
117
-        array (
117
+        array(
118 118
           'newTab' => true,
119 119
           'panelDefault' => 'expanded',
120 120
         ),
121 121
         'LBL_PANEL_ASSIGNMENT' => 
122
-        array (
122
+        array(
123 123
           'newTab' => true,
124 124
           'panelDefault' => 'expanded',
125 125
         ),
126 126
       ),
127 127
     ),
128 128
     'panels' => 
129
-    array (
129
+    array(
130 130
       'lbl_prospect_information' => 
131
-      array (
131
+      array(
132 132
         0 => 
133
-        array (
133
+        array(
134 134
           0 => 
135
-          array (
135
+          array(
136 136
             'name' => 'full_name',
137 137
           ),
138 138
         ),
139 139
         1 => 
140
-        array (
140
+        array(
141 141
           0 => 'title',
142 142
           1 => 
143
-          array (
143
+          array(
144 144
             'name' => 'phone_work',
145 145
             'label' => 'LBL_OFFICE_PHONE',
146 146
           ),
147 147
         ),
148 148
         2 => 
149
-        array (
149
+        array(
150 150
           0 => 'department',
151 151
           1 => 'phone_mobile',
152 152
         ),
153 153
         3 => 
154
-        array (
154
+        array(
155 155
           0 => 
156
-          array (
156
+          array(
157 157
             'name' => 'account_name',
158 158
           ),
159 159
           1 => 'phone_fax',
160 160
         ),
161 161
         4 => 
162
-        array (
162
+        array(
163 163
           0 => 
164
-          array (
164
+          array(
165 165
             'name' => 'primary_address_street',
166 166
             'label' => 'LBL_PRIMARY_ADDRESS',
167 167
             'type' => 'address',
168 168
             'displayParams' => 
169
-            array (
169
+            array(
170 170
               'key' => 'primary',
171 171
             ),
172 172
           ),
173 173
           1 => 
174
-          array (
174
+          array(
175 175
             'name' => 'alt_address_street',
176 176
             'label' => 'LBL_ALTERNATE_ADDRESS',
177 177
             'type' => 'address',
178 178
             'displayParams' => 
179
-            array (
179
+            array(
180 180
               'key' => 'alt',
181 181
             ),
182 182
           ),
183 183
         ),
184 184
         5 => 
185
-        array (
185
+        array(
186 186
           0 => 'email1',
187 187
         ),
188 188
         6 => 
189
-        array (
189
+        array(
190 190
           0 => 'description',
191 191
         ),
192 192
         7 => 
193
-        array (
193
+        array(
194 194
           0 => 'assigned_user_name',
195 195
         ),
196 196
       ),
197 197
       'LBL_MORE_INFORMATION' => 
198
-      array (
198
+      array(
199 199
         0 => 
200
-        array (
200
+        array(
201 201
           0 => 'email_opt_out',
202 202
           1 => 'do_not_call',
203 203
         ),
204 204
       ),
205 205
       'LBL_PANEL_ASSIGNMENT' => 
206
-      array (
206
+      array(
207 207
         0 => 
208
-        array (
208
+        array(
209 209
           0 => 
210
-          array (
210
+          array(
211 211
             'name' => 'modified_by_name',
212 212
             'customCode' => '{$fields.date_modified.value} {$APP.LBL_BY} {$fields.modified_by_name.value}&nbsp;',
213 213
             'label' => 'LBL_DATE_MODIFIED',
214 214
           ),
215 215
           1 =>
216
-          array (
216
+          array(
217 217
             'name' => 'created_by_name',
218 218
             'customCode' => '{$fields.date_entered.value} {$APP.LBL_BY} {$fields.created_by_name.value}&nbsp;',
219 219
             'label' => 'LBL_DATE_ENTERED',
Please login to merge, or discard this patch.
modules/Prospects/metadata/quickcreatedefs.php 3 patches
Indentation   +54 added lines, -54 removed lines patch added patch discarded remove patch
@@ -46,121 +46,121 @@
 block discarded – undo
46 46
  ********************************************************************************/
47 47
 
48 48
 $viewdefs = array (
49
-  'Prospects' => 
50
-  array (
49
+    'Prospects' => 
50
+    array (
51 51
     'QuickCreate' => 
52 52
     array (
53
-      'templateMeta' => 
54
-      array (
53
+        'templateMeta' => 
54
+        array (
55 55
         'maxColumns' => '2',
56 56
         'widths' => 
57 57
         array (
58
-          0 => 
59
-          array (
58
+            0 => 
59
+            array (
60 60
             'label' => '10',
61 61
             'field' => '30',
62
-          ),
63
-          1 => 
64
-          array (
62
+            ),
63
+            1 => 
64
+            array (
65 65
             'label' => '10',
66 66
             'field' => '30',
67
-          ),
67
+            ),
68 68
         ),
69
-      ),
70
-      'panels' => 
71
-      array (
69
+        ),
70
+        'panels' => 
71
+        array (
72 72
         'LBL_PROSPECT_INFORMATION' => 
73 73
         array (
74
-          0 => 
75
-          array (
76 74
             0 => 
77 75
             array (
78
-              'name' => 'first_name',
76
+            0 => 
77
+            array (
78
+                'name' => 'first_name',
79 79
             ),
80 80
             1 => 
81 81
             array (
82
-              'name' => 'phone_work',
82
+                'name' => 'phone_work',
83 83
             ),
84
-          ),
85
-          1 => 
86
-          array (
84
+            ),
85
+            1 => 
86
+            array (
87 87
             0 => 
88 88
             array (
89
-              'name' => 'last_name',
90
-              'displayParams'=>array('required'=>true)
89
+                'name' => 'last_name',
90
+                'displayParams'=>array('required'=>true)
91 91
             ),
92 92
             1 => 
93 93
             array (
94
-              'name' => 'phone_mobile',
94
+                'name' => 'phone_mobile',
95
+            ),
95 96
             ),
96
-          ),
97
-          2 => 
98
-          array (
97
+            2 => 
98
+            array (
99 99
             0 => 
100 100
             array (
101
-              'name' => 'account_name',
101
+                'name' => 'account_name',
102 102
             ),
103 103
             1 => 
104 104
             array (
105
-              'name' => 'phone_fax',
105
+                'name' => 'phone_fax',
106
+            ),
106 107
             ),
107
-          ),
108
-          3 => 
109
-          array (
108
+            3 => 
109
+            array (
110 110
             0 => 
111 111
             array (
112
-              'name' => 'title',
112
+                'name' => 'title',
113 113
             ),
114 114
             1 => 
115 115
             array (
116
-              'name' => 'department',
116
+                'name' => 'department',
117
+            ),
117 118
             ),
118
-          ),
119
-          4 => 
120
-          array (
119
+            4 => 
120
+            array (
121 121
             0 => 
122 122
             array (
123
-              'name' => 'team_name',
123
+                'name' => 'team_name',
124 124
             ),
125 125
             1 => 
126 126
             array (
127
-              'name' => 'do_not_call',
127
+                'name' => 'do_not_call',
128
+            ),
128 129
             ),
129
-          ),
130
-          5 => 
131
-          array (
130
+            5 => 
131
+            array (
132 132
             0 => 
133 133
             array (
134
-              'name' => 'assigned_user_name',
134
+                'name' => 'assigned_user_name',
135
+            ),
135 136
             ),
136
-          ),
137 137
         ),
138 138
         'lbl_email_addresses' => 
139 139
         array (
140
-          0 => 
141
-          array (
142 140
             0 => 
143 141
             array (
144
-              'name' => 'email1',
142
+            0 => 
143
+            array (
144
+                'name' => 'email1',
145
+            ),
145 146
             ),
146
-          ),
147 147
         ),
148 148
         'LBL_ADDRESS_INFORMATION' => 
149 149
         array (
150
-          0 => 
151
-          array (
152 150
             0 => 
153 151
             array (
154
-              'name' => 'primary_address_street',
152
+            0 => 
153
+            array (
154
+                'name' => 'primary_address_street',
155 155
             ),
156 156
             1 => 
157 157
             array (
158
-              'name' => 'alt_address_street',
158
+                'name' => 'alt_address_street',
159
+            ),
159 160
             ),
160
-          ),
161 161
         ),
162
-      ),
162
+        ),
163
+    ),
163 164
     ),
164
-  ),
165 165
 );
166 166
 ?>
Please login to merge, or discard this patch.
Spacing   +34 added lines, -34 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 3
 /*********************************************************************************
4 4
  * SugarCRM Community Edition is a customer relationship management program developed by
5 5
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
@@ -45,116 +45,116 @@  discard block
 block discarded – undo
45 45
  * Contributor(s): ______________________________________..
46 46
  ********************************************************************************/
47 47
 
48
-$viewdefs = array (
48
+$viewdefs = array(
49 49
   'Prospects' => 
50
-  array (
50
+  array(
51 51
     'QuickCreate' => 
52
-    array (
52
+    array(
53 53
       'templateMeta' => 
54
-      array (
54
+      array(
55 55
         'maxColumns' => '2',
56 56
         'widths' => 
57
-        array (
57
+        array(
58 58
           0 => 
59
-          array (
59
+          array(
60 60
             'label' => '10',
61 61
             'field' => '30',
62 62
           ),
63 63
           1 => 
64
-          array (
64
+          array(
65 65
             'label' => '10',
66 66
             'field' => '30',
67 67
           ),
68 68
         ),
69 69
       ),
70 70
       'panels' => 
71
-      array (
71
+      array(
72 72
         'LBL_PROSPECT_INFORMATION' => 
73
-        array (
73
+        array(
74 74
           0 => 
75
-          array (
75
+          array(
76 76
             0 => 
77
-            array (
77
+            array(
78 78
               'name' => 'first_name',
79 79
             ),
80 80
             1 => 
81
-            array (
81
+            array(
82 82
               'name' => 'phone_work',
83 83
             ),
84 84
           ),
85 85
           1 => 
86
-          array (
86
+          array(
87 87
             0 => 
88
-            array (
88
+            array(
89 89
               'name' => 'last_name',
90 90
               'displayParams'=>array('required'=>true)
91 91
             ),
92 92
             1 => 
93
-            array (
93
+            array(
94 94
               'name' => 'phone_mobile',
95 95
             ),
96 96
           ),
97 97
           2 => 
98
-          array (
98
+          array(
99 99
             0 => 
100
-            array (
100
+            array(
101 101
               'name' => 'account_name',
102 102
             ),
103 103
             1 => 
104
-            array (
104
+            array(
105 105
               'name' => 'phone_fax',
106 106
             ),
107 107
           ),
108 108
           3 => 
109
-          array (
109
+          array(
110 110
             0 => 
111
-            array (
111
+            array(
112 112
               'name' => 'title',
113 113
             ),
114 114
             1 => 
115
-            array (
115
+            array(
116 116
               'name' => 'department',
117 117
             ),
118 118
           ),
119 119
           4 => 
120
-          array (
120
+          array(
121 121
             0 => 
122
-            array (
122
+            array(
123 123
               'name' => 'team_name',
124 124
             ),
125 125
             1 => 
126
-            array (
126
+            array(
127 127
               'name' => 'do_not_call',
128 128
             ),
129 129
           ),
130 130
           5 => 
131
-          array (
131
+          array(
132 132
             0 => 
133
-            array (
133
+            array(
134 134
               'name' => 'assigned_user_name',
135 135
             ),
136 136
           ),
137 137
         ),
138 138
         'lbl_email_addresses' => 
139
-        array (
139
+        array(
140 140
           0 => 
141
-          array (
141
+          array(
142 142
             0 => 
143
-            array (
143
+            array(
144 144
               'name' => 'email1',
145 145
             ),
146 146
           ),
147 147
         ),
148 148
         'LBL_ADDRESS_INFORMATION' => 
149
-        array (
149
+        array(
150 150
           0 => 
151
-          array (
151
+          array(
152 152
             0 => 
153
-            array (
153
+            array(
154 154
               'name' => 'primary_address_street',
155 155
             ),
156 156
             1 => 
157
-            array (
157
+            array(
158 158
               'name' => 'alt_address_street',
159 159
             ),
160 160
           ),
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,5 +1,7 @@
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if(!defined('sugarEntry') || !sugarEntry) {
3
+    die('Not A Valid Entry Point');
4
+}
3 5
 /*********************************************************************************
4 6
  * SugarCRM Community Edition is a customer relationship management program developed by
5 7
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
Please login to merge, or discard this patch.
modules/Prospects/metadata/listviewdefs.php 3 patches
Indentation   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -42,10 +42,10 @@  discard block
 block discarded – undo
42 42
 
43 43
 
44 44
 $listViewDefs['Prospects'] = array(
45
-	'FULL_NAME' => array(
46
-		'width' => '20', 
47
-		'label' => 'LBL_LIST_NAME', 
48
-		'link' => true,
45
+    'FULL_NAME' => array(
46
+        'width' => '20', 
47
+        'label' => 'LBL_LIST_NAME', 
48
+        'link' => true,
49 49
         'related_fields' => array('first_name', 'last_name'),
50 50
         'orderBy' => 'last_name',
51 51
         'default' => true),
@@ -65,11 +65,11 @@  discard block
 block discarded – undo
65 65
         'label' => 'LBL_LIST_PHONE', 
66 66
         'link' => false,
67 67
         'default' => true), 
68
-	'DATE_ENTERED' => array (
69
-	    'type' => 'datetime',
70
-	    'label' => 'LBL_DATE_ENTERED',
71
-	    'width' => '10',
72
-	    'default' => true,
73
-	  ),  
68
+    'DATE_ENTERED' => array (
69
+        'type' => 'datetime',
70
+        'label' => 'LBL_DATE_ENTERED',
71
+        'width' => '10',
72
+        'default' => true,
73
+        ),  
74 74
 );
75 75
 ?>
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 3
 /*********************************************************************************
4 4
  * SugarCRM Community Edition is a customer relationship management program developed by
5 5
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
@@ -101,7 +101,7 @@  discard block
 block discarded – undo
101 101
         'label' => 'LBL_LIST_STATUS', 
102 102
         'link' => false,
103 103
         'default' => false),
104
-	'DATE_ENTERED' => array (
104
+	'DATE_ENTERED' => array(
105 105
 	    'width' => '10',
106 106
 	    'label' => 'LBL_DATE_ENTERED',
107 107
 	    'default' => true),            
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,5 +1,7 @@
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if(!defined('sugarEntry') || !sugarEntry) {
3
+    die('Not A Valid Entry Point');
4
+}
3 5
 /*********************************************************************************
4 6
  * SugarCRM Community Edition is a customer relationship management program developed by
5 7
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
Please login to merge, or discard this patch.
modules/Reminders/vardefs.php 1 patch
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -37,9 +37,9 @@  discard block
 block discarded – undo
37 37
  * display the words  "Powered by SugarCRM" and "Supercharged by SuiteCRM".
38 38
  ********************************************************************************/
39 39
 
40
-$dictionary['Reminder']['table']= 'reminders';
41
-$dictionary['Reminder']['audited']= false;
42
-$dictionary['Reminder']['fields']= array(
40
+$dictionary['Reminder']['table'] = 'reminders';
41
+$dictionary['Reminder']['audited'] = false;
42
+$dictionary['Reminder']['fields'] = array(
43 43
     'popup' => array(
44 44
         'name' => 'popup',
45 45
         'vname' => 'LBL_POPUP',
@@ -102,9 +102,9 @@  discard block
 block discarded – undo
102 102
 );
103 103
 
104 104
 
105
-if (!class_exists('VardefManager')){
105
+if (!class_exists('VardefManager')) {
106 106
     require_once('include/SugarObjects/VardefManager.php');
107 107
 }
108
-VardefManager::createVardef('Reminders','Reminder', array('basic','assignable'));
108
+VardefManager::createVardef('Reminders', 'Reminder', array('basic', 'assignable'));
109 109
 
110 110
 ?>
111 111
\ No newline at end of file
Please login to merge, or discard this patch.
modules/Reminders/Reminder.php 4 patches
Indentation   +522 added lines, -522 removed lines patch added patch discarded remove patch
@@ -43,7 +43,7 @@  discard block
 block discarded – undo
43 43
  */
44 44
 class Reminder extends Basic {
45 45
 
46
-	const UPGRADE_VERSION = '7.4.3';
46
+    const UPGRADE_VERSION = '7.4.3';
47 47
 
48 48
     var $name;
49 49
 
@@ -51,19 +51,19 @@  discard block
 block discarded – undo
51 51
     var $module_dir = 'Reminders';
52 52
     var $object_name = 'Reminder';
53 53
     var $table_name = 'reminders';
54
-	var $tracker_visibility = false;
54
+    var $tracker_visibility = false;
55 55
     var $importable = false;
56 56
     var $disable_row_level_security = true;
57 57
 
58 58
     var $popup;
59 59
     var $email;
60 60
     var $email_sent = false;
61
-	var $timer_popup;
62
-	var $timer_email;
63
-	var $related_event_module;
64
-	var $related_event_module_id;
61
+    var $timer_popup;
62
+    var $timer_email;
63
+    var $related_event_module;
64
+    var $related_event_module_id;
65 65
 
66
-	private static $remindersData = array();
66
+    private static $remindersData = array();
67 67
 
68 68
     public function __construct() {
69 69
         parent::Basic();
@@ -76,17 +76,17 @@  discard block
 block discarded – undo
76 76
         return false;
77 77
     }
78 78
 
79
-	// ---- save and load remainders on EditViews
79
+    // ---- save and load remainders on EditViews
80 80
 	
81
-	/**
82
-	 * Save multiple reminders data from clients Meetings/Calls EditView.
83
-	 * Call this static function in save action.
84
-	 * 
85
-	 * @param string $eventModule Event Bean module name (e.g. Meetings, Calls)
86
-	 * @param string $eventModuleId Event Bean GUID
87
-	 * @param string $remindersDataJson Remainders data as Json string from POST data.
88
-	 * @throws Exception throw an Exception if json format is invalid.
89
-	 */
81
+    /**
82
+     * Save multiple reminders data from clients Meetings/Calls EditView.
83
+     * Call this static function in save action.
84
+     * 
85
+     * @param string $eventModule Event Bean module name (e.g. Meetings, Calls)
86
+     * @param string $eventModuleId Event Bean GUID
87
+     * @param string $remindersDataJson Remainders data as Json string from POST data.
88
+     * @throws Exception throw an Exception if json format is invalid.
89
+     */
90 90
     public static function saveRemindersDataJson($eventModule, $eventModuleId, $remindersDataJson) {
91 91
         $reminderData = json_decode($remindersDataJson);
92 92
         if(!json_last_error()) {
@@ -100,7 +100,7 @@  discard block
 block discarded – undo
100 100
     private static function saveRemindersData($eventModule, $eventModuleId, $remindersData) {
101 101
         $savedReminderIds = array();
102 102
         foreach($remindersData as $reminderData) {
103
-			if(isset($_POST['isDuplicate']) && $_POST['isDuplicate']) $reminderData->id = '';
103
+            if(isset($_POST['isDuplicate']) && $_POST['isDuplicate']) $reminderData->id = '';
104 104
             $reminderBean = BeanFactory::getBean('Reminders', $reminderData->id);
105 105
             $reminderBean->popup = $reminderData->popup;
106 106
             $reminderBean->email = $reminderData->email;
@@ -123,18 +123,18 @@  discard block
 block discarded – undo
123 123
                 }
124 124
             }
125 125
         }
126
-		unset(self::$remindersData[$eventModule][$eventModuleId]);
126
+        unset(self::$remindersData[$eventModule][$eventModuleId]);
127 127
     }
128 128
 
129
-	/**
130
-	 * Load multiple reminders JSON data for related Event module EditViews.
131
-	 * Call this function in module display function.
132
-	 * 
133
-	 * @param string $eventModule Related event module name (Meetings/Calls)
134
-	 * @param string $eventModuleId Related event GUID
135
-	 * @return string JSON string contains the remainders
136
-	 * @throws Exception
137
-	 */
129
+    /**
130
+     * Load multiple reminders JSON data for related Event module EditViews.
131
+     * Call this function in module display function.
132
+     * 
133
+     * @param string $eventModule Related event module name (Meetings/Calls)
134
+     * @param string $eventModuleId Related event GUID
135
+     * @return string JSON string contains the remainders
136
+     * @throws Exception
137
+     */
138 138
     public static function loadRemindersDataJson($eventModule, $eventModuleId, $isDuplicate = false) {
139 139
         $remindersData = self::loadRemindersData($eventModule, $eventModuleId, $isDuplicate);
140 140
         $remindersDataJson = json_encode($remindersData);
@@ -144,551 +144,551 @@  discard block
 block discarded – undo
144 144
         return $remindersDataJson;
145 145
     }
146 146
 
147
-	/**
148
-	 * Load multiple reminders data for related Event module EditViews.
149
-	 * Call this function in module display function.
150
-	 *
151
-	 * @param string $eventModule Related event module name (Meetings/Calls)
152
-	 * @param string $eventModuleId Related event GUID
153
-	 * @return array contains the remainders
154
-	 * @throws Exception
155
-	 */
156
-	public static function loadRemindersData($eventModule, $eventModuleId, $isDuplicate = false) {
157
-		if(!isset(self::$remindersData[$eventModule][$eventModuleId]) || !$eventModuleId || $isDuplicate) {
158
-			$ret = array();
159
-			$reminders = BeanFactory::getBean('Reminders')->get_full_list("reminders.date_entered", "reminders.related_event_module = '$eventModule' AND reminders.related_event_module_id = '$eventModuleId'");
160
-			if ($reminders) {
161
-				foreach ($reminders as $reminder) {
162
-					$ret[] = array(
163
-							'id' => $isDuplicate ? null : $reminder->id,
164
-							'popup' => $reminder->popup,
165
-							'email' => $reminder->email,
166
-							'timer_popup' => $reminder->timer_popup,
167
-							'timer_email' => $reminder->timer_email,
168
-							'invitees' => Reminder_Invitee::loadRemindersInviteesData($reminder->id, $isDuplicate),
169
-					);
170
-				}
171
-			}
172
-			self::$remindersData[$eventModule][$eventModuleId] = $ret;
173
-		}
174
-		return self::$remindersData[$eventModule][$eventModuleId];
175
-	}
147
+    /**
148
+     * Load multiple reminders data for related Event module EditViews.
149
+     * Call this function in module display function.
150
+     *
151
+     * @param string $eventModule Related event module name (Meetings/Calls)
152
+     * @param string $eventModuleId Related event GUID
153
+     * @return array contains the remainders
154
+     * @throws Exception
155
+     */
156
+    public static function loadRemindersData($eventModule, $eventModuleId, $isDuplicate = false) {
157
+        if(!isset(self::$remindersData[$eventModule][$eventModuleId]) || !$eventModuleId || $isDuplicate) {
158
+            $ret = array();
159
+            $reminders = BeanFactory::getBean('Reminders')->get_full_list("reminders.date_entered", "reminders.related_event_module = '$eventModule' AND reminders.related_event_module_id = '$eventModuleId'");
160
+            if ($reminders) {
161
+                foreach ($reminders as $reminder) {
162
+                    $ret[] = array(
163
+                            'id' => $isDuplicate ? null : $reminder->id,
164
+                            'popup' => $reminder->popup,
165
+                            'email' => $reminder->email,
166
+                            'timer_popup' => $reminder->timer_popup,
167
+                            'timer_email' => $reminder->timer_email,
168
+                            'invitees' => Reminder_Invitee::loadRemindersInviteesData($reminder->id, $isDuplicate),
169
+                    );
170
+                }
171
+            }
172
+            self::$remindersData[$eventModule][$eventModuleId] = $ret;
173
+        }
174
+        return self::$remindersData[$eventModule][$eventModuleId];
175
+    }
176 176
 	
177
-	// ---- sending email reminders
177
+    // ---- sending email reminders
178 178
 	
179
-	/**
180
-	 * Sending multiple email reminders. 
181
-	 * Call in EmainReminder and use original EmailRemainder class for sending.
182
-	 * 
183
-	 * @param EmailReminder $emailReminder Caller EmailReminder
184
-	 * @param Administration $admin Administration module for EmailRemainder->sendReminders() function
185
-	 * @param boolean $checkDecline (optional) Send email if user accept status is not decline. Default is TRUE.
186
-	 */
187
-	public static function sendEmailReminders(EmailReminder $emailReminder, Administration $admin, $checkDecline = true) {
179
+    /**
180
+     * Sending multiple email reminders. 
181
+     * Call in EmainReminder and use original EmailRemainder class for sending.
182
+     * 
183
+     * @param EmailReminder $emailReminder Caller EmailReminder
184
+     * @param Administration $admin Administration module for EmailRemainder->sendReminders() function
185
+     * @param boolean $checkDecline (optional) Send email if user accept status is not decline. Default is TRUE.
186
+     */
187
+    public static function sendEmailReminders(EmailReminder $emailReminder, Administration $admin, $checkDecline = true) {
188 188
         if($reminders = self::getUnsentEmailReminders()) {
189 189
             foreach($reminders as $reminderId => $reminder) {
190
-				$recipients = self::getEmailReminderInviteesRecipients($reminderId, $checkDecline);
191
-				$eventBean = BeanFactory::getBean($reminder->related_event_module, $reminder->related_event_module_id);
192
-				if ( $emailReminder->sendReminders($eventBean, $admin, $recipients) ) {
193
-					$reminder->email_sent = 1;
194
-					$reminder->save();
195
-				}
190
+                $recipients = self::getEmailReminderInviteesRecipients($reminderId, $checkDecline);
191
+                $eventBean = BeanFactory::getBean($reminder->related_event_module, $reminder->related_event_module_id);
192
+                if ( $emailReminder->sendReminders($eventBean, $admin, $recipients) ) {
193
+                    $reminder->email_sent = 1;
194
+                    $reminder->save();
195
+                }
196 196
             }
197 197
         }
198 198
     }
199 199
 	
200
-	private static function getEmailReminderInviteesRecipients($reminderId, $checkDecline = true) {
201
-		$emails = array();
202
-		$reminder = BeanFactory::getBean('Reminders', $reminderId);
203
-		$eventModule = $reminder->related_event_module;
204
-		$eventModuleId = $reminder->related_event_module_id;		
205
-		$event = BeanFactory::getBean($eventModule, $eventModuleId);
206
-		if(!isset($event->status) || $event->status != 'Held') {
207
-			$invitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', "reminders_invitees.reminder_id = '$reminderId'");
208
-			foreach($invitees as $invitee) {
209
-				$inviteeModule = $invitee->related_invitee_module;
210
-				$inviteeModuleId = $invitee->related_invitee_module_id;
211
-				$personBean = BeanFactory::getBean($inviteeModule, $inviteeModuleId);
212
-				// The original email reminders check the accept_status field in related users/leads/contacts etc. and filtered these users who not decline this event.
213
-				if($checkDecline && !self::isDecline($event, $personBean)) {
214
-					if ( !empty($personBean->email1) ) {
215
-						$arr = array(
216
-							'type' => $inviteeModule,
217
-							'name' => $personBean->full_name,
218
-							'email' => $personBean->email1,
219
-						);
220
-						$emails[] = $arr;
221
-					}
222
-				}
223
-			}
224
-		}
225
-		return $emails;
226
-	}	
200
+    private static function getEmailReminderInviteesRecipients($reminderId, $checkDecline = true) {
201
+        $emails = array();
202
+        $reminder = BeanFactory::getBean('Reminders', $reminderId);
203
+        $eventModule = $reminder->related_event_module;
204
+        $eventModuleId = $reminder->related_event_module_id;		
205
+        $event = BeanFactory::getBean($eventModule, $eventModuleId);
206
+        if(!isset($event->status) || $event->status != 'Held') {
207
+            $invitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', "reminders_invitees.reminder_id = '$reminderId'");
208
+            foreach($invitees as $invitee) {
209
+                $inviteeModule = $invitee->related_invitee_module;
210
+                $inviteeModuleId = $invitee->related_invitee_module_id;
211
+                $personBean = BeanFactory::getBean($inviteeModule, $inviteeModuleId);
212
+                // The original email reminders check the accept_status field in related users/leads/contacts etc. and filtered these users who not decline this event.
213
+                if($checkDecline && !self::isDecline($event, $personBean)) {
214
+                    if ( !empty($personBean->email1) ) {
215
+                        $arr = array(
216
+                            'type' => $inviteeModule,
217
+                            'name' => $personBean->full_name,
218
+                            'email' => $personBean->email1,
219
+                        );
220
+                        $emails[] = $arr;
221
+                    }
222
+                }
223
+            }
224
+        }
225
+        return $emails;
226
+    }	
227 227
 
228 228
     private static function getUnsentEmailReminders() {
229 229
         global $db;
230
-		$reminders = array();
231
-		$reminderBeans = BeanFactory::getBean('Reminders')->get_full_list('', "reminders.email = 1 AND reminders.email_sent = 0");
232
-		foreach($reminderBeans as $reminderBean) {
233
-			$eventBean = BeanFactory::getBean($reminderBean->related_event_module, $reminderBean->related_event_module_id);
234
-			$dateStart = $eventBean->date_start;
235
-			$time = strtotime($db->fromConvert($dateStart,'datetime'));
236
-			$dateStart = date(TimeDate::DB_DATETIME_FORMAT, $time);
237
-			$remind_ts = $GLOBALS['timedate']->fromDb($db->fromConvert($dateStart,'datetime'))->modify("-{$reminderBean->timer_email} seconds")->ts;
230
+        $reminders = array();
231
+        $reminderBeans = BeanFactory::getBean('Reminders')->get_full_list('', "reminders.email = 1 AND reminders.email_sent = 0");
232
+        foreach($reminderBeans as $reminderBean) {
233
+            $eventBean = BeanFactory::getBean($reminderBean->related_event_module, $reminderBean->related_event_module_id);
234
+            $dateStart = $eventBean->date_start;
235
+            $time = strtotime($db->fromConvert($dateStart,'datetime'));
236
+            $dateStart = date(TimeDate::DB_DATETIME_FORMAT, $time);
237
+            $remind_ts = $GLOBALS['timedate']->fromDb($db->fromConvert($dateStart,'datetime'))->modify("-{$reminderBean->timer_email} seconds")->ts;
238 238
             $now_ts = $GLOBALS['timedate']->getNow()->ts;
239 239
             if ( $now_ts >= $remind_ts ) {
240 240
                 $reminders[$reminderBean->id] = $reminderBean;
241 241
             }
242
-		}
242
+        }
243 243
         return $reminders;
244 244
     }
245 245
 	
246
-	// ---- popup and alert reminders
246
+    // ---- popup and alert reminders
247 247
 	
248
-	/**
249
-	 * Show a popup and/or desktop notification alert for related users with related Event information.
250
-	 * Call in jsAlerts class and use original jsAlerts for show notifications.
251
-	 * 
252
-	 * @global ??? $current_user
253
-	 * @global ??? $timedate
254
-	 * @global ??? $app_list_strings
255
-	 * @global ??? $db
256
-	 * @global ??? $sugar_config
257
-	 * @global ??? $app_strings
258
-	 * @param jsAlerts $alert caller jsAlerts object
259
-	 * @param boolean $checkDecline (optional) Send email if user accept status is not decline. Default is TRUE.
260
-	 * @return ???
261
-	 */
262
-	public static function addNotifications(jsAlerts $alert, $checkDecline = true) {
263
-		global $current_user, $timedate, $app_list_strings, $db, $sugar_config, $app_strings;
264
-
265
-		if (empty($current_user->id)) {
248
+    /**
249
+     * Show a popup and/or desktop notification alert for related users with related Event information.
250
+     * Call in jsAlerts class and use original jsAlerts for show notifications.
251
+     * 
252
+     * @global ??? $current_user
253
+     * @global ??? $timedate
254
+     * @global ??? $app_list_strings
255
+     * @global ??? $db
256
+     * @global ??? $sugar_config
257
+     * @global ??? $app_strings
258
+     * @param jsAlerts $alert caller jsAlerts object
259
+     * @param boolean $checkDecline (optional) Send email if user accept status is not decline. Default is TRUE.
260
+     * @return ???
261
+     */
262
+    public static function addNotifications(jsAlerts $alert, $checkDecline = true) {
263
+        global $current_user, $timedate, $app_list_strings, $db, $sugar_config, $app_strings;
264
+
265
+        if (empty($current_user->id)) {
266 266
             return;
267
-		}
267
+        }
268 268
 		
269
-		//Create separate variable to hold timedate value
269
+        //Create separate variable to hold timedate value
270 270
         $alertDateTimeNow = $timedate->nowDb();
271 271
 
272
-		// cn: get a boundary limiter
273
-		$dateTimeMax = $timedate->getNow()->modify("+{$app_list_strings['reminder_max_time']} seconds")->asDb();
274
-		$dateTimeNow = $timedate->nowDb();
272
+        // cn: get a boundary limiter
273
+        $dateTimeMax = $timedate->getNow()->modify("+{$app_list_strings['reminder_max_time']} seconds")->asDb();
274
+        $dateTimeNow = $timedate->nowDb();
275 275
 
276
-		$dateTimeNow = $db->convert($db->quoted($dateTimeNow), 'datetime');
277
-		$dateTimeMax = $db->convert($db->quoted($dateTimeMax), 'datetime');
276
+        $dateTimeNow = $db->convert($db->quoted($dateTimeNow), 'datetime');
277
+        $dateTimeMax = $db->convert($db->quoted($dateTimeMax), 'datetime');
278 278
 		
279
-		// Original jsAlert used to a meeting integration.
279
+        // Original jsAlert used to a meeting integration.
280 280
 		
281
-		///////////////////////////////////////////////////////////////////////
282
-		////	MEETING INTEGRATION
283
-		$meetingIntegration = null;
284
-		if(isset($sugar_config['meeting_integration']) && !empty($sugar_config['meeting_integration'])) {
285
-			if(!class_exists($sugar_config['meeting_integration'])) {
286
-				require_once("modules/{$sugar_config['meeting_integration']}/{$sugar_config['meeting_integration']}.php");
287
-			}
288
-			$meetingIntegration = new $sugar_config['meeting_integration']();
289
-		}
290
-		////	END MEETING INTEGRATION
291
-		///////////////////////////////////////////////////////////////////////
281
+        ///////////////////////////////////////////////////////////////////////
282
+        ////	MEETING INTEGRATION
283
+        $meetingIntegration = null;
284
+        if(isset($sugar_config['meeting_integration']) && !empty($sugar_config['meeting_integration'])) {
285
+            if(!class_exists($sugar_config['meeting_integration'])) {
286
+                require_once("modules/{$sugar_config['meeting_integration']}/{$sugar_config['meeting_integration']}.php");
287
+            }
288
+            $meetingIntegration = new $sugar_config['meeting_integration']();
289
+        }
290
+        ////	END MEETING INTEGRATION
291
+        ///////////////////////////////////////////////////////////////////////
292 292
 		
293
-		$popupReminders = BeanFactory::getBean('Reminders')->get_full_list('', "reminders.popup = 1");
294
-
295
-		if($popupReminders) {
296
-			foreach($popupReminders as $popupReminder) {
297
-				$relatedEvent = BeanFactory::getBean($popupReminder->related_event_module, $popupReminder->related_event_module_id);
298
-				if( $relatedEvent &&
299
-					(!isset($relatedEvent->status) || $relatedEvent->status == 'Planned') &&
300
-					(!isset($relatedEvent->date_start) || (strtotime($relatedEvent->date_start) >= strtotime(self::unQuoteTime($dateTimeNow)) && strtotime($relatedEvent->date_start) <= strtotime(self::unQuoteTime($dateTimeMax))) ) &&
301
-					(!$checkDecline || ($checkDecline && !self::isDecline($relatedEvent, BeanFactory::getBean('Users', $current_user->id))))
302
-				) {
303
-					// The original popup/alert reminders check the accept_status field in related users/leads/contacts etc. and filtered these users who not decline this event.
304
-					$invitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', "reminders_invitees.reminder_id = '{$popupReminder->id}' AND reminders_invitees.related_invitee_module_id = '{$current_user->id}'");
305
-					if($invitees) {
306
-						foreach($invitees as $invitee) {
307
-							// need to concatenate since GMT times can bridge two local days
308
-							$timeStart = strtotime($db->fromConvert(isset($relatedEvent->date_start) ? $relatedEvent->date_start : date(TimeDate::DB_DATETIME_FORMAT), 'datetime'));
309
-							$timeRemind = $popupReminder->timer_popup;
310
-							$timeStart -= $timeRemind;
311
-
312
-							$url = 'index.php?action=DetailView&module=' . $popupReminder->related_event_module . '&record=' . $popupReminder->related_event_module_id;
313
-							$instructions = $app_strings['MSG_JS_ALERT_MTG_REMINDER_MEETING_MSG'];
314
-
315
-							if($popupReminder->related_event_module == 'Meetings') {
316
-								///////////////////////////////////////////////////////////////////
317
-								////	MEETING INTEGRATION
318
-								if(!empty($meetingIntegration) && $meetingIntegration->isIntegratedMeeting($popupReminder->related_event_module_id)) {
319
-									$url = $meetingIntegration->miUrlGetJsAlert((array) $popupReminder);
320
-									$instructions = $meetingIntegration->miGetJsAlertInstructions();
321
-								}
322
-								////	END MEETING INTEGRATION
323
-								///////////////////////////////////////////////////////////////////								
324
-							}
293
+        $popupReminders = BeanFactory::getBean('Reminders')->get_full_list('', "reminders.popup = 1");
294
+
295
+        if($popupReminders) {
296
+            foreach($popupReminders as $popupReminder) {
297
+                $relatedEvent = BeanFactory::getBean($popupReminder->related_event_module, $popupReminder->related_event_module_id);
298
+                if( $relatedEvent &&
299
+                    (!isset($relatedEvent->status) || $relatedEvent->status == 'Planned') &&
300
+                    (!isset($relatedEvent->date_start) || (strtotime($relatedEvent->date_start) >= strtotime(self::unQuoteTime($dateTimeNow)) && strtotime($relatedEvent->date_start) <= strtotime(self::unQuoteTime($dateTimeMax))) ) &&
301
+                    (!$checkDecline || ($checkDecline && !self::isDecline($relatedEvent, BeanFactory::getBean('Users', $current_user->id))))
302
+                ) {
303
+                    // The original popup/alert reminders check the accept_status field in related users/leads/contacts etc. and filtered these users who not decline this event.
304
+                    $invitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', "reminders_invitees.reminder_id = '{$popupReminder->id}' AND reminders_invitees.related_invitee_module_id = '{$current_user->id}'");
305
+                    if($invitees) {
306
+                        foreach($invitees as $invitee) {
307
+                            // need to concatenate since GMT times can bridge two local days
308
+                            $timeStart = strtotime($db->fromConvert(isset($relatedEvent->date_start) ? $relatedEvent->date_start : date(TimeDate::DB_DATETIME_FORMAT), 'datetime'));
309
+                            $timeRemind = $popupReminder->timer_popup;
310
+                            $timeStart -= $timeRemind;
311
+
312
+                            $url = 'index.php?action=DetailView&module=' . $popupReminder->related_event_module . '&record=' . $popupReminder->related_event_module_id;
313
+                            $instructions = $app_strings['MSG_JS_ALERT_MTG_REMINDER_MEETING_MSG'];
314
+
315
+                            if($popupReminder->related_event_module == 'Meetings') {
316
+                                ///////////////////////////////////////////////////////////////////
317
+                                ////	MEETING INTEGRATION
318
+                                if(!empty($meetingIntegration) && $meetingIntegration->isIntegratedMeeting($popupReminder->related_event_module_id)) {
319
+                                    $url = $meetingIntegration->miUrlGetJsAlert((array) $popupReminder);
320
+                                    $instructions = $meetingIntegration->miGetJsAlertInstructions();
321
+                                }
322
+                                ////	END MEETING INTEGRATION
323
+                                ///////////////////////////////////////////////////////////////////								
324
+                            }
325 325
 							
326
-							$meetingName = from_html(isset($relatedEvent->name) ? $relatedEvent->name : $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_EVENT_NAME']);
327
-							$desc1 = from_html(isset($relatedEvent->description) ? $relatedEvent->description : $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_DESCRIPTION']);
328
-							$location = from_html(isset($relatedEvent->location) ? $relatedEvent->location : $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_LOCATION']);
326
+                            $meetingName = from_html(isset($relatedEvent->name) ? $relatedEvent->name : $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_EVENT_NAME']);
327
+                            $desc1 = from_html(isset($relatedEvent->description) ? $relatedEvent->description : $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_DESCRIPTION']);
328
+                            $location = from_html(isset($relatedEvent->location) ? $relatedEvent->location : $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_LOCATION']);
329 329
 							
330
-							$relatedToMeeting = $alert->getRelatedName($popupReminder->related_event_module, $popupReminder->related_event_module_id);
330
+                            $relatedToMeeting = $alert->getRelatedName($popupReminder->related_event_module, $popupReminder->related_event_module_id);
331 331
 							
332
-							$description = empty($desc1) ? '' : $app_strings['MSG_JS_ALERT_MTG_REMINDER_AGENDA'].$desc1."\n";
333
-							$description = $description  ."\n" .$app_strings['MSG_JS_ALERT_MTG_REMINDER_STATUS'] . (isset($relatedEvent->status) ? $relatedEvent->status : '') ."\n". $app_strings['MSG_JS_ALERT_MTG_REMINDER_RELATED_TO']. $relatedToMeeting;
334
-
335
-
336
-							if(isset($relatedEvent->date_start)) {
337
-								$time_dbFromConvert = $db->fromConvert($relatedEvent->date_start, 'datetime');
338
-								$time = $timedate->to_display_date_time($time_dbFromConvert);
339
-								if(!$time) {
340
-									$time = $relatedEvent->date_start;
341
-								}
342
-								if(!$time) {
343
-									$time = $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_START_DATE'];
344
-								}
345
-							}
346
-							else {
347
-								$time = $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_START_DATE'];
348
-							}
349
-
350
-							// standard functionality
351
-							$alert->addAlert($app_strings['MSG_JS_ALERT_MTG_REMINDER_MEETING'], $meetingName,
352
-								$app_strings['MSG_JS_ALERT_MTG_REMINDER_TIME'].$time,
353
-								$app_strings['MSG_JS_ALERT_MTG_REMINDER_LOC'].$location.
354
-								$description.
355
-								$instructions,
356
-								$timeStart - strtotime($alertDateTimeNow),
357
-								$url
358
-							);
359
-						}
360
-					}
361
-				}
362
-			}
363
-		}
364
-	}
365
-
366
-	private static function unQuoteTime($timestr) {
367
-		$ret = '';
368
-		for($i=0; $i<strlen($timestr); $i++) {
369
-			if($timestr[$i]!="'") $ret .= $timestr[$i];
370
-		}
371
-		return $ret;
372
-	}
332
+                            $description = empty($desc1) ? '' : $app_strings['MSG_JS_ALERT_MTG_REMINDER_AGENDA'].$desc1."\n";
333
+                            $description = $description  ."\n" .$app_strings['MSG_JS_ALERT_MTG_REMINDER_STATUS'] . (isset($relatedEvent->status) ? $relatedEvent->status : '') ."\n". $app_strings['MSG_JS_ALERT_MTG_REMINDER_RELATED_TO']. $relatedToMeeting;
334
+
335
+
336
+                            if(isset($relatedEvent->date_start)) {
337
+                                $time_dbFromConvert = $db->fromConvert($relatedEvent->date_start, 'datetime');
338
+                                $time = $timedate->to_display_date_time($time_dbFromConvert);
339
+                                if(!$time) {
340
+                                    $time = $relatedEvent->date_start;
341
+                                }
342
+                                if(!$time) {
343
+                                    $time = $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_START_DATE'];
344
+                                }
345
+                            }
346
+                            else {
347
+                                $time = $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_START_DATE'];
348
+                            }
349
+
350
+                            // standard functionality
351
+                            $alert->addAlert($app_strings['MSG_JS_ALERT_MTG_REMINDER_MEETING'], $meetingName,
352
+                                $app_strings['MSG_JS_ALERT_MTG_REMINDER_TIME'].$time,
353
+                                $app_strings['MSG_JS_ALERT_MTG_REMINDER_LOC'].$location.
354
+                                $description.
355
+                                $instructions,
356
+                                $timeStart - strtotime($alertDateTimeNow),
357
+                                $url
358
+                            );
359
+                        }
360
+                    }
361
+                }
362
+            }
363
+        }
364
+    }
365
+
366
+    private static function unQuoteTime($timestr) {
367
+        $ret = '';
368
+        for($i=0; $i<strlen($timestr); $i++) {
369
+            if($timestr[$i]!="'") $ret .= $timestr[$i];
370
+        }
371
+        return $ret;
372
+    }
373 373
 	
374
-	// --- test for accept status decline is?
374
+    // --- test for accept status decline is?
375 375
 	
376
-	private static function isDecline(SugarBean $event, SugarBean $person) {
377
-		return self::testEventPersonAcceptStatus($event, $person, 'decline');
378
-	}
376
+    private static function isDecline(SugarBean $event, SugarBean $person) {
377
+        return self::testEventPersonAcceptStatus($event, $person, 'decline');
378
+    }
379 379
 	
380
-	private static function testEventPersonAcceptStatus(SugarBean $event, SugarBean $person, $acceptStatus = 'decline') {
381
-		if($acceptStats = self::getEventPersonAcceptStatus($event, $person)) {
382
-			$acceptStatusLower = strtolower($acceptStatus);
383
-			foreach((array) $acceptStats as $acceptStat) {
384
-				if(strtolower($acceptStat) == $acceptStatusLower) {
385
-					return true;
386
-				}
387
-			}
388
-		}
389
-		return false;
390
-	}
380
+    private static function testEventPersonAcceptStatus(SugarBean $event, SugarBean $person, $acceptStatus = 'decline') {
381
+        if($acceptStats = self::getEventPersonAcceptStatus($event, $person)) {
382
+            $acceptStatusLower = strtolower($acceptStatus);
383
+            foreach((array) $acceptStats as $acceptStat) {
384
+                if(strtolower($acceptStat) == $acceptStatusLower) {
385
+                    return true;
386
+                }
387
+            }
388
+        }
389
+        return false;
390
+    }
391 391
 	
392
-	private static function getEventPersonAcceptStatus(SugarBean $event, SugarBean $person) {
393
-		global $db;
394
-		$rel_person_table_Key = "rel_{$person->table_name}_table";
395
-		$rel_person_table_Value = "{$event->table_name}_{$person->table_name}";
396
-		if(isset($event->$rel_person_table_Key) && $event->$rel_person_table_Key == $rel_person_table_Value) {
397
-			$query = self::getEventPersonQuery($event, $person);
398
-			$re = $db->query($query);
399
-			$ret = array();
400
-			while($row = $db->fetchByAssoc($re) ) {
401
-				if(!isset($row['accept_status'])) {
402
-					return null;
403
-				}
404
-				$ret[] = $row['accept_status'];
405
-			}
406
-			return $ret;
407
-		}
408
-		return null;
409
-	}
410
-
411
-	private function upgradeEventPersonQuery(SugarBean $event, $person_table) {
412
-		$eventIdField = strtolower($event->object_name).'_id';
413
-		$query = "
392
+    private static function getEventPersonAcceptStatus(SugarBean $event, SugarBean $person) {
393
+        global $db;
394
+        $rel_person_table_Key = "rel_{$person->table_name}_table";
395
+        $rel_person_table_Value = "{$event->table_name}_{$person->table_name}";
396
+        if(isset($event->$rel_person_table_Key) && $event->$rel_person_table_Key == $rel_person_table_Value) {
397
+            $query = self::getEventPersonQuery($event, $person);
398
+            $re = $db->query($query);
399
+            $ret = array();
400
+            while($row = $db->fetchByAssoc($re) ) {
401
+                if(!isset($row['accept_status'])) {
402
+                    return null;
403
+                }
404
+                $ret[] = $row['accept_status'];
405
+            }
406
+            return $ret;
407
+        }
408
+        return null;
409
+    }
410
+
411
+    private function upgradeEventPersonQuery(SugarBean $event, $person_table) {
412
+        $eventIdField = strtolower($event->object_name).'_id';
413
+        $query = "
414 414
 			SELECT * FROM {$event->table_name}_{$person_table}
415 415
 			WHERE
416 416
 				{$eventIdField} = '{$event->id}' AND
417 417
 				deleted = 0
418 418
 		";
419
-		return $query;
420
-	}
421
-
422
-	private static function getEventPersonQuery(SugarBean $event, SugarBean $person) {
423
-		$eventIdField = array_search($event->table_name, $event->relationship_fields);
424
-		if(!$eventIdField) {
425
-			$eventIdField = strtolower($event->object_name . '_id');
426
-		}
427
-		$personIdField = strtolower($person->object_name) . '_id';
428
-		$query = "
419
+        return $query;
420
+    }
421
+
422
+    private static function getEventPersonQuery(SugarBean $event, SugarBean $person) {
423
+        $eventIdField = array_search($event->table_name, $event->relationship_fields);
424
+        if(!$eventIdField) {
425
+            $eventIdField = strtolower($event->object_name . '_id');
426
+        }
427
+        $personIdField = strtolower($person->object_name) . '_id';
428
+        $query = "
429 429
 			SELECT * FROM {$event->table_name}_{$person->table_name}
430 430
 			WHERE
431 431
 				{$eventIdField} = '{$event->id}' AND
432 432
 				{$personIdField} = '{$person->id}' AND
433 433
 				deleted = 0
434 434
 		";
435
-		return $query;
436
-	}
435
+        return $query;
436
+    }
437 437
 	
438
-	// --- user preferences as default values in reminders
439
-
440
-	/**
441
-	 * Default values for Reminders from User Preferences
442
-	 * @return string JSON encoded default values
443
-	 * @throws Exception on json_encode error
444
-	 */
445
-	public static function loadRemindersDefaultValuesDataJson() {
446
-		$ret = json_encode(self::loadRemindersDefaultValuesData());
447
-		if(!$ret && json_last_error()) {
438
+    // --- user preferences as default values in reminders
439
+
440
+    /**
441
+     * Default values for Reminders from User Preferences
442
+     * @return string JSON encoded default values
443
+     * @throws Exception on json_encode error
444
+     */
445
+    public static function loadRemindersDefaultValuesDataJson() {
446
+        $ret = json_encode(self::loadRemindersDefaultValuesData());
447
+        if(!$ret && json_last_error()) {
448 448
             throw new Exception(json_last_error_msg());
449 449
         }
450
-		return $ret;
451
-	}
450
+        return $ret;
451
+    }
452 452
 
453
-	/**
454
-	 * Default values for Reminders from User Preferences
455
-	 * @return array default values
456
-	 */
457
-	public static function loadRemindersDefaultValuesData() {
458
-		global $current_user;
459
-
460
-		$preferencePopupReminderTime = $current_user->getPreference('reminder_time');
461
-		$preferenceEmailReminderTime = $current_user->getPreference('email_reminder_time');
462
-		$preferencePopupReminderChecked = $current_user->getPreference('reminder_checked');
463
-		$preferenceEmailReminderChecked = $current_user->getPreference('email_reminder_checked');
464
-
465
-		return array(
466
-			'popup' => $preferencePopupReminderChecked,
467
-			'email' => $preferenceEmailReminderChecked,
468
-			'timer_popup' => $preferencePopupReminderTime,
469
-			'timer_email' => $preferenceEmailReminderTime,
470
-		);
471
-	}
472
-
473
-	// --- upgrade
474
-
475
-	/**
476
-	 * Reminders upgrade, old reminders migrate to multiple-reminders.
477
-	 * @throws Exception unknown event type or any error
478
-	 */
479
-	public static function upgrade() {
480
-		self::upgradeUserPreferences();
481
-		self::upgradeEventReminders('Calls');
482
-		self::upgradeEventReminders('Meetings');
483
-		self::upgradeRestoreReminders();
484
-	}
485
-
486
-	private static function upgradeRestoreReminders() {
487
-		if($reminders = BeanFactory::getBean('Reminders')->get_full_list('', 'reminders.deleted = 1')) {
488
-			foreach($reminders as $reminder) {
489
-				$reminder->deleted = 0;
490
-				$reminder->save();
491
-			}
492
-		}
493
-		if($reminderInvitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', 'reminders_invitees.deleted = 1')) {
494
-			foreach($reminderInvitees as $invitee) {
495
-				$invitee->deleted = 0;
496
-				$invitee->save();
497
-			}
498
-		}
499
-		global $db;
500
-		$q = "UPDATE reminders SET deleted = 0";
501
-		$db->query($q);
502
-		$q = "UPDATE reminders_invitees SET deleted = 0";
503
-		$db->query($q);
504
-	}
505
-
506
-	private static function upgradeUserPreferences() {
507
-		$users = User::getActiveUsers();
508
-		foreach($users as $user_id => $user_name) {
509
-			$user = new User();
510
-			$user->retrieve($user_id);
511
-
512
-			$preferencePopupReminderTime = $user->getPreference('reminder_time');
513
-			$preferenceEmailReminderTime = $user->getPreference('email_reminder_time');
514
-
515
-			$preferencePopupReminderChecked = $preferencePopupReminderTime > -1;
516
-			$preferenceEmailReminderChecked = $preferenceEmailReminderTime > -1;
517
-			$user->setPreference('reminder_checked', $preferencePopupReminderChecked);
518
-			$user->setPreference('email_reminder_checked', $preferenceEmailReminderChecked);
519
-
520
-		}
521
-	}
522
-
523
-	/**
524
-	 * @param string $eventModule 'Calls' or 'Meetings'
525
-	 */
526
-	private static function upgradeEventReminders($eventModule) {
527
-
528
-		$eventBean = BeanFactory::getBean($eventModule);
529
-		$events = BeanFactory::getBean($eventModule)->get_full_list('', "{$eventBean->table_name}.date_start >  '2015-11-01 00:00:00' AND ({$eventBean->table_name}.reminder_time != -1 OR ({$eventBean->table_name}.email_reminder_time != -1 AND {$eventBean->table_name}.email_reminder_sent != 1))");
530
-		if ($events) {
531
-			foreach ($events as $event) {
532
-
533
-				$oldReminderPopupChecked = false;
534
-				$oldReminderPopupTimer = null;
535
-				if ($event->reminder_time != -1) {
536
-					$oldReminderPopupChecked = true;
537
-					$oldReminderPopupTimer = $event->reminder_time;
538
-				}
539
-
540
-				$oldReminderEmailChecked = false;
541
-				$oldReminderEmailTimer = null;
542
-				if ($event->email_reminder_time != -1) {
543
-					$oldReminderEmailChecked = true;
544
-					$oldReminderEmailTimer = $event->email_reminder_time;
545
-				}
546
-
547
-				$oldReminderEmailSent = $event->email_reminder_sent;
548
-
549
-				if( ($oldInvitees = self::getOldEventInvitees($event)) && ($event->reminder_time != -1 || ($event->email_reminder_time != -1 && $event->email_reminder_sent != 1)) ) {
550
-
551
-					self::migrateReminder(
552
-							$eventModule,
553
-							$event->id,
554
-							$oldReminderPopupChecked,
555
-							$oldReminderPopupTimer,
556
-							$oldReminderEmailChecked,
557
-							$oldReminderEmailTimer,
558
-							$oldReminderEmailSent,
559
-							$oldInvitees
560
-					);
561
-
562
-				}
563
-			}
564
-		}
565
-
566
-	}
567
-
568
-
569
-	private static function getOldEventInvitees(SugarBean $event) {
570
-		global $db;
571
-		$ret = array();
572
-		$persons = array('users','contacts','leads');
573
-		foreach($persons as $person){
574
-			$query = self::upgradeEventPersonQuery($event, $person);
575
-			$re = $db->query($query);
576
-			while($row = $db->fetchByAssoc($re) ) {
577
-				$ret[] = $row;
578
-			}
579
-		}
580
-		return $ret;
581
-	}
582
-
583
-	/**
584
-	 * @param string	$eventModule 'Calls' or 'Meetings'
585
-	 * @param string	$eventModuleId
586
-	 * @param bool		$oldReminderPopupChecked
587
-	 * @param int		$oldReminderPopupTimer
588
-	 * @param bool		$oldReminderEmailChecked
589
-	 * @param int		$oldReminderEmailTimer
590
-	 * @param array		$oldInvitees
591
-	 */
592
-	private static function migrateReminder($eventModule, $eventModuleId, $oldReminderPopupChecked, $oldReminderPopupTimer, $oldReminderEmailChecked, $oldReminderEmailTimer, $oldReminderEmailSent, $oldInvitees) {
593
-
594
-		$reminder = BeanFactory::getBean('Reminders');
595
-		$reminder->popup = $oldReminderPopupChecked;
596
-		$reminder->email = $oldReminderEmailChecked;
597
-		$reminder->email_sent = $oldReminderEmailSent;
598
-		$reminder->timer_popup = $oldReminderPopupTimer;
599
-		$reminder->timer_email = $oldReminderEmailTimer;
600
-		$reminder->related_event_module = $eventModule;
601
-		$reminder->related_event_module_id = $eventModuleId;
602
-		$reminder->save();
603
-		$reminderId = $reminder->id;
604
-		self::migrateReminderInvitees($reminderId, $oldInvitees);
605
-
606
-		self::removeOldReminder($eventModule, $eventModuleId);
607
-	}
608
-
609
-	private static function migrateReminderInvitees($reminderId, $invitees) {
610
-		$ret = array();
611
-		foreach((array) $invitees as $invitee) {
612
-			$newInvitee = BeanFactory::getBean('Reminders_Invitees');
613
-			$newInvitee->reminder_id = $reminderId;
614
-			$newInvitee->related_invitee_module = self::getRelatedInviteeModuleFromInviteeArray($invitee);
615
-			$newInvitee->related_invitee_module_id = self::getRelatedInviteeModuleIdFromInviteeArray($invitee);
616
-			$newInvitee->save();
617
-		}
618
-		return $ret;
619
-	}
620
-
621
-	private static function getRelatedInviteeModuleFromInviteeArray($invitee) {
622
-		if(array_key_exists('user_id', $invitee)) {
623
-			return 'Users';
624
-		}
625
-		if(array_key_exists('lead_id', $invitee)) {
626
-			return 'Leads';
627
-		}
628
-		if(array_key_exists('contact_id', $invitee)) {
629
-			return 'Contacts';
630
-		}
631
-		// TODO:!!!!
632
-		throw new Exception('Unknown invitee module type');
633
-		//return null;
634
-	}
635
-
636
-	private static function getRelatedInviteeModuleIdFromInviteeArray($invitee) {
637
-		if(array_key_exists('user_id', $invitee)) {
638
-			return $invitee['user_id'];
639
-		}
640
-		if(array_key_exists('lead_id', $invitee)) {
641
-			return $invitee['lead_id'];
642
-		}
643
-		if(array_key_exists('contact_id', $invitee)) {
644
-			return $invitee['contact_id'];
645
-		}
646
-		// TODO:!!!!
647
-		throw new Exception('Unknown invitee type');
648
-		//return null;
649
-	}
650
-
651
-	/**
652
-	 * @param string	$eventModule 'Calls' or 'Meetings'
653
-	 * @param string	$eventModuleId
654
-	 */
655
-	private static function removeOldReminder($eventModule, $eventModuleId) {
656
-		$event = BeanFactory::getBean($eventModule, $eventModuleId);
657
-		$event->reminder_time = -1;
658
-		$event->email_reminder_time = -1;
659
-		$event->email_reminder_sent = 0;
660
-		$event->save();
661
-	}
662
-
663
-	// --- reminders list on detail views
664
-
665
-	/**
666
-	 * Return a list of related reminders for specified event (Calls/Meetings). Call it from DetailViews.
667
-	 * @param SugarBean $event a Call or Meeting Bean
668
-	 * @return mixed|string|void output of list (html)
669
-	 * @throws Exception on json error in Remainders
670
-	 */
671
-	public static function getRemindersListView(SugarBean $event) {
672
-		global $mod_strings, $app_list_strings;
673
-		$tpl = new Sugar_Smarty();
674
-		$tpl->assign('MOD', $mod_strings);
675
-		$tpl->assign('reminder_time_options', $app_list_strings['reminder_time_options']);
676
-		$tpl->assign('remindersData', Reminder::loadRemindersData($event->module_name, $event->id));
677
-		$tpl->assign('remindersDataJson', Reminder::loadRemindersDataJson($event->module_name, $event->id));
678
-		$tpl->assign('remindersDefaultValuesDataJson', Reminder::loadRemindersDefaultValuesDataJson());
679
-		$tpl->assign('remindersDisabled', json_encode(true));
680
-		return $tpl->fetch('modules/Reminders/tpls/reminders.tpl');
681
-	}
682
-
683
-	/*
453
+    /**
454
+     * Default values for Reminders from User Preferences
455
+     * @return array default values
456
+     */
457
+    public static function loadRemindersDefaultValuesData() {
458
+        global $current_user;
459
+
460
+        $preferencePopupReminderTime = $current_user->getPreference('reminder_time');
461
+        $preferenceEmailReminderTime = $current_user->getPreference('email_reminder_time');
462
+        $preferencePopupReminderChecked = $current_user->getPreference('reminder_checked');
463
+        $preferenceEmailReminderChecked = $current_user->getPreference('email_reminder_checked');
464
+
465
+        return array(
466
+            'popup' => $preferencePopupReminderChecked,
467
+            'email' => $preferenceEmailReminderChecked,
468
+            'timer_popup' => $preferencePopupReminderTime,
469
+            'timer_email' => $preferenceEmailReminderTime,
470
+        );
471
+    }
472
+
473
+    // --- upgrade
474
+
475
+    /**
476
+     * Reminders upgrade, old reminders migrate to multiple-reminders.
477
+     * @throws Exception unknown event type or any error
478
+     */
479
+    public static function upgrade() {
480
+        self::upgradeUserPreferences();
481
+        self::upgradeEventReminders('Calls');
482
+        self::upgradeEventReminders('Meetings');
483
+        self::upgradeRestoreReminders();
484
+    }
485
+
486
+    private static function upgradeRestoreReminders() {
487
+        if($reminders = BeanFactory::getBean('Reminders')->get_full_list('', 'reminders.deleted = 1')) {
488
+            foreach($reminders as $reminder) {
489
+                $reminder->deleted = 0;
490
+                $reminder->save();
491
+            }
492
+        }
493
+        if($reminderInvitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', 'reminders_invitees.deleted = 1')) {
494
+            foreach($reminderInvitees as $invitee) {
495
+                $invitee->deleted = 0;
496
+                $invitee->save();
497
+            }
498
+        }
499
+        global $db;
500
+        $q = "UPDATE reminders SET deleted = 0";
501
+        $db->query($q);
502
+        $q = "UPDATE reminders_invitees SET deleted = 0";
503
+        $db->query($q);
504
+    }
505
+
506
+    private static function upgradeUserPreferences() {
507
+        $users = User::getActiveUsers();
508
+        foreach($users as $user_id => $user_name) {
509
+            $user = new User();
510
+            $user->retrieve($user_id);
511
+
512
+            $preferencePopupReminderTime = $user->getPreference('reminder_time');
513
+            $preferenceEmailReminderTime = $user->getPreference('email_reminder_time');
514
+
515
+            $preferencePopupReminderChecked = $preferencePopupReminderTime > -1;
516
+            $preferenceEmailReminderChecked = $preferenceEmailReminderTime > -1;
517
+            $user->setPreference('reminder_checked', $preferencePopupReminderChecked);
518
+            $user->setPreference('email_reminder_checked', $preferenceEmailReminderChecked);
519
+
520
+        }
521
+    }
522
+
523
+    /**
524
+     * @param string $eventModule 'Calls' or 'Meetings'
525
+     */
526
+    private static function upgradeEventReminders($eventModule) {
527
+
528
+        $eventBean = BeanFactory::getBean($eventModule);
529
+        $events = BeanFactory::getBean($eventModule)->get_full_list('', "{$eventBean->table_name}.date_start >  '2015-11-01 00:00:00' AND ({$eventBean->table_name}.reminder_time != -1 OR ({$eventBean->table_name}.email_reminder_time != -1 AND {$eventBean->table_name}.email_reminder_sent != 1))");
530
+        if ($events) {
531
+            foreach ($events as $event) {
532
+
533
+                $oldReminderPopupChecked = false;
534
+                $oldReminderPopupTimer = null;
535
+                if ($event->reminder_time != -1) {
536
+                    $oldReminderPopupChecked = true;
537
+                    $oldReminderPopupTimer = $event->reminder_time;
538
+                }
539
+
540
+                $oldReminderEmailChecked = false;
541
+                $oldReminderEmailTimer = null;
542
+                if ($event->email_reminder_time != -1) {
543
+                    $oldReminderEmailChecked = true;
544
+                    $oldReminderEmailTimer = $event->email_reminder_time;
545
+                }
546
+
547
+                $oldReminderEmailSent = $event->email_reminder_sent;
548
+
549
+                if( ($oldInvitees = self::getOldEventInvitees($event)) && ($event->reminder_time != -1 || ($event->email_reminder_time != -1 && $event->email_reminder_sent != 1)) ) {
550
+
551
+                    self::migrateReminder(
552
+                            $eventModule,
553
+                            $event->id,
554
+                            $oldReminderPopupChecked,
555
+                            $oldReminderPopupTimer,
556
+                            $oldReminderEmailChecked,
557
+                            $oldReminderEmailTimer,
558
+                            $oldReminderEmailSent,
559
+                            $oldInvitees
560
+                    );
561
+
562
+                }
563
+            }
564
+        }
565
+
566
+    }
567
+
568
+
569
+    private static function getOldEventInvitees(SugarBean $event) {
570
+        global $db;
571
+        $ret = array();
572
+        $persons = array('users','contacts','leads');
573
+        foreach($persons as $person){
574
+            $query = self::upgradeEventPersonQuery($event, $person);
575
+            $re = $db->query($query);
576
+            while($row = $db->fetchByAssoc($re) ) {
577
+                $ret[] = $row;
578
+            }
579
+        }
580
+        return $ret;
581
+    }
582
+
583
+    /**
584
+     * @param string	$eventModule 'Calls' or 'Meetings'
585
+     * @param string	$eventModuleId
586
+     * @param bool		$oldReminderPopupChecked
587
+     * @param int		$oldReminderPopupTimer
588
+     * @param bool		$oldReminderEmailChecked
589
+     * @param int		$oldReminderEmailTimer
590
+     * @param array		$oldInvitees
591
+     */
592
+    private static function migrateReminder($eventModule, $eventModuleId, $oldReminderPopupChecked, $oldReminderPopupTimer, $oldReminderEmailChecked, $oldReminderEmailTimer, $oldReminderEmailSent, $oldInvitees) {
593
+
594
+        $reminder = BeanFactory::getBean('Reminders');
595
+        $reminder->popup = $oldReminderPopupChecked;
596
+        $reminder->email = $oldReminderEmailChecked;
597
+        $reminder->email_sent = $oldReminderEmailSent;
598
+        $reminder->timer_popup = $oldReminderPopupTimer;
599
+        $reminder->timer_email = $oldReminderEmailTimer;
600
+        $reminder->related_event_module = $eventModule;
601
+        $reminder->related_event_module_id = $eventModuleId;
602
+        $reminder->save();
603
+        $reminderId = $reminder->id;
604
+        self::migrateReminderInvitees($reminderId, $oldInvitees);
605
+
606
+        self::removeOldReminder($eventModule, $eventModuleId);
607
+    }
608
+
609
+    private static function migrateReminderInvitees($reminderId, $invitees) {
610
+        $ret = array();
611
+        foreach((array) $invitees as $invitee) {
612
+            $newInvitee = BeanFactory::getBean('Reminders_Invitees');
613
+            $newInvitee->reminder_id = $reminderId;
614
+            $newInvitee->related_invitee_module = self::getRelatedInviteeModuleFromInviteeArray($invitee);
615
+            $newInvitee->related_invitee_module_id = self::getRelatedInviteeModuleIdFromInviteeArray($invitee);
616
+            $newInvitee->save();
617
+        }
618
+        return $ret;
619
+    }
620
+
621
+    private static function getRelatedInviteeModuleFromInviteeArray($invitee) {
622
+        if(array_key_exists('user_id', $invitee)) {
623
+            return 'Users';
624
+        }
625
+        if(array_key_exists('lead_id', $invitee)) {
626
+            return 'Leads';
627
+        }
628
+        if(array_key_exists('contact_id', $invitee)) {
629
+            return 'Contacts';
630
+        }
631
+        // TODO:!!!!
632
+        throw new Exception('Unknown invitee module type');
633
+        //return null;
634
+    }
635
+
636
+    private static function getRelatedInviteeModuleIdFromInviteeArray($invitee) {
637
+        if(array_key_exists('user_id', $invitee)) {
638
+            return $invitee['user_id'];
639
+        }
640
+        if(array_key_exists('lead_id', $invitee)) {
641
+            return $invitee['lead_id'];
642
+        }
643
+        if(array_key_exists('contact_id', $invitee)) {
644
+            return $invitee['contact_id'];
645
+        }
646
+        // TODO:!!!!
647
+        throw new Exception('Unknown invitee type');
648
+        //return null;
649
+    }
650
+
651
+    /**
652
+     * @param string	$eventModule 'Calls' or 'Meetings'
653
+     * @param string	$eventModuleId
654
+     */
655
+    private static function removeOldReminder($eventModule, $eventModuleId) {
656
+        $event = BeanFactory::getBean($eventModule, $eventModuleId);
657
+        $event->reminder_time = -1;
658
+        $event->email_reminder_time = -1;
659
+        $event->email_reminder_sent = 0;
660
+        $event->save();
661
+    }
662
+
663
+    // --- reminders list on detail views
664
+
665
+    /**
666
+     * Return a list of related reminders for specified event (Calls/Meetings). Call it from DetailViews.
667
+     * @param SugarBean $event a Call or Meeting Bean
668
+     * @return mixed|string|void output of list (html)
669
+     * @throws Exception on json error in Remainders
670
+     */
671
+    public static function getRemindersListView(SugarBean $event) {
672
+        global $mod_strings, $app_list_strings;
673
+        $tpl = new Sugar_Smarty();
674
+        $tpl->assign('MOD', $mod_strings);
675
+        $tpl->assign('reminder_time_options', $app_list_strings['reminder_time_options']);
676
+        $tpl->assign('remindersData', Reminder::loadRemindersData($event->module_name, $event->id));
677
+        $tpl->assign('remindersDataJson', Reminder::loadRemindersDataJson($event->module_name, $event->id));
678
+        $tpl->assign('remindersDefaultValuesDataJson', Reminder::loadRemindersDefaultValuesDataJson());
679
+        $tpl->assign('remindersDisabled', json_encode(true));
680
+        return $tpl->fetch('modules/Reminders/tpls/reminders.tpl');
681
+    }
682
+
683
+    /*
684 684
 	 * @todo implenent it
685 685
 	 */
686
-	public static function getRemindersListInlineEditView(SugarBean $event) {
687
-		// TODO: getEditFieldHTML() function in InlineEditing.php:218 doesn't pass the Bean ID to this custom inline edit view function but we have to know which Bean are in the focus to editing.
688
-		if(!$event->id) {
689
-			throw new Exception("No GUID for edit.");
690
-		}
691
-	}
686
+    public static function getRemindersListInlineEditView(SugarBean $event) {
687
+        // TODO: getEditFieldHTML() function in InlineEditing.php:218 doesn't pass the Bean ID to this custom inline edit view function but we have to know which Bean are in the focus to editing.
688
+        if(!$event->id) {
689
+            throw new Exception("No GUID for edit.");
690
+        }
691
+    }
692 692
 
693 693
 }
694 694
 ?>
695 695
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +64 added lines, -64 removed lines patch added patch discarded remove patch
@@ -69,8 +69,8 @@  discard block
 block discarded – undo
69 69
         parent::Basic();
70 70
     }
71 71
 
72
-    public function bean_implements($interface){
73
-        switch($interface){
72
+    public function bean_implements($interface) {
73
+        switch ($interface) {
74 74
             case 'ACL': return true;
75 75
         }
76 76
         return false;
@@ -89,7 +89,7 @@  discard block
 block discarded – undo
89 89
 	 */
90 90
     public static function saveRemindersDataJson($eventModule, $eventModuleId, $remindersDataJson) {
91 91
         $reminderData = json_decode($remindersDataJson);
92
-        if(!json_last_error()) {
92
+        if (!json_last_error()) {
93 93
             Reminder::saveRemindersData($eventModule, $eventModuleId, $reminderData);
94 94
         }
95 95
         else {
@@ -99,8 +99,8 @@  discard block
 block discarded – undo
99 99
 	
100 100
     private static function saveRemindersData($eventModule, $eventModuleId, $remindersData) {
101 101
         $savedReminderIds = array();
102
-        foreach($remindersData as $reminderData) {
103
-			if(isset($_POST['isDuplicate']) && $_POST['isDuplicate']) $reminderData->id = '';
102
+        foreach ($remindersData as $reminderData) {
103
+			if (isset($_POST['isDuplicate']) && $_POST['isDuplicate']) $reminderData->id = '';
104 104
             $reminderBean = BeanFactory::getBean('Reminders', $reminderData->id);
105 105
             $reminderBean->popup = $reminderData->popup;
106 106
             $reminderBean->email = $reminderData->email;
@@ -114,7 +114,7 @@  discard block
 block discarded – undo
114 114
             Reminder_Invitee::saveRemindersInviteesData($reminderId, $reminderData->invitees);
115 115
         }
116 116
         $reminders = BeanFactory::getBean('Reminders')->get_full_list("", "reminders.related_event_module = '$eventModule' AND reminders.related_event_module_id = '$eventModuleId'");
117
-        if($reminders) {
117
+        if ($reminders) {
118 118
             foreach ($reminders as $reminder) {
119 119
                 if (!in_array($reminder->id, $savedReminderIds)) {
120 120
                     Reminder_Invitee::deleteRemindersInviteesMultiple($reminder->id);
@@ -138,7 +138,7 @@  discard block
 block discarded – undo
138 138
     public static function loadRemindersDataJson($eventModule, $eventModuleId, $isDuplicate = false) {
139 139
         $remindersData = self::loadRemindersData($eventModule, $eventModuleId, $isDuplicate);
140 140
         $remindersDataJson = json_encode($remindersData);
141
-        if(!$remindersDataJson && json_last_error()) {
141
+        if (!$remindersDataJson && json_last_error()) {
142 142
             throw new Exception(json_last_error_msg());
143 143
         }
144 144
         return $remindersDataJson;
@@ -154,7 +154,7 @@  discard block
 block discarded – undo
154 154
 	 * @throws Exception
155 155
 	 */
156 156
 	public static function loadRemindersData($eventModule, $eventModuleId, $isDuplicate = false) {
157
-		if(!isset(self::$remindersData[$eventModule][$eventModuleId]) || !$eventModuleId || $isDuplicate) {
157
+		if (!isset(self::$remindersData[$eventModule][$eventModuleId]) || !$eventModuleId || $isDuplicate) {
158 158
 			$ret = array();
159 159
 			$reminders = BeanFactory::getBean('Reminders')->get_full_list("reminders.date_entered", "reminders.related_event_module = '$eventModule' AND reminders.related_event_module_id = '$eventModuleId'");
160 160
 			if ($reminders) {
@@ -185,11 +185,11 @@  discard block
 block discarded – undo
185 185
 	 * @param boolean $checkDecline (optional) Send email if user accept status is not decline. Default is TRUE.
186 186
 	 */
187 187
 	public static function sendEmailReminders(EmailReminder $emailReminder, Administration $admin, $checkDecline = true) {
188
-        if($reminders = self::getUnsentEmailReminders()) {
189
-            foreach($reminders as $reminderId => $reminder) {
188
+        if ($reminders = self::getUnsentEmailReminders()) {
189
+            foreach ($reminders as $reminderId => $reminder) {
190 190
 				$recipients = self::getEmailReminderInviteesRecipients($reminderId, $checkDecline);
191 191
 				$eventBean = BeanFactory::getBean($reminder->related_event_module, $reminder->related_event_module_id);
192
-				if ( $emailReminder->sendReminders($eventBean, $admin, $recipients) ) {
192
+				if ($emailReminder->sendReminders($eventBean, $admin, $recipients)) {
193 193
 					$reminder->email_sent = 1;
194 194
 					$reminder->save();
195 195
 				}
@@ -203,15 +203,15 @@  discard block
 block discarded – undo
203 203
 		$eventModule = $reminder->related_event_module;
204 204
 		$eventModuleId = $reminder->related_event_module_id;		
205 205
 		$event = BeanFactory::getBean($eventModule, $eventModuleId);
206
-		if(!isset($event->status) || $event->status != 'Held') {
206
+		if (!isset($event->status) || $event->status != 'Held') {
207 207
 			$invitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', "reminders_invitees.reminder_id = '$reminderId'");
208
-			foreach($invitees as $invitee) {
208
+			foreach ($invitees as $invitee) {
209 209
 				$inviteeModule = $invitee->related_invitee_module;
210 210
 				$inviteeModuleId = $invitee->related_invitee_module_id;
211 211
 				$personBean = BeanFactory::getBean($inviteeModule, $inviteeModuleId);
212 212
 				// The original email reminders check the accept_status field in related users/leads/contacts etc. and filtered these users who not decline this event.
213
-				if($checkDecline && !self::isDecline($event, $personBean)) {
214
-					if ( !empty($personBean->email1) ) {
213
+				if ($checkDecline && !self::isDecline($event, $personBean)) {
214
+					if (!empty($personBean->email1)) {
215 215
 						$arr = array(
216 216
 							'type' => $inviteeModule,
217 217
 							'name' => $personBean->full_name,
@@ -229,14 +229,14 @@  discard block
 block discarded – undo
229 229
         global $db;
230 230
 		$reminders = array();
231 231
 		$reminderBeans = BeanFactory::getBean('Reminders')->get_full_list('', "reminders.email = 1 AND reminders.email_sent = 0");
232
-		foreach($reminderBeans as $reminderBean) {
232
+		foreach ($reminderBeans as $reminderBean) {
233 233
 			$eventBean = BeanFactory::getBean($reminderBean->related_event_module, $reminderBean->related_event_module_id);
234 234
 			$dateStart = $eventBean->date_start;
235
-			$time = strtotime($db->fromConvert($dateStart,'datetime'));
235
+			$time = strtotime($db->fromConvert($dateStart, 'datetime'));
236 236
 			$dateStart = date(TimeDate::DB_DATETIME_FORMAT, $time);
237
-			$remind_ts = $GLOBALS['timedate']->fromDb($db->fromConvert($dateStart,'datetime'))->modify("-{$reminderBean->timer_email} seconds")->ts;
237
+			$remind_ts = $GLOBALS['timedate']->fromDb($db->fromConvert($dateStart, 'datetime'))->modify("-{$reminderBean->timer_email} seconds")->ts;
238 238
             $now_ts = $GLOBALS['timedate']->getNow()->ts;
239
-            if ( $now_ts >= $remind_ts ) {
239
+            if ($now_ts >= $remind_ts) {
240 240
                 $reminders[$reminderBean->id] = $reminderBean;
241 241
             }
242 242
 		}
@@ -281,8 +281,8 @@  discard block
 block discarded – undo
281 281
 		///////////////////////////////////////////////////////////////////////
282 282
 		////	MEETING INTEGRATION
283 283
 		$meetingIntegration = null;
284
-		if(isset($sugar_config['meeting_integration']) && !empty($sugar_config['meeting_integration'])) {
285
-			if(!class_exists($sugar_config['meeting_integration'])) {
284
+		if (isset($sugar_config['meeting_integration']) && !empty($sugar_config['meeting_integration'])) {
285
+			if (!class_exists($sugar_config['meeting_integration'])) {
286 286
 				require_once("modules/{$sugar_config['meeting_integration']}/{$sugar_config['meeting_integration']}.php");
287 287
 			}
288 288
 			$meetingIntegration = new $sugar_config['meeting_integration']();
@@ -292,31 +292,31 @@  discard block
 block discarded – undo
292 292
 		
293 293
 		$popupReminders = BeanFactory::getBean('Reminders')->get_full_list('', "reminders.popup = 1");
294 294
 
295
-		if($popupReminders) {
296
-			foreach($popupReminders as $popupReminder) {
295
+		if ($popupReminders) {
296
+			foreach ($popupReminders as $popupReminder) {
297 297
 				$relatedEvent = BeanFactory::getBean($popupReminder->related_event_module, $popupReminder->related_event_module_id);
298
-				if( $relatedEvent &&
298
+				if ($relatedEvent &&
299 299
 					(!isset($relatedEvent->status) || $relatedEvent->status == 'Planned') &&
300
-					(!isset($relatedEvent->date_start) || (strtotime($relatedEvent->date_start) >= strtotime(self::unQuoteTime($dateTimeNow)) && strtotime($relatedEvent->date_start) <= strtotime(self::unQuoteTime($dateTimeMax))) ) &&
300
+					(!isset($relatedEvent->date_start) || (strtotime($relatedEvent->date_start) >= strtotime(self::unQuoteTime($dateTimeNow)) && strtotime($relatedEvent->date_start) <= strtotime(self::unQuoteTime($dateTimeMax)))) &&
301 301
 					(!$checkDecline || ($checkDecline && !self::isDecline($relatedEvent, BeanFactory::getBean('Users', $current_user->id))))
302 302
 				) {
303 303
 					// The original popup/alert reminders check the accept_status field in related users/leads/contacts etc. and filtered these users who not decline this event.
304 304
 					$invitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', "reminders_invitees.reminder_id = '{$popupReminder->id}' AND reminders_invitees.related_invitee_module_id = '{$current_user->id}'");
305
-					if($invitees) {
306
-						foreach($invitees as $invitee) {
305
+					if ($invitees) {
306
+						foreach ($invitees as $invitee) {
307 307
 							// need to concatenate since GMT times can bridge two local days
308 308
 							$timeStart = strtotime($db->fromConvert(isset($relatedEvent->date_start) ? $relatedEvent->date_start : date(TimeDate::DB_DATETIME_FORMAT), 'datetime'));
309 309
 							$timeRemind = $popupReminder->timer_popup;
310 310
 							$timeStart -= $timeRemind;
311 311
 
312
-							$url = 'index.php?action=DetailView&module=' . $popupReminder->related_event_module . '&record=' . $popupReminder->related_event_module_id;
312
+							$url = 'index.php?action=DetailView&module='.$popupReminder->related_event_module.'&record='.$popupReminder->related_event_module_id;
313 313
 							$instructions = $app_strings['MSG_JS_ALERT_MTG_REMINDER_MEETING_MSG'];
314 314
 
315
-							if($popupReminder->related_event_module == 'Meetings') {
315
+							if ($popupReminder->related_event_module == 'Meetings') {
316 316
 								///////////////////////////////////////////////////////////////////
317 317
 								////	MEETING INTEGRATION
318
-								if(!empty($meetingIntegration) && $meetingIntegration->isIntegratedMeeting($popupReminder->related_event_module_id)) {
319
-									$url = $meetingIntegration->miUrlGetJsAlert((array) $popupReminder);
318
+								if (!empty($meetingIntegration) && $meetingIntegration->isIntegratedMeeting($popupReminder->related_event_module_id)) {
319
+									$url = $meetingIntegration->miUrlGetJsAlert((array)$popupReminder);
320 320
 									$instructions = $meetingIntegration->miGetJsAlertInstructions();
321 321
 								}
322 322
 								////	END MEETING INTEGRATION
@@ -330,16 +330,16 @@  discard block
 block discarded – undo
330 330
 							$relatedToMeeting = $alert->getRelatedName($popupReminder->related_event_module, $popupReminder->related_event_module_id);
331 331
 							
332 332
 							$description = empty($desc1) ? '' : $app_strings['MSG_JS_ALERT_MTG_REMINDER_AGENDA'].$desc1."\n";
333
-							$description = $description  ."\n" .$app_strings['MSG_JS_ALERT_MTG_REMINDER_STATUS'] . (isset($relatedEvent->status) ? $relatedEvent->status : '') ."\n". $app_strings['MSG_JS_ALERT_MTG_REMINDER_RELATED_TO']. $relatedToMeeting;
333
+							$description = $description."\n".$app_strings['MSG_JS_ALERT_MTG_REMINDER_STATUS'].(isset($relatedEvent->status) ? $relatedEvent->status : '')."\n".$app_strings['MSG_JS_ALERT_MTG_REMINDER_RELATED_TO'].$relatedToMeeting;
334 334
 
335 335
 
336
-							if(isset($relatedEvent->date_start)) {
336
+							if (isset($relatedEvent->date_start)) {
337 337
 								$time_dbFromConvert = $db->fromConvert($relatedEvent->date_start, 'datetime');
338 338
 								$time = $timedate->to_display_date_time($time_dbFromConvert);
339
-								if(!$time) {
339
+								if (!$time) {
340 340
 									$time = $relatedEvent->date_start;
341 341
 								}
342
-								if(!$time) {
342
+								if (!$time) {
343 343
 									$time = $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_START_DATE'];
344 344
 								}
345 345
 							}
@@ -365,8 +365,8 @@  discard block
 block discarded – undo
365 365
 
366 366
 	private static function unQuoteTime($timestr) {
367 367
 		$ret = '';
368
-		for($i=0; $i<strlen($timestr); $i++) {
369
-			if($timestr[$i]!="'") $ret .= $timestr[$i];
368
+		for ($i = 0; $i < strlen($timestr); $i++) {
369
+			if ($timestr[$i] != "'") $ret .= $timestr[$i];
370 370
 		}
371 371
 		return $ret;
372 372
 	}
@@ -378,10 +378,10 @@  discard block
 block discarded – undo
378 378
 	}
379 379
 	
380 380
 	private static function testEventPersonAcceptStatus(SugarBean $event, SugarBean $person, $acceptStatus = 'decline') {
381
-		if($acceptStats = self::getEventPersonAcceptStatus($event, $person)) {
381
+		if ($acceptStats = self::getEventPersonAcceptStatus($event, $person)) {
382 382
 			$acceptStatusLower = strtolower($acceptStatus);
383
-			foreach((array) $acceptStats as $acceptStat) {
384
-				if(strtolower($acceptStat) == $acceptStatusLower) {
383
+			foreach ((array)$acceptStats as $acceptStat) {
384
+				if (strtolower($acceptStat) == $acceptStatusLower) {
385 385
 					return true;
386 386
 				}
387 387
 			}
@@ -393,12 +393,12 @@  discard block
 block discarded – undo
393 393
 		global $db;
394 394
 		$rel_person_table_Key = "rel_{$person->table_name}_table";
395 395
 		$rel_person_table_Value = "{$event->table_name}_{$person->table_name}";
396
-		if(isset($event->$rel_person_table_Key) && $event->$rel_person_table_Key == $rel_person_table_Value) {
396
+		if (isset($event->$rel_person_table_Key) && $event->$rel_person_table_Key == $rel_person_table_Value) {
397 397
 			$query = self::getEventPersonQuery($event, $person);
398 398
 			$re = $db->query($query);
399 399
 			$ret = array();
400
-			while($row = $db->fetchByAssoc($re) ) {
401
-				if(!isset($row['accept_status'])) {
400
+			while ($row = $db->fetchByAssoc($re)) {
401
+				if (!isset($row['accept_status'])) {
402 402
 					return null;
403 403
 				}
404 404
 				$ret[] = $row['accept_status'];
@@ -421,10 +421,10 @@  discard block
 block discarded – undo
421 421
 
422 422
 	private static function getEventPersonQuery(SugarBean $event, SugarBean $person) {
423 423
 		$eventIdField = array_search($event->table_name, $event->relationship_fields);
424
-		if(!$eventIdField) {
425
-			$eventIdField = strtolower($event->object_name . '_id');
424
+		if (!$eventIdField) {
425
+			$eventIdField = strtolower($event->object_name.'_id');
426 426
 		}
427
-		$personIdField = strtolower($person->object_name) . '_id';
427
+		$personIdField = strtolower($person->object_name).'_id';
428 428
 		$query = "
429 429
 			SELECT * FROM {$event->table_name}_{$person->table_name}
430 430
 			WHERE
@@ -444,7 +444,7 @@  discard block
 block discarded – undo
444 444
 	 */
445 445
 	public static function loadRemindersDefaultValuesDataJson() {
446 446
 		$ret = json_encode(self::loadRemindersDefaultValuesData());
447
-		if(!$ret && json_last_error()) {
447
+		if (!$ret && json_last_error()) {
448 448
             throw new Exception(json_last_error_msg());
449 449
         }
450 450
 		return $ret;
@@ -484,14 +484,14 @@  discard block
 block discarded – undo
484 484
 	}
485 485
 
486 486
 	private static function upgradeRestoreReminders() {
487
-		if($reminders = BeanFactory::getBean('Reminders')->get_full_list('', 'reminders.deleted = 1')) {
488
-			foreach($reminders as $reminder) {
487
+		if ($reminders = BeanFactory::getBean('Reminders')->get_full_list('', 'reminders.deleted = 1')) {
488
+			foreach ($reminders as $reminder) {
489 489
 				$reminder->deleted = 0;
490 490
 				$reminder->save();
491 491
 			}
492 492
 		}
493
-		if($reminderInvitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', 'reminders_invitees.deleted = 1')) {
494
-			foreach($reminderInvitees as $invitee) {
493
+		if ($reminderInvitees = BeanFactory::getBean('Reminders_Invitees')->get_full_list('', 'reminders_invitees.deleted = 1')) {
494
+			foreach ($reminderInvitees as $invitee) {
495 495
 				$invitee->deleted = 0;
496 496
 				$invitee->save();
497 497
 			}
@@ -505,7 +505,7 @@  discard block
 block discarded – undo
505 505
 
506 506
 	private static function upgradeUserPreferences() {
507 507
 		$users = User::getActiveUsers();
508
-		foreach($users as $user_id => $user_name) {
508
+		foreach ($users as $user_id => $user_name) {
509 509
 			$user = new User();
510 510
 			$user->retrieve($user_id);
511 511
 
@@ -546,7 +546,7 @@  discard block
 block discarded – undo
546 546
 
547 547
 				$oldReminderEmailSent = $event->email_reminder_sent;
548 548
 
549
-				if( ($oldInvitees = self::getOldEventInvitees($event)) && ($event->reminder_time != -1 || ($event->email_reminder_time != -1 && $event->email_reminder_sent != 1)) ) {
549
+				if (($oldInvitees = self::getOldEventInvitees($event)) && ($event->reminder_time != -1 || ($event->email_reminder_time != -1 && $event->email_reminder_sent != 1))) {
550 550
 
551 551
 					self::migrateReminder(
552 552
 							$eventModule,
@@ -569,11 +569,11 @@  discard block
 block discarded – undo
569 569
 	private static function getOldEventInvitees(SugarBean $event) {
570 570
 		global $db;
571 571
 		$ret = array();
572
-		$persons = array('users','contacts','leads');
573
-		foreach($persons as $person){
572
+		$persons = array('users', 'contacts', 'leads');
573
+		foreach ($persons as $person) {
574 574
 			$query = self::upgradeEventPersonQuery($event, $person);
575 575
 			$re = $db->query($query);
576
-			while($row = $db->fetchByAssoc($re) ) {
576
+			while ($row = $db->fetchByAssoc($re)) {
577 577
 				$ret[] = $row;
578 578
 			}
579 579
 		}
@@ -608,7 +608,7 @@  discard block
 block discarded – undo
608 608
 
609 609
 	private static function migrateReminderInvitees($reminderId, $invitees) {
610 610
 		$ret = array();
611
-		foreach((array) $invitees as $invitee) {
611
+		foreach ((array)$invitees as $invitee) {
612 612
 			$newInvitee = BeanFactory::getBean('Reminders_Invitees');
613 613
 			$newInvitee->reminder_id = $reminderId;
614 614
 			$newInvitee->related_invitee_module = self::getRelatedInviteeModuleFromInviteeArray($invitee);
@@ -619,13 +619,13 @@  discard block
 block discarded – undo
619 619
 	}
620 620
 
621 621
 	private static function getRelatedInviteeModuleFromInviteeArray($invitee) {
622
-		if(array_key_exists('user_id', $invitee)) {
622
+		if (array_key_exists('user_id', $invitee)) {
623 623
 			return 'Users';
624 624
 		}
625
-		if(array_key_exists('lead_id', $invitee)) {
625
+		if (array_key_exists('lead_id', $invitee)) {
626 626
 			return 'Leads';
627 627
 		}
628
-		if(array_key_exists('contact_id', $invitee)) {
628
+		if (array_key_exists('contact_id', $invitee)) {
629 629
 			return 'Contacts';
630 630
 		}
631 631
 		// TODO:!!!!
@@ -634,13 +634,13 @@  discard block
 block discarded – undo
634 634
 	}
635 635
 
636 636
 	private static function getRelatedInviteeModuleIdFromInviteeArray($invitee) {
637
-		if(array_key_exists('user_id', $invitee)) {
637
+		if (array_key_exists('user_id', $invitee)) {
638 638
 			return $invitee['user_id'];
639 639
 		}
640
-		if(array_key_exists('lead_id', $invitee)) {
640
+		if (array_key_exists('lead_id', $invitee)) {
641 641
 			return $invitee['lead_id'];
642 642
 		}
643
-		if(array_key_exists('contact_id', $invitee)) {
643
+		if (array_key_exists('contact_id', $invitee)) {
644 644
 			return $invitee['contact_id'];
645 645
 		}
646 646
 		// TODO:!!!!
@@ -685,7 +685,7 @@  discard block
 block discarded – undo
685 685
 	 */
686 686
 	public static function getRemindersListInlineEditView(SugarBean $event) {
687 687
 		// TODO: getEditFieldHTML() function in InlineEditing.php:218 doesn't pass the Bean ID to this custom inline edit view function but we have to know which Bean are in the focus to editing.
688
-		if(!$event->id) {
688
+		if (!$event->id) {
689 689
 			throw new Exception("No GUID for edit.");
690 690
 		}
691 691
 	}
Please login to merge, or discard this patch.
Braces   +8 added lines, -6 removed lines patch added patch discarded remove patch
@@ -91,8 +91,7 @@  discard block
 block discarded – undo
91 91
         $reminderData = json_decode($remindersDataJson);
92 92
         if(!json_last_error()) {
93 93
             Reminder::saveRemindersData($eventModule, $eventModuleId, $reminderData);
94
-        }
95
-        else {
94
+        } else {
96 95
             throw new Exception(json_last_error_msg());
97 96
         }
98 97
     }
@@ -100,7 +99,9 @@  discard block
 block discarded – undo
100 99
     private static function saveRemindersData($eventModule, $eventModuleId, $remindersData) {
101 100
         $savedReminderIds = array();
102 101
         foreach($remindersData as $reminderData) {
103
-			if(isset($_POST['isDuplicate']) && $_POST['isDuplicate']) $reminderData->id = '';
102
+			if(isset($_POST['isDuplicate']) && $_POST['isDuplicate']) {
103
+			    $reminderData->id = '';
104
+			}
104 105
             $reminderBean = BeanFactory::getBean('Reminders', $reminderData->id);
105 106
             $reminderBean->popup = $reminderData->popup;
106 107
             $reminderBean->email = $reminderData->email;
@@ -342,8 +343,7 @@  discard block
 block discarded – undo
342 343
 								if(!$time) {
343 344
 									$time = $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_START_DATE'];
344 345
 								}
345
-							}
346
-							else {
346
+							} else {
347 347
 								$time = $app_strings['MSG_JS_ALERT_MTG_REMINDER_NO_START_DATE'];
348 348
 							}
349 349
 
@@ -366,7 +366,9 @@  discard block
 block discarded – undo
366 366
 	private static function unQuoteTime($timestr) {
367 367
 		$ret = '';
368 368
 		for($i=0; $i<strlen($timestr); $i++) {
369
-			if($timestr[$i]!="'") $ret .= $timestr[$i];
369
+			if($timestr[$i]!="'") {
370
+			    $ret .= $timestr[$i];
371
+			}
370 372
 		}
371 373
 		return $ret;
372 374
 	}
Please login to merge, or discard this patch.
Doc Comments   +10 added lines patch added patch discarded remove patch
@@ -97,6 +97,10 @@  discard block
 block discarded – undo
97 97
         }
98 98
     }
99 99
 	
100
+    /**
101
+     * @param string $eventModule
102
+     * @param string $eventModuleId
103
+     */
100 104
     private static function saveRemindersData($eventModule, $eventModuleId, $remindersData) {
101 105
         $savedReminderIds = array();
102 106
         foreach($remindersData as $reminderData) {
@@ -408,6 +412,9 @@  discard block
 block discarded – undo
408 412
 		return null;
409 413
 	}
410 414
 
415
+	/**
416
+	 * @param string $person_table
417
+	 */
411 418
 	private function upgradeEventPersonQuery(SugarBean $event, $person_table) {
412 419
 		$eventIdField = strtolower($event->object_name).'_id';
413 420
 		$query = "
@@ -606,6 +613,9 @@  discard block
 block discarded – undo
606 613
 		self::removeOldReminder($eventModule, $eventModuleId);
607 614
 	}
608 615
 
616
+	/**
617
+	 * @param string $reminderId
618
+	 */
609 619
 	private static function migrateReminderInvitees($reminderId, $invitees) {
610 620
 		$ret = array();
611 621
 		foreach((array) $invitees as $invitee) {
Please login to merge, or discard this patch.
modules/Documents/GetLatestRevision.php 3 patches
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -45,12 +45,12 @@
 block discarded – undo
45 45
 require_once('include/formbase.php');
46 46
 if (!empty($_REQUEST['record'])) {
47 47
 
48
-	$document = new Document();
49
-	$document->retrieve($_REQUEST['record']);
50
-	if (!empty($document->document_revision_id) && !empty($_REQUEST['get_latest_for_id']))  {
51
-		$query="update linked_documents set document_revision_id='{$document->document_revision_id}', date_modified='".TimeDate::getInstance()->nowDb()."' where id ='{$_REQUEST['get_latest_for_id']}' ";
52
-		$document->db->query($query);
53
-	}	
48
+    $document = new Document();
49
+    $document->retrieve($_REQUEST['record']);
50
+    if (!empty($document->document_revision_id) && !empty($_REQUEST['get_latest_for_id']))  {
51
+        $query="update linked_documents set document_revision_id='{$document->document_revision_id}', date_modified='".TimeDate::getInstance()->nowDb()."' where id ='{$_REQUEST['get_latest_for_id']}' ";
52
+        $document->db->query($query);
53
+    }	
54 54
 }
55 55
 handleRedirect();
56 56
 ?>
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
3 3
 /*********************************************************************************
4 4
  * SugarCRM Community Edition is a customer relationship management program developed by
5 5
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
@@ -47,8 +47,8 @@  discard block
 block discarded – undo
47 47
 
48 48
 	$document = new Document();
49 49
 	$document->retrieve($_REQUEST['record']);
50
-	if (!empty($document->document_revision_id) && !empty($_REQUEST['get_latest_for_id']))  {
51
-		$query="update linked_documents set document_revision_id='{$document->document_revision_id}', date_modified='".TimeDate::getInstance()->nowDb()."' where id ='{$_REQUEST['get_latest_for_id']}' ";
50
+	if (!empty($document->document_revision_id) && !empty($_REQUEST['get_latest_for_id'])) {
51
+		$query = "update linked_documents set document_revision_id='{$document->document_revision_id}', date_modified='".TimeDate::getInstance()->nowDb()."' where id ='{$_REQUEST['get_latest_for_id']}' ";
52 52
 		$document->db->query($query);
53 53
 	}	
54 54
 }
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -1,5 +1,7 @@
 block discarded – undo
1 1
 <?php
2
-if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
2
+if(!defined('sugarEntry') || !sugarEntry) {
3
+    die('Not A Valid Entry Point');
4
+}
3 5
 /*********************************************************************************
4 6
  * SugarCRM Community Edition is a customer relationship management program developed by
5 7
  * SugarCRM, Inc. Copyright (C) 2004-2013 SugarCRM Inc.
Please login to merge, or discard this patch.