示例#1
0
 public static function update($napravl_id, $data)
 {
     if (empty($napravl_id) || empty($data) || !is_array($data) || empty($data['name'])) {
         return false;
     }
     if (self::isDefault($napravl_id)) {
         return false;
     }
     db::update(TABLE_NAPRAVL, $data, 'id = ' . $napravl_id);
     return true;
 }
示例#2
0
function edit_description_exec($Frm, $Err)
{
    global $email_notifications_types;
    if (!$Err) {
        $id = intval($Frm->GetValue(0));
        $descr = str_replace("'", '"', htmlspecialchars($Frm->GetValue(1)));
        //$persist = (null !== $Frm->GetValue(2)) ? 1 : 0;
        //$send = (null !== $Frm->GetValue(3)) ? 1 : 0;
        $action_type = $Frm->GetValue(2);
        in_array($action_type, array(0, 1, 2)) or $action_type = 0;
        if (isset($email_notifications_types[$id])) {
            db::update(TABLE_EMAIL_NOTIFICATION_TYPES, array('description' => $descr, 'action_type' => $action_type), "id=" . $id);
            $Frm->_gui->informer->OK("Сохранено");
            page_reloadAll();
        }
    }
}
示例#3
0
function editclient_exec($Frm, $Err)
{
    if (!$Err) {
        $client_info = Client::find($Frm->GetNmValueI("id"));
        if (!$client_info) {
            $Frm->_gui->ERR("Клиент не найден");
            page_reloadToSec(2);
        }
        $filial_id = $Frm->GetNmValueI("filial_id");
        if (empty($filial_id)) {
            $Frm->_gui->ERR("Не указан филиал");
            return;
        }
        $new_password = $client_info['hpwd'];
        $pwd = $client_info['password'];
        if ($Frm->GetNmValueH("newpwd") != "") {
            if ($Frm->GetNmValueI("genpwd")) {
                $pwd = generate_pasw(5);
            } else {
                $pwd = $Frm->GetNmValueI("newpwd");
            }
            if (strlen($pwd) < 5) {
                $Frm->_gui->ERR("Длина пароля должна быть не менее 5 символов");
                return;
            }
            if (strlen($pwd) > 20) {
                $Frm->_gui->ERR("Длина пароля должна быть не более 20 символов");
                return;
            }
            $eml = strtolower($Frm->GetNmValueH("email"));
            $new_password = md5($pwd . $eml);
        }
        db::insert(TABLE_CLIENTS_HISTORY, array('change_date' => time(), 'change_user_id' => $_SESSION['user']['data']['id'], 'client_id' => $client_info["id"], 'filial_id_new' => $filial_id, 'fio_new' => $Frm->GetNmValueH("fio"), 'hpwd_new' => $new_password, 'email_new' => $Frm->GetNmValueH("email"), 'telnum_new' => $Frm->GetNmValueH("telnum"), 'city_new' => $Frm->GetNmValueH("city"), 'icq_new' => $Frm->GetNmValueH("icq"), 'skype_new' => $Frm->GetNmValueH("skype"), 'contacts_new' => $Frm->GetNmValueH("contacts"), 'about_new' => $Frm->GetNmValueH("about"), 'filial_id_old' => $client_info['filial_id'], 'fio_old' => $client_info['fio'], 'hpwd_old' => $client_info['hpwd'], 'email_old' => $client_info['email'], 'telnum_old' => $client_info['telnum'], 'city_old' => $client_info['city'], 'icq_old' => $client_info['icq'], 'skype_old' => $client_info['skype'], 'contacts_old' => $client_info['contacts'], 'about_old' => $client_info['about']));
        Client::update($client_info['id'], array('filial_id' => $filial_id, 'fio' => $Frm->GetNmValueH("fio"), 'email' => $Frm->GetNmValueH("email"), 'telnum' => $Frm->GetNmValueH("telnum"), 'city' => $Frm->GetNmValueH("city"), 'hpwd' => $new_password, 'password' => $pwd, 'icq' => $Frm->GetNmValueH("icq"), 'skype' => $Frm->GetNmValueH("skype"), 'contacts' => $Frm->GetNmValueH("contacts"), 'about' => $Frm->GetNmValueH("about"), 'ref_id' => $Frm->GetNmValueI('ref'), 'from_id' => $Frm->GetNmValueI('client_from')));
        db::update(TABLE_ORDERS, array('filial_id' => $filial_id), 'klient_id = ' . $client_info["id"]);
        $Frm->_gui->OK("Сохранено");
        page_reloadAll();
    }
}
示例#4
0
function edit_city_exec($Frm, $Err)
{
    global $data_city;
    if (!$Err) {
        $id = intval($Frm->GetValue(0));
        $name = str_replace("'", '"', htmlspecialchars($Frm->GetValue(1)));
        if (isset($data_city[$id])) {
            db::update(TABLE_CITIES, array('name' => $name), "id=" . $id);
            $Frm->_gui->informer->OK("Сохранено");
            page_reloadAll();
        }
    }
}
示例#5
0
 function add_order($client_id, &$err)
 {
     $err = "";
     try {
         $client = Client::find($client_id);
     } catch (Exception $e) {
         $err = "Ошибка - не указан клиент";
         return false;
     }
     try {
         $filial = Filial::find($client['filial_id']);
     } catch (Exception $e) {
         $filial = Filials::getDefault();
         Client::update($client['id'], array('filial_id' => $filial['id']));
         db::update(TABLE_ORDERS, array('filial_id' => $filial['id']), 'klient_id = ' . $client['id']);
     }
     $pgs = get_min_max_from_str($_SESSION["zf_work_pages"]);
     // disc id
     try {
         $discipline = Discipline::find($_SESSION["zf_work_predm"]);
         $disc_id = $discipline['id'];
     } catch (Exception $e) {
         $discipline = Discipline::findOneBy(array('name' => $_SESSION["zf_work_predm"]));
         if ($discipline) {
             $disc_id = $discipline['id'];
         } else {
             $disc_id = Discipline::create(array('name' => $_SESSION["zf_work_predm"]));
         }
     }
     $info = $_SESSION["zf_work_dopinfo"];
     $worktype_custom = '';
     $worktype = null;
     try {
         $worktype = Worktypes::find($_SESSION["zf_work_type"]);
     } catch (Exception $e) {
         $worktype = Worktypes::findOneBy(array('name' => $_SESSION["zf_work_type"]));
         if (!$worktype) {
             $worktype_custom = $_SESSION["zf_work_type"];
             $worktype['id'] = null;
         }
     }
     $id = Order::create(array("filial_id" => $filial['id'], "klient_id" => $client['id'], "type_id" => $worktype['id'], "type_user" => $worktype_custom, "disc_id" => $disc_id, "time_kln" => strtotime($_SESSION["zf_work_date"]), "subject" => $_SESSION["zf_work_tema"], "about_kln" => $info, "pages_min" => $pgs["min"], "pages_max" => $pgs["max"]));
     if ($id > 0) {
         ////////////////////////
         // Текст клиенту
         $txt = "<p>Здравствуйте, " . $client["fio"] . "!</p>";
         // Если первый раз
         if (@$_SESSION["new_klient_added"]) {
             $txt .= "<p>Мы очень рады, что Вы решили воспользоваться нашими услугами и высоко ценим Ваше доверие!</p>" . "<p>Теперь Вы можете войти в личный кабинет:<br>" . "&nbsp;Логин: " . $client["email"] . "<br>" . "&nbsp;Пароль: " . $client["password"] . "<br></p>";
         } else {
             $txt .= "<p>Спасибо, что Вы с нами! Для постоянных клиентов у нас всегда есть интересные и выгодные предложения!</p>";
         }
         $zak = "<p>Номер заказа: " . $id . "<br>" . "Дата: " . date("d.m.Y") . "<br>";
         $zak .= "Вид работы: ";
         if (!empty($worktype_custom)) {
             $zak .= $worktype_custom . "<br>";
         } else {
             $zak .= $worktype["name"] . "<br>";
         }
         $zak .= "Дисциплина: ";
         if ($discipline) {
             $zak .= $discipline['name'] . "<br>";
         } else {
             $zak .= $_SESSION["zf_work_predm"] . "<br>";
         }
         $zak .= "Тема работы: " . $_SESSION["zf_work_tema"] . "<br>" . "Требования: " . $_SESSION["zf_work_dopinfo"] . "<br>" . "Дата сдачи: " . $_SESSION["zf_work_date"] . "<br>" . "Число страниц: " . $_SESSION["zf_work_pages"] . "<br>" . ($txt .= "<p>Ваш заказ принят, и в ближайшее время наш менеджер свяжется с Вами.</p>" . "<p>Содержание заказа: <br>" . $zak . "</p>");
         $txt .= "<p><i>С уважением, компания по написанию студенческих работ.</i></p>";
         $email = new Email();
         $email->setData(array('email' => $client['email'], 'name' => $client['fio']), "Ваш заказ принят!", $txt, array(), true, array(), array('email' => $filial['email'], 'name' => $filial['name']));
         //$m->SMTPDebug = true;
         if ($email->send()) {
             $user_send_res = "Письмо клиенту отправлено";
         } else {
             $user_send_res = "Ошибки при отправке письма клиенту: " . $email->ErrorInfo;
         }
         ////////////////////////
         // Текст в приемную заказов
         $zak .= "<p>Заказчик:<br>";
         if (@$_SESSION["new_klient_added"]) {
             $zak .= "Новая регистрация<br>";
         }
         $zak .= "id: " . $client["id"] . "<br>" . "Имя: " . $client["fio"] . "<br>" . "Почта: " . $client["email"] . "<br>" . "Телефон: " . $client["telnum"] . "<br>" . "Город: " . $client["city"] . "<br>" . "Другие контакты: " . $client["contacts"] . "<br>";
         $zak .= $user_send_res;
         // Прикалываем файлы
         $files = check_user_files();
         $message_id = \Components\Entity\Message::create(array('parent_id' => 0, 'order_id' => $id, 'klient_id' => $client["id"], 'visit_id' => 0, 'tender_id' => 0, 'created' => time(), 'creator_id' => 'k' . $client["id"], 'addr' => 'u' . $filial['id'], 'subject' => "Поступил новый заказ #" . $id, 'text' => $zak, 'prior' => 1, 'uvedom' => 1, 'readed' => 0, 'needansv' => 0, 'basket' => 0));
         if (!empty($message_id)) {
             \Components\Classes\Author::enqueue_message_to_email($message_id, $filial['id'], EmailNotification::TO_MANAGER_ON_CLIENT_CREATED_ORDER);
         }
         /* ОТПРАВИТЬ В РЕАЛЬНОМ ВРЕМЕНИ
            $email = new Email();
            $email->setData(array(
              'email' => FIRM_ORD_MAIL,
              'name' => 'Приемная заказов',
            ), "Поступил новый заказ #" . $id, $zak, $files, true, array(), array(
              'email' => $filial['email'],
              'name' => $filial['name'],
            ));
            $email->send();
            ENDOF ОТПРАВИТЬ В РЕАЛЬНОМ ВРЕМЕНИ */
         // move file
         if (count($files)) {
             $path = DIR_FS_ORDER_FILES . $id;
             if (!file_exists($path)) {
                 mkdir($path);
             }
             foreach ($files as $f) {
                 $fid = OrderFile::create(array('order_id' => $id, 'creator_id' => 0, 'created' => time(), 'name' => $f["name"], 'size' => $f["size"]));
                 if ($fid > 0) {
                     $ext = substr($f["name"], strrpos($f["name"], ".") + 1);
                     $f_s = fopen($f["path"], "r");
                     $f_d = fopen($path . "/" . $fid . "." . $ext, "w");
                     fwrite($f_d, fread($f_s, $f["size"]));
                     fclose($f_s);
                     fclose($f_d);
                 }
                 unlink($f["path"]);
             }
         }
         $path = TMPFILES_PATH . session_id();
         if (file_exists($path)) {
             rmdir($path);
         }
         return true;
     } else {
         return false;
     }
 }
