public function setRecord($data)
 {
     $data[blocktype] = $this->blocktype;
     $operation[$data[operation_id]] = array('date' => $data[action_date], 'comment_id' => sqltable_model::getCommentId($data[comment]));
     // если в поле для нового ввели номер сопроводиловки уже существующий в журнале
     // то будем править его
     $sql = "SELECT * FROM {$this->maintable} WHERE lanch_id='{$data[lanch_id]}'";
     $res = sql::fetchOne($sql);
     if (empty($res)) {
         // гадство! тут нужен уникальный, а без коментариев будет получаться один
         sql::insert('coments', array(array("comment" => multibyte::Json_encode($operation))));
         $data[coment_id] = sql::lastId();
     } else {
         $coment = multibyte::Json_decode(sqltable_model::getComment($res[coment_id]));
         $coment[$data[operation_id]] = $operation[$data[operation_id]];
         // заменить старый по ключу
         sql::insertUpdate('coments', array(array("id" => $res[coment_id], "comment" => multibyte::Json_encode($coment))));
         $data[edit] = $res[id];
         // если был такой его и правим
         $data[coment_id] = $res[coment_id];
     }
     $data[lastoperation] = $data[operation_id];
     parent::setRecord($data);
     return true;
 }
Beispiel #2
0
    /**
     * 	Функция возвращает обработанный для фронтенда контент
     * 	@param	$content string	Текущий контент (то, что вывелось на страницу тем или иным образом)
     */
    public static function process($content) {

        $json = multibyte::Json_encode(array(
            "js" => self::$result,
            "text" => "{$content}",
                ), self::$entityDecode);
        return $json;
    }
Beispiel #3
0
 /**
  * Добавляет к блоку данные о проводниках и зазорах
  */
 public function wideandgap($rec)
 {
     $rec = multibyte::cp1251_to_utf8($rec);
     // TODO duble code
     // update block size
     extract($rec);
     $sql = "SELECT id FROM customers WHERE customer='{$customer}'";
     $rs = sql::fetchOne($sql);
     if (empty($rs)) {
         $sql = "INSERT INTO customers (customer) VALUES ('{$customer}')";
         sql::query($sql);
         $customer_id = sql::lastId();
     } else {
         $customer_id = $rs[id];
     }
     $sql = "SELECT id,comment_id FROM blocks WHERE customer_id='{$customer_id}' AND blockname='{$board}'";
     $rs = sql::fetchOne($sql);
     if (!empty($rs)) {
         $params = json_decode(multibyte::Unescape(sqltable_model::getComment($rs["comment_id"])), true);
         //получим текщий комент
         $params["wideandgaps"] = update_model::parsexstring($wideandgaps);
         $comment_id = sqltable_model::getCommentId(multibyte::Json_encode(multibyte::recursiveEscape($params)));
         $id = $rs["id"];
         $sql = "UPDATE blocks SET comment_id='{$comment_id}' WHERE id='{$id}'";
         sql::query($sql);
         echo json_encode($params);
     }
     /* если не нашелся такой блок, то не понятно как вызывался метод, блок создается раньше вызовом coppers и другими
      * wideandgaps вызывается для готовых блоков, не вижу смысла отрабатывать ситуацию когда блока нет
      */
 }
 public function setRecord($data)
 {
     extract($data);
     // в скрытых параметрах формы есть идентификатор коментария, заберем текущий и заменим в нем собственно коментарий
     $param = json_decode(multibyte::Unescape($this->getComment($comment_id)), true);
     $param["class"] = $data["class"];
     $param[basemat] = $data["basemat"];
     $param[sttkan] = $data["sttkan"];
     $param[sttkankl] = $data["sttkankl"];
     $param[sttkanrasp] = $data["sttkanrasp"];
     $param[rtolsh] = $data["rtolsh"];
     $param[filext] = $data["filext"];
     $param[elkon] = $data["elkon"];
     for ($i = 1; $i < 11; $i++) {
         $param["sl{$i}"] = $data["sl{$i}"];
         $param["pr{$i}"] = $data["pr{$i}"];
         $param["mat{$i}"] = $data["mat{$i}"];
     }
     $param["coment"] = $comment;
     $data["comment_id"] = $this->getCommentId(multibyte::Json_encode(multibyte::recursiveEscape($param)));
     return parent::setRecord($data);
 }
Beispiel #5
0
 public function getJson($data)
 {
     //header("CONTENT-TYPE: TEXT/X-JSON; CHARSET={$_SERVER[Encoding]}");
     header("CONTENT-TYPE: APPLICATION/JSON; CHARSET={$_SERVER[Encoding]}");
     echo multibyte::Json_encode($data, true);
 }