public function generateTabsForAutoLoad (){ if ( $_SESSION['tabs_to_auto_load']['client_service_level_settings']) { $client_id_to_rewiev = intval($_SESSION['tabs_to_auto_load']['client_service_level_settings']['client_id']); $client = Clients::model()->with('service_settings', 'service_payments','company')->findByPk($client_id_to_rewiev); if ($client) { $serviceLevels = ServiceLevelSettings::getServiceLevelsOptionsList(); $settings = $client->service_settings; $items = ServiceLevelSettings::getServiceLevelsOptionsList(); $summary_sl_settings = ServiceLevelSettings::getSummarySettings($client_id_to_rewiev); $dcss = DelayedClientServiceSettings::model()->findByPk($client_id_to_rewiev); $pending_client_service_settings = PendingClientServiceSettings::model()->findByAttributes(array( 'Client_ID'=> $client->Client_ID, 'Approved'=>1 )); $view_data = $this->renderPartial('client_service_level_settings' , array( 'client' => $client, 'settings' => $settings, 'payments' => $client->service_payments, 'serviceLevels' => $serviceLevels, 'items'=>$items, 'summary_sl_settings'=>$summary_sl_settings, 'pending_client_service_settings'=>$pending_client_service_settings, 'dcss'=>$dcss ),true); $return_array['client_service_level_settings']['auto_loaded_data'] = $view_data; $return_array['client_service_level_settings']['client'] = $client; } } if ( $_SESSION['tabs_to_auto_load']['client_users_list_appr_value']) { $client_id_to_rewiev = intval($_SESSION['tabs_to_auto_load']['client_users_list_appr_value']['client_id']); $approvers_array = UsersClientList::getApproversArray($client_id_to_rewiev); $view_data = $this->renderPartial('client_users_list_appr_value' , array( 'approvers_array'=>$approvers_array, ),true); $return_array['client_users_list_appr_value']['auto_loaded_data'] = $view_data; $return_array['client_users_list_appr_value']['client'] = Clients::model()->with('company', 'users')->findByPk($client_id_to_rewiev);; } return $return_array; }
/** * Sets pending settings field Approved to 1; * @param $client_id */ public static function setApproved($client_id){ $pcss = PendingClientServiceSettings::model()->findByPk($client_id); //var_dump($pcss);die; $pcss->Approved = 1; $pcss->save(); }
/** * Generate invoice * @param $clientID * @param $amount */ public static function generateInvoice($clientID, $userID, $amount) { $client = Clients::model()->with('company.adreses')->findByPk($clientID); $user = Users::model()->with('person')->findByPk($userID); $settingsToPay= PendingClientServiceSettings::model()->findByAttributes(array( 'Client_ID'=>$clientID, 'Approved'=>1 ) ); if($settingsToPay) { //$str = ServiceLevelSettings::getSummaryName($settingsToPay->Service_Level_ID); $sum_settings = ServiceLevelSettings::getSummarySettings($clientID); $tierName=$sum_settings['Tier_Name']; $data['service']['total_users'] = $settingsToPay->Additional_Users ; $data['service']['total_projects'] = $settingsToPay->Additional_Projects ; $data['service']['total_storage'] = $settingsToPay->Additional_Storage ; $data['service']['added_users'] = $settingsToPay->Additional_Users - $sum_settings['Users_Count']; $data['service']['added_projects'] = $settingsToPay->Additional_Projects ; $data['service']['added_storage'] = $settingsToPay->Additional_Storage ; $active_to = $settingsToPay->Pending_Active_To; } else { $settingsToPay= ClientServiceSettings::model()->findByPk($clientID); $sum_settings = ServiceLevelSettings::getSummarySettings($clientID); $tierName=$sum_settings['Tier_Name']; $data['service']['total_users'] = $settingsToPay->Additional_Users + $sum_settings['Users_Count']; $data['service']['total_projects'] = $settingsToPay->Additional_Projects + $sum_settings['Projects_Count']; $data['service']['total_storage'] = $settingsToPay->Additional_Storage + $sum_settings['Storage_Count']; $data['service']['added_users'] = $settingsToPay->Additional_Users; $data['service']['added_projects'] = $settingsToPay->Additional_Projects; $data['service']['added_storage'] = $settingsToPay->Additional_Storage; $active_to = $settingsToPay->Active_To; } $summary_sl_settings = ServiceLevelSettings::getSummarySettings($clientID); $data['company_to']['company_name']=$client->company->Company_Name; $data['company_to']['street']=$client->company->adreses[0]->Address1; $data['company_to']['city']=$client->company->adreses[0]->City." ".$client->company->adreses[0]->ZIP;; $data['company_to']['country']=$client->company->adreses[0]->Country; $data['company_to']['email']=$user->person->Email; $data['company_to']['phone']=$user->person->Mobile_Phone; $data['invoice']['number']=Aps::generateInvoiceNumber($clientID); $data['invoice']['date']=date("M d, Y",time()); $data['invoice']['due_date']=date("M d, Y",time()); $data['invoice']['due_date']=date("M d, Y",time()); $data['invoice']['amount_due']=$amount; $data['service']['service_name']=$tierName; /*$data['service']['Users']=$summary_sl_settings['Additional_Users']+$summary_sl_settings['Users_Count']; $data['service']['Projects']=$summary_sl_settings['Additional_Projects']+$summary_sl_settings['Projects_Count']; $data['service']['Storage']=$summary_sl_settings['Additional_Storage']+$summary_sl_settings['Storage_Count'];*/ $data['service']['active_to'] = $active_to; // get content for pdf $content = Yii::app()->controller->renderPartial('application.views.myaccount.invoice_template', array( 'data'=>$data, ), true); $fileName = date("Y_m_d_H_i_s") . '.pdf'; Yii::import('ext.html2pdf.HTML2PDF'); $html2pdf = new HTML2PDF('P', 'A4', 'en'); $html2pdf->writeHTML($content); $html2pdf->Output($fileName, 'I'); die; }