示例#6
0
 /**
  * @param mixed $id
  * @param array $data
  *
  * @throws InvalidArgumentException
  * @return bool
  */
 public static function update($id, array $data)
 {
     if (empty($id) || empty($data) || !is_array($data)) {
         throw new InvalidArgumentException(self::getEntity());
     }
     return db::update(static::TABLE, $data, 'id = ' . $id);
 }
示例#7
0
<?php

use Components\Classes\db;
if (isset($_POST['referrer_system_profit'])) {
    db::update('configs', array('value' => intval($_POST['referrer_system_profit'])), "internal_name = 'REFERRER_SYSTEM_PROFIT'");
}
$config = get_config_by_iname('REFERRER_SYSTEM_PROFIT');
$GUI->Vars['page_top'] = '<form method="post" action=""><div>Укажите доход по партнерской программе % <input type="text" value="' . intval($config['value']) . '" name="referrer_system_profit" style="width: 100px;"/></div><div style="margin-top: 10px;"><button class="cgui_form_button_ovr" style="width: 100px;">Сохранить</button></div></form>';
示例#8
0
function edit_offer($Frm, $Err)
{
    if (!$Err) {
        $order_id = $Frm->GetNmValueI("order_id");
        $order_info = Order::find($order_id);
        if ($order_info['cost_auth'] != 0) {
            $price = $order_info['cost_auth'];
        } else {
            $price = $Frm->GetNmValueI("price");
        }
        db::update(TABLE_AUTHOR_OFFERS, array('price' => $price, 'comment' => $Frm->GetNmValueH("comment")), "order_id = " . db::input($Frm->GetNmValueI("order_id")) . " AND author_id = " . db::input($Frm->GetNmValueI("author_id")));
        $Frm->_gui->OK("Предложение обновлено");
        page_reloadSubSec();
    }
}
示例#9
0
 function SaveToBase()
 {
     if ($this->cfg_table && $this->cfg_field) {
         $sv = array();
         //save usersets
         $sv["usersets"] = $sv['stdsets'] = array();
         foreach ($this->userSets as $k => $v) {
             $sv["usersets"][$v->id] = $v->SaveBaseConf();
         }
         foreach ($this->stdSets as $k => $v) {
             $sv["stdsets"][$v->id] = $v->SaveBaseConf();
         }
         if ($this->cfg_table == 'clients') {
             $id = $_SESSION["frame"]["client"]["id"];
         } else {
             $id = $_SESSION["user"]["data"]["id"];
         }
         db::update($this->cfg_table, array($this->cfg_field => serialize($sv)), "id = " . $id);
     }
 }