Example #1
0
    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();

    }
Example #3
0
    /**
     * 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;
    }