%PDF- %PDF-
Direktori : /home/nailstv/public_html/include/ |
Current File : /home/nailstv/public_html/include/Page.class.php |
<?php class Page extends Content { private $require_login; public function __construct($site, $require_login = false, $p = array()) { if(Registry::get('debug')) ob_start(); parent::__construct(); Registry::set('db', Db::getInstance()); // $this -> assign("html5_support" , $this -> html5_support()); // $this -> assign("iOS" , Registry :: get("iOS")); $this -> assign("iOS" , 1); $this->referer(); if($require_login) { $user = new User($site); if(isset($_GET['logout'])) { $user->logout(); } if(!$user->checkSession()) { header("Location: login.php"); die; } } if($site == 'admin' && !empty($_SESSION['admin']['user_id'])) { $this->adminMenu(); } elseif($site == Registry::get('site')) { $this->assign('pagename', $p['pagename']); $this->assign('sitename', Registry::get('sitename')); Registry::set('pagename', $p['pagename']); $uri = explode('?', $_SERVER['REQUEST_URI']); $uri = explode('/', $uri[0]); $uri = array_slice($uri, 1); //$this->assign('jobb_banner', $this->banner(2, 'jobb')); //$this->assign('csatornak', $this->csatornak()); $this->assign('csatornak_alap', $this->csatornak_alap()); $this->assign('csatornak_csat', $this->csatornak_csat()); $this->assign('csatornak_cimkek',$this->csatornak_cimkek()); if(isset($_GET['ref']) && !empty($_GET['ref'])){ $_SESSION['mentor'] = $_GET['ref']; } } $this->assign('site', $site); $this->assign('p', $p); } function csatornak_cimkek() { $db = Registry::get('db'); $sql="SELECT c.id, c.nev, c.url, c.title FROM cimkek c WHERE c.storno = 'f' AND c.aktiv = 't' ORDER BY sorrend LIMIT 16 "; $csatornak = $db->GetArray($sql); return $csatornak; } function display($tpl) { if(Registry::get('debug')) { $fp = fopen(Registry::get('dirroot') . '/debug.html', 'w'); $html = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">'; $html .= '<html>'; $html .= '<head>'; $html .= '<title>Debug</title>'; $html .= '<link rel="stylesheet" href="css/debug.css" type="text/css">'; $html .= '</head>'; $html .= '<body>'; $html .= '<div id="content">'; fwrite($fp, $html); fwrite($fp, ob_get_contents()); ob_end_clean(); Registry::set('end', microtime(true)); $time = Registry::get('end') - Registry::get('start'); $html = '<br><strong>' . $time . '</strong>'; $html .= '</div>'; $html .= '</body>'; $html .= '</html>'; fwrite($fp, $html); fclose($fp); $this->assign('debug', 1); } parent::display($tpl); } function showContent() { echo $this->_tpl_vars['content']; } function referer() { $referer = ''; if(isset($_SERVER["HTTP_REFERER"])) { $referer = $_SERVER["HTTP_REFERER"]; } if($commapos = strpos($referer, '?')) { $referer = substr($referer, 0, $commapos); } $this->assign('referer', $referer); Registry::set('referer', $referer); } function adminMenu() { $db = Registry::get('db'); $sql = "SELECT f.nev, f.file, f.urlparam FROM user_funkcio uf LEFT JOIN funkcio f ON uf.funkcio_id = f.id WHERE uf.user_id = " . $_SESSION['admin']['user_id'] . " AND f.hidden = 'f' AND f.storno = 'f' ORDER BY f.sorrend"; $r = $db->Execute($sql); $this->assign('adminmenu', $r->GetArray()); } function csatornak($alapismeretek = true){ $db = Registry::get('db'); $where = ''; if($alapismeretek == false){ $where = " AND parent_id != 0 AND parent_id != 1"; } $sql = "SELECT nev, url FROM kategoria WHERE storno = 'f' AND aktiv = 't' AND parent_id != 0 ". $where ." ORDER BY parent_id, sorrend"; $csatornak = $db->GetArray($sql); return $csatornak; } function csatornak_alap(){ $db = Registry::get('db'); $sql = "SELECT nev, url FROM kategoria WHERE storno = 'f' AND aktiv = 't' AND parent_id = 1 ORDER BY sorrend"; $csatornak = $db->GetArray($sql); return $csatornak; } function csatornak_csat(){ $db = Registry::get('db'); $sql = "SELECT nev, url FROM kategoria WHERE storno = 'f' AND aktiv = 't' AND parent_id = 2 ORDER BY sorrend"; $csatornak = $db->GetArray($sql); return $csatornak; } function menupont($url) { $db = Registry::get('db'); $bind = array($url); $sql = "SELECT cim, szoveg, title, description, keywords FROM menupont m WHERE m.id = ?"; $row = $db->GetRow($sql, $bind); if(empty($row['title'])) $row['title'] = $row['cim']; Registry::get('page')->assign('title', $row['title']); Registry::get('page')->assign('description', $row['description']); Registry::get('page')->assign('keywords', $row['keywords']); return $row; } function banner($n = 1, $hely = '') { $db = Registry::get('db'); $c = new Content(); $ma = date('Y-m-d'); $sql = "SELECT id, url, file FROM banner WHERE storno = 'f' AND (datum >= '" . $ma . "' || datum IS NULL) AND (letoltes < letoltes_max || letoltes_max IS NULL || letoltes_max = 0) AND file != '' AND aktiv = 't'"; if(!empty($hely)) $sql .= " AND hely = '" . $hely . "' "; $sql .= "ORDER BY RAND() LIMIT 0," . $n; $r = $db->Execute($sql); $banner = $r->GetArray(); foreach($banner as $key => $val) { $sql = "UPDATE banner SET letoltes = letoltes+1 WHERE id = " . $val['id']; $db->query($sql); $size = getimagesize(Registry::get('dirroot') . '/img/banner/' . $val['file']); $banner[$key]['type'] = ($size[2] == 4 || $size[2] == 13) ? 'swf' : 'img'; $banner[$key]['w'] = $size[0]; $banner[$key]['h'] = $size[1]; } $c->assign('banner', $banner); return $c->fetch('banner.tpl.html'); } function seoFromDb($id, $lapozas = false, $page_number = 0) { $db = Registry::get('db'); settype($id, 'integer'); $bind = array($id); $sql = "SELECT title, description, keywords FROM seo WHERE id = ?"; $seo = $db->GetRow($sql, $bind); if($lapozas != false && !empty($page_number)){ $seo['title'] = $seo['title'] . ' - ' . $page_number . '. oldal'; $seo['description'] = $seo['description'] . ' - ' . $page_number . '. oldal'; } Registry::get('page')->assign('title', $seo['title']); Registry::get('page')->assign('description', $seo['description']); Registry::get('page')->assign('keywords', $seo['keywords']); return; } function sendEmail($params, $html = false) { $db = Registry::get('db'); $mail = new PHPMailer(); $mail->PluginDir = Registry::get('dirroot').'/include/phpmailer/'; $mail->CharSet = 'utf-8'; $mail->IsHTML($html); if(Registry::get('mailer') == 'smtp') { $mail->IsSMTP(); $mail->Host = Registry::get('smtp_host'); } if(Registry::get('smtp_auth') == true) { $mail->SMTPAuth = true; $mail->Username = Registry::get('smtp_user'); $mail->Password = Registry::get('smtp_pass'); } $mail->Subject = !empty($params['subject']) ? $params['subject'] : ''; $mail->From = $params['from']; $mail->FromName = $params['fromname']; $mail->Body = $params['body']; // címzettek if(is_array($params['to'])) { foreach($params['to'] as $val) { $mail->AddAddress($val); } } elseif(!empty($params['to'])) { $mail->AddAddress($params['to']); } // titkos másolat if(!empty($params['bcc']) && is_array($params['bcc'])) { foreach($params['bcc'] as $val) { $mail->AddBCC($val); } } elseif(!empty($params['bcc'])) { $mail->AddBCC($params['bcc']); } // mellékletek if(!empty($params['attachment']) && is_array($params['attachment'])) { foreach($params['attachment'] as $val) { $mail->AddAttachment($val[0], $val[1]); } } elseif(!empty($params['attachment'])) { $mail->AddAttachment($params['attachment'][0], $params['attachment'][1]); } // beágyazott képek if(!empty($params['images']) && is_array($params['images'])) { foreach($params['images'] as $val) { $mail->AddEmbeddedImage($val[0], $val[1], $val[0], "base64", "image/jpg"); } } elseif(!empty($params['images'])) { $mail->AddEmbeddedImage($params['images'][0], $params['images'][1], $params['images'][0], "base64", "image/jpg"); } if(!$mail->Send()) { die($mail->ErrorInfo); } } function html5_support() { $a = Registry :: get("html5_support"); if(!empty($a)) { return Registry :: get("html5_support"); } else { header("location: /include/html5_check/check.php"); exit; } } } ?>