/**
     * Update company service level and add payment
     */
    public function actionUpdateCompanyServiceLevel()
    {
        if (isset($_POST['ClientServiceSettings']) && is_array($_POST['ClientServiceSettings'])
            && isset($_POST['Tiers']) && is_array($_POST['Tiers'])
        ) {
            $client_id = intval($_POST['ClientServiceSettings']['Client_ID']);
            $css = ClientServiceSettings::model()->findByPk($client_id);

            $pcss = PendingClientServiceSettings::model()->findByPk($client_id);
            if ($pcss) {$pending_fee = $pcss->Fee;}

            $client = $css->client;
        //1) add payment
            $amount = floatval($_POST['add_payment_amount']);
            $date = trim($_POST['add_payment_date']);
            $number = trim($_POST['add_payment_number']);
            $date = Helper::checkDate($date);

            $users = intval($_POST['ClientServiceSettings']['Additional_Users']);
            $projects = intval($_POST['ClientServiceSettings']['Additional_Projects']);
            $storage = intval($_POST['ClientServiceSettings']['Additional_Storage']);

            $min_max_is_valid = ClientServiceSettings::CheckMinMaxValues($users,$projects,$storage);

            if ($min_max_is_valid) {
                if ($client && $amount > 0 && preg_match('/^\d{4}\-\d{2}\-\d{2}$/', $date)) {
                    $result = ServicePayments::addJustPayment($client_id, $amount, $date,$number,'');
                }
            }



        //2) update settings

            if ($css && $client && $min_max_is_valid) {
                $_POST['ClientServiceSettings']['Active_To'] = Helper::checkDate($_POST['ClientServiceSettings']['Active_To']);

                $css->setAttributes($_POST['ClientServiceSettings']);
                //$css->Additional_Storage--;
                //$companyServiceSettings->Service_Level_ID = implode(',',$_POST['Tiers']);

                //$fee = ClientServiceSettings::Calculation($css->Additional_Users,$css->Additional_Projects,$css->Additional_Storage,$css->Active_To,$css->Service_Level_ID,$client_id);

                //new settings and prices
                $base_fee_new = ClientServiceSettings::CalculateBaseFee(explode(',',$css->Service_Level_ID));

                $add_fee_new = ClientServiceSettings::CalculateAddFee($css->Additional_Users,$css->Additional_Projects,$css->Additional_Storage);

                $fee = $base_fee_new + $add_fee_new;
                $css->Additional_Storage--;
                /**$fee = $amount ? $amount :
                    ClientServiceSettings::getFeeByValues(
                        $companyServiceSettings->Service_Level_ID,
                        $companyServiceSettings->Additional_Users,
                        $companyServiceSettings->Additional_Projects,
                        $companyServiceSettings->Additional_Storage
                    );
                 */

                //$periods = Helper::calculatePeriodsBetweenDates(date('m/d/Y'),$companyServiceSettings->Active_To);

                $css->Fee = $fee; //* $periods;

                if ($css->validate()) {
                    $css->save();
                    if ($pcss) $pcss->delete();
                    if ($css->Active_To >= date('Y-m-d') && $client->Client_Status == Clients::NOT_ACTIVE) {
                        $client->activate();
                    }

                    $user_client_settings = $client->service_settings;
                    $user_tier_settings = TiersSettings::agregateTiersSettings($user_client_settings->Service_Level_ID);
                    Yii::app()->user->setState('tier_settings', $user_tier_settings);
                }
            }

        Yii::app()->user->setFlash('success', "Settings added");
        $this->redirect('/admin?tab=service');
    }
    }