db = &$db;
$this->tpl = &$tpl;
$this->error = &$error;
$this->mail = new PHPMailer();
}
function trim(&$data){
foreach($data as $key=>$value){
if(is_array($data[$key]))$this->trim($data[$key]);
else $data[$key] = trim($value);
}
}
function valid($data,$upload = null){
if(!preg_match("/.{1,250}/i",$data['title']))$this->error[] = "Îøèáêà ââîäà ïîëÿ Çàãëàâèå!";
if(!preg_match("/.+/is",$data['question']))$this->error[] = "Îøèáêà ââîäà ïîëÿ Âîïðîñ!";
if(!preg_match("/.{1,50}/is",$data['name']))$this->error[] = "Îøèáêà ââîäà ïîëÿ Èìÿ!";
if(isset($data['email'])){
if(!preg_match("/([^@]+)@([^@]+)\.([^@]+)/i",$data['email']) || strlen($data['email'])>80)$this->error[] = "Îøèáêà ââîäà ïîëÿ Email!";
}
if(!isset($_SESSION['spam']))$this->error[] = "Âû ñïàìåð!";
if($_SESSION['spam']!=$data['no_spam'])$this->error[] = "Îøèáêà ââîäà ïîëÿ Ñèìâîëû íà êàðòèíêå!";
return ( count($this->error) ) ? true : false;
}
function saveListQuestion($data){
$table_name = "book";
if(isset($data['update_id']) && $data['update_id']>0){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$id = $data['update_id'];$where = "id=$id";}else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$id = $this->db->nextId('mySequenceBook');$where = null;}
$fields_values = array("id"=>$id,"title"=>$data['title'],"question"=>$data['question'],"name"=>$data['name'],"email"=>$data['email'],"mktime"=>mktime());
$this->db->autoExecute($table_name, $fields_values, $DB_AUTOQUERY,$where);
return $id;
}
function saveList($data,$lang = "rus"){
$table_name = "book";
if(isset($data['update_id']) && $data['update_id']>0){$DB_AUTOQUERY = DB_AUTOQUERY_UPDATE;$id = $data['update_id'];$where = "id=$id";}else{$DB_AUTOQUERY = DB_AUTOQUERY_INSERT;$id = $this->db->nextId('mySequenceBook');$where = null;}
$fields_values = array("id"=>$id,"question"=>$data['question'],"question_ukr"=>$data['question_ukr'],
"answer"=>$data['answer'],"answer_ukr"=>$data['answer_ukr'],"mktime"=>mktime(),"active"=>$data['active'],"type"=>$data['type']);
$this->db->autoExecute($table_name, $fields_values, $DB_AUTOQUERY,$where);
return $id;
}
function viewBookLast($limit = 1){
$sql = "select * from book where active=0 order by id desc limit $limit";
$row = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC);
$this->tpl->assign("book_list",$row);
}
function viewBooks($params,$active = "all"){
$search = array();
if($active!="all"){
$search[] = sprintf("active='%d'",$active);
}
if(isset($params['type']) && $params['type']>0)$search[] = sprintf("type='%d'",$params['type']);
$sql = "select book.* from book where 1=1 ";
if(count($search))$sql .= "AND " . implode(" AND " , $search) . " ";
$sql .= "order by mktime desc";
$pagerOptions = Array(
'mode' => 'Sliding',
'delta' => 6,
'perPage' => 10,
'linkClass'=>"link_class",
'curPageLinkClassName'=>"link_class_active",
'spacesBeforeSeparator' => 1,
'spacesAfterSeparator' => 1
);
$this->tpl->assign('bookData', Pager_Wrapper_DB($this->db, $sql, $pagerOptions, false, DB_FETCHMODE_ASSOC, array()));
}
function viewBooksAll($lang){
$sql = "select book.*";
if($lang=='ukr')$sql .= ", question_ukr as question,answer_ukr as answer";
$sql .= " from book where 1=1 ";
$sql .= "order by mktime desc";
$res = $this->db->getAll($sql,array(),DB_FETCHMODE_ASSOC);
$arr = array();
foreach($res as $row){
$arr[$row['type']][] = $row;
}
$this->tpl->assign('books',$arr);
}
function sendMSG($data){ // print_r($data);
$this->mail->CharSet = "windows-1251";
$this->mail->From = "info@extremstyle.ua";
$this->mail->FromName = "ExtremStyle";
$this->mail->AddAddress($data['email'], $data['name']);
//$this->mail->AddAddress('pavel_1986@bigmir.net', 'Pavel');
$this->mail->Subject = 'Îòâåò íà Âàø âîïðîñ';
$msg = sprintf("Çäðàâñòâóéòå %s\n",$data['name']);
$msg .= "\n";
$msg .= "Âàñ ïðèâåòñòâóåò êîìïàíèÿ ExtremStyle!";
$msg .= "\n";
$msg .= "Âû îòñòàâëÿëè âîïðîñ íà ñàéòå: www.extremstyle.ua";
$msg .= "\n";
$msg .= "Ñïåöèàëèñòû êîìïàíèè îòâåòèëè íà íåãî, äëÿ ïðîñìîòðà ïðîéäèòå ïî ññûëêè: ".URL."question/".$data['update_id']."/";
$msg .= "\n";
$msg .= "--";
$msg .= "\n";
$msg .= "Ñ óâàæåíèåì, êîìïàíèÿ \"ExtremStyle.\"";
$msg .= "\n";
$msg .= URL;
$this->mail->Body = $msg;
if(!$this->mail->Send()){echo "There has been a mail error sending to
";return false;}
$this->mail->ClearAddresses();
$this->mail->ClearAttachments();
return true;
}
function sendClient($data){ // print_r($data);
$this->mail->CharSet = "windows-1251";
$this->mail->From = $data['email'];
$this->mail->FromName = $data['name'];
$this->mail->AddAddress("info@extremstyle.ua", "info");
//$this->mail->AddAddress('pavel_1986@bigmir.net', 'Pavel');
$this->mail->Subject = 'Êîíñóëüòàöèÿ Online';
$msg = sprintf("Âàøå èìÿ: %s\n",$data['name']);
$msg .= sprintf("Âàø e-mail: %s\n",$data['email']);
$msg .= sprintf("Çàãëàâèå âîïðîñà: %s\n",$data['title']);
$msg .= sprintf("Âîïðîñ: %s\n",$data['question']);
$msg .= "\n";
$msg .= URL;
$this->mail->Body = $msg;
if(!$this->mail->Send()){echo "There has been a mail error sending to
";return false;}
$this->mail->ClearAddresses();
$this->mail->ClearAttachments();
return true;
}
function viewBookOne($id){
$sql = "select * from book where id=?";
$row = $this->db->getRow($sql,array($id),DB_FETCHMODE_ASSOC);
$this->tpl->assign("book",$row);
return $row;
}
function deleteBook($id){
$sql = "delete from book where id=?";
$this->db->query($sql,array($id));
}
function displayBookOne(){
$this->tpl->assign("tpl","book_one.tpl");
}
function displayBook(){
$this->tpl->assign("tpl","book.tpl");
}
function displaySaveBook(){
$this->tpl->assign("tpl","book_add.tpl");
}
}
?>