- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
$l_data["comm_text"] = $mail_body;
$l_var = implode(",", $l_var);
$l_path = "root->mail->".$l_group_id."->".$l_uuid."->[".$l_var.",group_name,comm_text]";
$this->engine->smartquery->create( $l_path );
$this->engine->smartquery->setdata( $l_path, $l_data );
if ($this->engine->var->get("comm_subscribe") == 1 && defvar($this->engine->var->get("comm_email"),"") != "")
{
$l_result = $this->engine->smartquery->getdata( "root->clients->(list)->[*]"," and `comm_email`='".$this->engine->var->get("comm_email")."' ");
$l_result = $l_result->getall();
if (count($l_result) == 0)
{
//Создать группу если отсутствует
$l_data = array();
$l_data["comm_fio"] = $this->engine->var->get("comm_fio");
$l_data["comm_email"] = defvar($this->engine->var->get("comm_email"),"");
$l_data["comm_phone"] = defvar($this->engine->var->get("comm_phone"),"");
$l_data["comm_formid"] = $l_group_id;
$l_data["comm_formname"] = defvar($config["mail.communication".$l_group_id.".subj"],"");
$l_var = implode(",", array_keys($l_data));
$l_uuid = mktime();
$l_path = "root->clients->".$l_uuid."->[".$l_var."]";
$this->engine->smartquery->create( $l_path );
$this->engine->smartquery->setdata( $l_path, $l_data );
}
}
Это код из одного "супер" движка мало того что тут используется дибильный шаблонизатор, тут используется просто еб*нутый класс для работы с базой данных....
Не знаю что автор хотел оптимизировать этим классом, но простая вставка данных в таблицу тут занимает целых два метода 1-ый($this->engine->smartquery->create) создает таблицу(если ее нет и пустую строку), второй только собственно осуществляет вставку в эту строку данных($this->engine->smartquery->setdata)