| 1 |  |  | <?php | 
            
                                                                                                            
                            
            
                                    
            
            
                | 2 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 3 |  |  | namespace App\Traits; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 4 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 5 |  |  | use DateTime; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 6 |  |  | use App\ApiKey; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 7 |  |  | use App\Model\Common\StatusSetting; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 8 |  |  | use App\Model\Common\Mailchimp\MailchimpSetting; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 9 |  |  | use Illuminate\Http\Request; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 10 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 11 |  |  | ////////////////////////////////////////////////////////////// | 
            
                                                                                                            
                            
            
                                    
            
            
                | 12 |  |  | //TRAIT FOR SAVING API STATUS AND API KEYS // | 
            
                                                                                                            
                            
            
                                    
            
            
                | 13 |  |  | //////////////////////////////////////////////////////////////// | 
            
                                                                                                            
                            
            
                                    
            
            
                | 14 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 15 |  |  | trait ApiKeySettings | 
            
                                                                                                            
                            
            
                                    
            
            
                | 16 |  |  | { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 17 |  |  |     public function licenseDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 18 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 19 |  |  |         $status = $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 20 |  |  |         $licenseApiSecret = $request->input('license_api_secret'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 21 |  |  |         $licenseApiUrl = $request->input('license_api_url'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 22 |  |  |         StatusSetting::where('id', 1)->update(['license_status'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 23 |  |  |         ApiKey::where('id', 1)->update(['license_api_secret'=>$licenseApiSecret, 'license_api_url'=>$licenseApiUrl]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 24 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 25 |  |  |         return ['message' => 'success', 'update'=>'Licensing Settings Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 26 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 27 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 28 |  |  |     //Save Auto Update status in Database | 
            
                                                                                                            
                            
            
                                    
            
            
                | 29 |  |  |     public function updateDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 30 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 31 |  |  |         $status = $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 32 |  |  |         $updateApiSecret = $request->input('update_api_secret'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 33 |  |  |         $updateApiUrl = $request->input('update_api_url'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 34 |  |  |         StatusSetting::where('id', 1)->update(['update_settings'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 35 |  |  |         ApiKey::where('id', 1)->update(['update_api_secret'=>$updateApiSecret, 'update_api_url'=>$updateApiUrl]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 36 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 37 |  |  |         return ['message' => 'success', 'update'=>'Auto Update Settings Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 38 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 39 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 40 |  |  |     /* | 
            
                                                                                                            
                            
            
                                    
            
            
                | 41 |  |  |      * Update Msg91 Details In Database | 
            
                                                                                                            
                            
            
                                    
            
            
                | 42 |  |  |      */ | 
            
                                                                                                            
                            
            
                                    
            
            
                | 43 |  |  |     public function updatemobileDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 44 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 45 |  |  |         $status = $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 46 |  |  |         $key = $request->input('msg91_auth_key'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 47 |  |  |         StatusSetting::find(1)->update(['msg91_status'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 48 |  |  |         ApiKey::find(1)->update(['msg91_auth_key'=>$key]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 49 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 50 |  |  |         return ['message' => 'success', 'update'=>'Msg91 Settings Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 51 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 52 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 53 |  |  |     /* | 
            
                                                                                                            
                            
            
                                    
            
            
                | 54 |  |  |      * Update Zoho Details In Database | 
            
                                                                                                            
                            
            
                                    
            
            
                | 55 |  |  |      */ | 
            
                                                                                                            
                            
            
                                    
            
            
                | 56 |  |  |     public function updatezohoDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 57 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 58 |  |  |         $status = $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 59 |  |  |         $key = $request->input('zoho_key'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 60 |  |  |         StatusSetting::find(1)->update(['zoho_status'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 61 |  |  |         ApiKey::find(1)->update(['zoho_api_key'=>$key]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 62 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 63 |  |  |         return ['message' => 'success', 'update'=>'Zoho Settings Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 64 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 65 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 66 |  |  |     /* | 
            
                                                                                                            
                            
            
                                    
            
            
                | 67 |  |  |      * Update Email Status In Database | 
            
                                                                                                            
                            
            
                                    
            
            
                | 68 |  |  |      */ | 
            
                                                                                                            
                            
            
                                    
            
            
                | 69 |  |  |     public function updateEmailDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 70 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 71 |  |  |         $status = $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 72 |  |  |         StatusSetting::find(1)->update(['emailverification_status'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 73 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 74 |  |  |         return ['message' => 'success', 'update'=>'Email Verification Status Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 75 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 76 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 77 |  |  |     /* | 
            
                                                                                                            
                            
            
                                    
            
            
                | 78 |  |  |     * Update Twitter Details In Database | 
            
                                                                                                            
                            
            
                                    
            
            
                | 79 |  |  |     */ | 
            
                                                                                                            
                            
            
                                    
            
            
                | 80 |  |  |     public function updatetwitterDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 81 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 82 |  |  |         $consumer_key = $request->input('consumer_key'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 83 |  |  |         $consumer_secret = $request->input('consumer_secret'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 84 |  |  |         $access_token = $request->input('access_token'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 85 |  |  |         $token_secret = $request->input('token_secret'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 86 |  |  |         $status = $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 87 |  |  |         StatusSetting::find(1)->update(['twitter_status'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 88 |  |  |         ApiKey::find(1)->update(['twitter_consumer_key'=>$consumer_key, 'twitter_consumer_secret'=>$consumer_secret, 'twitter_access_token'=>$access_token, 'access_tooken_secret'=>$token_secret]); | 
                            
                    |  |  |  | 
                                                                                        
                                                                                     | 
            
                                                                                                            
                            
            
                                    
            
            
                | 89 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 90 |  |  |         return ['message' => 'success', 'update'=>'Twitter Settings Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 91 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 92 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 93 |  |  |     /* | 
            
                                                                                                            
                            
            
                                    
            
            
                | 94 |  |  |     * Update Razorpay Details In Database | 
            
                                                                                                            
                            
            
                                    
            
            
                | 95 |  |  |     */ | 
            
                                                                                                            
                            
            
                                    
            
            
                | 96 |  |  |     public function updateRazorpayDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 97 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 98 |  |  |         $rzp_key = $request->input('rzp_key'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 99 |  |  |         $rzp_secret = $request->input('rzp_secret'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 100 |  |  |         $apilayer_key = $request->input('apilayer_key'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 101 |  |  |         $status = $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 102 |  |  |         StatusSetting::find(1)->update(['rzp_status'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 103 |  |  |         ApiKey::find(1)->update(['rzp_key'=>$rzp_key, 'rzp_secret'=>$rzp_secret, 'apilayer_key'=>$apilayer_key]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 104 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 105 |  |  |         return ['message' => 'success', 'update'=>'Razorpay Settings Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 106 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 107 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 108 |  |  |     public function updateMailchimpProductStatus(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 109 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 110 |  |  |         StatusSetting::first()->update(['mailchimp_product_status'=>$request->input('status')]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 111 |  |  |         return ['message' => 'success', 'update'=>'Mailchimp Products Group Status Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 112 |  |  |     } | 
            
                                                                                                            
                                                                
            
                                    
            
            
                | 113 |  |  |  | 
            
                                                                        
                            
            
                                    
            
            
                | 114 |  |  |     public function updateMailchimpIsPaidStatus(Request $request) | 
            
                                                                        
                            
            
                                    
            
            
                | 115 |  |  |     { | 
            
                                                                        
                            
            
                                    
            
            
                | 116 |  |  |         StatusSetting::first()->update(['mailchimp_ispaid_status'=>$request->input('status')]); | 
            
                                                                        
                            
            
                                    
            
            
                | 117 |  |  |         return ['message' => 'success', 'update'=>'Mailchimp is Paid Status Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 118 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 119 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 120 |  |  |     public function updateMailchimpDetails(Request $request) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 121 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 122 |  |  |        $chimp_auth_key =  $request->input('mailchimp_auth_key'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 123 |  |  |        $status =  $request->input('status'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 124 |  |  |        StatusSetting::find(1)->update(['mailchimp_status'=>$status]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 125 |  |  |        MailchimpSetting::find(1)->update(['api_key'=>$chimp_auth_key]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 126 |  |  |        return ['message' => 'success', 'update'=>'Mailchimp Settings Updated']; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 127 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 128 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 129 |  |  |      /** | 
            
                                                                                                            
                            
            
                                    
            
            
                | 130 |  |  |      * Get Date. | 
            
                                                                                                            
                            
            
                                    
            
            
                | 131 |  |  |      */ | 
            
                                                                                                            
                            
            
                                    
            
            
                | 132 |  |  |     public function getDate($dbdate) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 133 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 134 |  |  |         $created = new DateTime($dbdate); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 135 |  |  |         $tz = \Auth::user()->timezone()->first()->name; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 136 |  |  |         $created->setTimezone(new DateTimeZone($tz)); | 
                            
                    |  |  |  | 
                                                                                        
                                                                                     | 
            
                                                                                                            
                            
            
                                    
            
            
                | 137 |  |  |         $date = $created->format('M j, Y, g:i a '); //5th October, 2018, 11:17PM | 
            
                                                                                                            
                            
            
                                    
            
            
                | 138 |  |  |         $newDate = $date; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 139 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 140 |  |  |         return $newDate; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 141 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 142 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 143 |  |  |     public function getDateFormat($dbdate = '') | 
            
                                                                                                            
                            
            
                                    
            
            
                | 144 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 145 |  |  |         $created = new DateTime($dbdate); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 146 |  |  |         $tz = \Auth::user()->timezone()->first()->name; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 147 |  |  |         $created->setTimezone(new DateTimeZone($tz)); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 148 |  |  |         $date = $created->format('Y-m-d H:m:i'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 149 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 150 |  |  |         return $date; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 151 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 152 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 153 |  |  |     public function saveConditions() | 
            
                                                                                                            
                            
            
                                    
            
            
                | 154 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 155 |  |  |         if (\Input::get('expiry-commands') && \Input::get('activity-commands')) { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 156 |  |  |             $expiry_commands = \Input::get('expiry-commands'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 157 |  |  |             $expiry_dailyAt = \Input::get('expiry-dailyAt'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 158 |  |  |             $activity_commands = \Input::get('activity-commands'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 159 |  |  |             $activity_dailyAt = \Input::get('activity-dailyAt'); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 160 |  |  |             $activity_command = $this->getCommand($activity_commands, $activity_dailyAt); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 161 |  |  |             $expiry_command = $this->getCommand($expiry_commands, $expiry_dailyAt); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 162 |  |  |             $jobs = ['expiryMail' => $expiry_command, 'deleteLogs' =>  $activity_command]; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 163 |  |  |             $this->storeCommand($jobs); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 164 |  |  |         } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 165 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 166 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 167 |  |  |     public function getCommand($command, $daily_at) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 168 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 169 |  |  |         if ($command == 'dailyAt') { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 170 |  |  |             $command = "dailyAt,$daily_at"; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 171 |  |  |         } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 172 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 173 |  |  |         return $command; | 
            
                                                                                                            
                            
            
                                    
            
            
                | 174 |  |  |     } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 175 |  |  |  | 
            
                                                                                                            
                            
            
                                    
            
            
                | 176 |  |  |     public function storeCommand($array = []) | 
            
                                                                                                            
                            
            
                                    
            
            
                | 177 |  |  |     { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 178 |  |  |         $command = new \App\Model\Mailjob\Condition(); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 179 |  |  |         $commands = $command->get(); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 180 |  |  |         if ($commands->count() > 0) { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 181 |  |  |             foreach ($commands as $condition) { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 182 |  |  |                 $condition->delete(); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 183 |  |  |             } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 184 |  |  |         } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 185 |  |  |         if (count($array) > 0) { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 186 |  |  |             foreach ($array as $key => $save) { | 
            
                                                                                                            
                            
            
                                    
            
            
                | 187 |  |  |                 $command->create([ | 
            
                                                                                                            
                            
            
                                    
            
            
                | 188 |  |  |                     'job'   => $key, | 
            
                                                                                                            
                            
            
                                    
            
            
                | 189 |  |  |                     'value' => $save, | 
            
                                                                                                            
                            
            
                                    
            
            
                | 190 |  |  |                 ]); | 
            
                                                                                                            
                            
            
                                    
            
            
                | 191 |  |  |             } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 192 |  |  |         } | 
            
                                                                                                            
                            
            
                                    
            
            
                | 193 |  |  |     } | 
            
                                                                                                            
                                                                
            
                                    
            
            
                | 194 |  |  | } | 
            
                                                        
            
                                    
            
            
                | 195 |  |  |  | 
            
                        
Overly long lines are hard to read on any screen. Most code styles therefor impose a maximum limit on the number of characters in a line.