public static function handle($select, $sql, $rsnum) { if (empty(self::$num)) { self::$num = CORE::$cfg["item_num"]; } if (!empty($rsnum) && $rsnum > self::$num) { $offset = 0; list($offset, $oldNum) = explode(',', $select['limit']); self::$all = ceil($rsnum / self::$num); # 總頁數 if (empty(self::$now)) { self::$now = 1; } if (self::$now < 0 || self::$now > self::$all) { self::$now = 1; } self::$start = $limit_start = self::$num * self::$now - self::$num + $offset; # limit 開始資料列數 $new_limit = $limit_start . "," . self::$num; # limit 組合完成 $select['limit'] = $new_limit; $sql_page = DB::select($select); $page = array($sql_page, DB::num($sql_page)); self::row(); } else { self::$now = 1; $page = array($sql, $rsnum); } SESS::write('PAGE', self::$now); return $page; }
function __construct() { list($args) = CORE::$args; self::$m_id = SESS::get('m_id'); self::$temp = CORE::$temp_main; CRUMBS::fetch('feedback'); SEO::load('feedback'); if (empty(SEO::$data["h1"])) { SEO::$data["h1"] = CORE::$lang['feedback']; } SEO::output(); switch ($args) { case "thankyou": new RESPONSE('feedback', CORE::$lang['feedbackThanks']); break; case "list": # 顯示反饋 self::$temp["MAIN"] = 'ogs-feedback-list-tpl.html'; self::row(); break; case "add": # 執行增加反饋 self::$temp["MAIN"] = CORE::$temp_option["MSG"]; self::add(); break; default: self::$temp["MAIN"] = 'ogs-feedback-tpl.html'; break; } CORE::common_resource(); new VIEW(CORE::$temp_option["HULL"], self::$temp, false, false); }
public static function del() { self::$act = 'del'; self::$args = func_get_args(); self::get(); self::$act = false; self::$args = false; }
private static function check() { $manager = SESS::get('MANAGER'); if (is_array($manager) && !empty($manager["id"])) { $rsnum = CRUD::dataFetch('manager', array('id' => $manager["id"], 'status' => '1', 'ban' => '0')); if ($rsnum == 1) { return true; } } return false; }
public static function register($msg, $path) { CHECK::is_array_exist($msg); if (CHECK::is_pass()) { foreach ($msg as $field => $var) { SESS::write('msg', $field, $var); } } else { SESS::write('msg', $msg); } header("location: {$path}"); }
public static function fetch() { SESS::del('SK'); if (!empty(self::$now)) { SESS::write('SK', self::$now); $sk_str = urldecode(self::$now); $sk_str = str_replace('sk-', '', $sk_str); $sk_array = explode("|", $sk_str); foreach ($sk_array as $sk_group) { list($field, $value) = explode(":", $sk_group); if (!empty($value)) { $subCK = preg_match('/^sub-/', $field) ? true : false; $output = false; if ($subCK) { list($prefix, $orignField) = explode('-', $field); $field = $orignField; } switch (true) { case $field == "parent": $output = "{$field} = '{$value}'"; break; default: $output = "{$field} like '%{$value}%'"; break; } if (!$subCK) { $sk[] = $output; } else { $sub[] = $output; $field = 'SUB_' . $orignField; } self::$args[$field] = $value; VIEW::assignGlobal("SK_" . strtoupper($field), $value); } } if (is_array($sub)) { self::$sub = implode(" and ", $sub); } if (is_array($sk)) { return implode(" and ", $sk); } } return false; }
function __construct() { list($func) = CORE::$args; self::$temp = CORE::$temp_main; $m_id = SESS::get('m_id'); switch ($func) { case "thankyou": new RESPONSE('contact', CORE::$lang['contactThanks']); break; case "add": self::$temp["MAIN"] = CORE::$temp_option["MSG"]; self::add($m_id); break; default: self::$temp["MAIN"] = 'ogs-contact-tpl.html'; self::form($m_id); break; } PRODUCTS::nav(); new VIEW(CORE::$temp_option["HULL"], self::$temp, false, false); }
private static function detail($id) { $rsnum = CRUD::dataFetch('products', array('id' => $id)); if (!empty($rsnum)) { list($row) = CRUD::$data; foreach ($row as $field => $var) { switch ($field) { case "related": PRODUCTS::related($var); break; case "parent": VIEW::assignGlobal("VALUE_" . strtoupper($field) . "_OPTION", self::cate_select($var)); break; case "status": VIEW::assignGlobal("VALUE_" . strtoupper($field) . "_CK" . $var, 'selected'); break; default: VIEW::assignGlobal("VALUE_" . strtoupper($field), $var); break; } } IMAGES::output('products', $row["id"]); SEO::load($row["seo_id"]); SEO::output(); $page_args = SESS::get("PAGE"); $sk_args = SESS::get('SK'); if (!empty($page_args)) { $page = "page-{$page_args}/"; } if (!empty($sk_args)) { $sk = "{$sk_args}/"; } VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "products/{$sk}{$page}"); parent::$langID = $row['lang_id']; } else { self::$temp["MAIN"] = self::$temp_option["MSG"]; CORE::msg(self::$lang["no_args"], CORE::$manage . 'products/'); } }
private static function reverify_act() { $manager = SESS::get("MANAGER"); $verify_code = SESS::get('reverify'); if ($verify_code === $_POST["verify_code"] && !empty($verify_code)) { setcookie(CORE::$cfg["sess"] . '_autoLogin', $manager["id"], time() + 60 * 60 * 24 * 365, '/'); $msg = self::$lang["verify_done"]; $path = CORE::$manage; } else { $msg = self::$lang["verify_error"]; $path = CORE::$manage; } CORE::msg($msg, $path); }
public static function noTransGo($output) { if (self::$noTrans) { $noTrans = SESS::get('noTrans'); if (is_array($noTrans) && count($noTrans)) { foreach ($noTrans as $key => $s) { #preg_replace('[\\]*', '\\\\', $s); $GBs = BIG2GB::go($s); $output = preg_replace('/(' . $GBs . ')+/', $s, $output); } } self::$noTrans = false; SESS::del('noTrans'); } return $output; }
private static function detail($id) { $rsnum = CRUD::dataFetch('faq', array('id' => $id)); if (!empty($rsnum)) { list($row) = CRUD::$data; foreach ($row as $field => $var) { switch ($field) { case "parent": VIEW::assignGlobal("VALUE_" . strtoupper($field) . "_OPTION", self::cate_select($var)); break; case "status": VIEW::assignGlobal("VALUE_" . strtoupper($field) . "_CK" . $var, 'selected'); break; default: VIEW::assignGlobal("VALUE_" . strtoupper($field), $var); break; } } $last_page = SESS::get("PAGE"); if (!empty($last_page)) { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "faq/page-{$last_page}/"); } else { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "faq/"); } parent::$langID = $row['lang_id']; } else { self::$temp["MAIN"] = self::$temp_option["MSG"]; CORE::msg(self::$lang["no_args"], CORE::$manage . 'faq/'); } }
private static function detail($id) { $rsnum = CRUD::dataFetch('ad', array('id' => $id)); if (!empty($rsnum)) { list($row) = CRUD::$data; foreach ($row as $field => $var) { switch ($field) { case "cateID": VIEW::assignGlobal("VALUE_" . strtoupper($field) . "_OPTION", AD::cateSelect($var)); break; case "status": VIEW::assignGlobal("VALUE_" . strtoupper($field) . "_CK" . $var, 'selected'); break; default: VIEW::assignGlobal("VALUE_" . strtoupper($field), $var); break; } } IMAGES::output('ad', $row["id"]); SEO::load($row["seo_id"]); SEO::output(); $last_page = SESS::get("PAGE"); if (!empty($last_page)) { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "ad/page-{$last_page}/"); } else { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "ad/"); } } else { self::$temp["MAIN"] = self::$temp_option["MSG"]; CORE::msg(self::$lang["no_args"], CORE::$manage . 'ad/'); } }
private static function detail($id) { $rsnum = CRUD::dataFetch('member', array('id' => $id)); if ($rsnum == 1) { list($row) = CRUD::$data; foreach ($row as $field => $var) { switch ($field) { case "verify": if ($var) { VIEW::assignGlobal(array("VALUE_" . strtoupper($field) => 'checked', "VALUE_DISABLE" => 'disabled')); } break; case "gender": VIEW::assignGlobal("VALUE_" . strtoupper($field) . '_CK' . $var, 'selected'); break; case "status": VIEW::assignGlobal("VALUE_" . strtoupper($field) . '_CK' . $var, 'selected'); break; default: VIEW::assignGlobal("VALUE_" . strtoupper($field), $var); break; } } $page_args = SESS::get("PAGE"); $sk_args = SESS::get('SK'); if (!empty($page_args)) { $page = "page-{$page_args}/"; } if (!empty($sk_args)) { $sk = "{$sk_args}/"; } VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "member/{$sk}{$page}"); } else { self::$temp["MAIN"] = self::$temp_option["MSG"]; CORE::msg(self::$lang["no_args"], CORE::$manage . 'member/'); } }
private static function login() { CHECK::is_email($_POST["account"]); CHECK::is_password($_POST["password"]); if (CHECK::is_pass()) { $rsnum = CRUD::dataFetch('manager', array('ban' => '0', 'status' => '1', 'account' => $_POST["account"], 'password' => md5($_POST["password"]))); if ($rsnum == 1) { list($manager) = CRUD::$data; $pass = true; } } if (!$pass) { $fail_count = SESS::get('LOGIN_FAIL'); SESS::write('LOGIN_FAIL', ++$fail_count); if ($fail_count <= 3) { CORE::msg(self::$lang["login_error"], CORE::$manage . 'manager/login/'); } else { # 失敗超過三次禁止登入 session_destroy(); CRUD::dataInsert('ban', array('ip' => CORE::getIP())); CORE::msg(self::$lang["login_ban"], CORE::$root); } } else { if (!empty($_POST["cookie"])) { $path = CORE::$manage . 'manager/reverify/'; } else { $path = CORE::$manage; } SESS::write("MANAGER", $manager); CORE::msg(self::$lang["login_success"], $path); } }
private static function detail($id) { $rsnum = CRUD::dataFetch('contact', array('id' => $id)); if (!empty($rsnum)) { list($row) = CRUD::$data; foreach ($row as $field => $var) { switch ($field) { case "gender": $var = empty($var) ? self::$lang["female"] : self::$lang["male"]; if (is_null($var)) { $var = self::$lang["null"]; } default: VIEW::assignGlobal("VALUE_" . strtoupper($field), $var); break; } } $last_page = SESS::get("PAGE"); if (!empty($last_page)) { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "contact/page-{$last_page}/"); } else { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "contact/"); } } else { self::$temp["MAIN"] = self::$temp_option["MSG"]; CORE::msg(self::$lang["no_args"], CORE::$manage . 'contact/'); } }
private static function detail($id) { $rsnum = CRUD::dataFetch('gallery', array('id' => $id)); if (!empty($rsnum)) { list($row) = CRUD::$data; foreach ($row as $field => $var) { switch ($field) { case "related": GALLERY::related($var); break; case "parent": $field = $field . '_OPTION'; $var = self::cate_select($var); break; case "status": $field = $field . '_ck' . $var; $var = 'selected'; break; } $output["VALUE_" . strtoupper($field)] = $var; } VIEW::assignGlobal($output); IMAGES::output('gallery', $row["id"]); foreach (IMAGES::$data as $images) { VIEW::newBlock('TAG_IMAGES_LIST'); foreach ($images as $field => $var) { $images['IMAGES_' . strtoupper($field)] = $var; } VIEW::assign($images); } SEO::load($row["seo_id"]); SEO::output(); $last_page = SESS::get("PAGE"); if (!empty($last_page)) { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "gallery/page-{$last_page}/"); } else { VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$manage . "gallery/"); } parent::$langID = $row['lang_id']; } else { self::$temp["MAIN"] = self::$temp_option["MSG"]; CORE::msg(self::$lang["no_args"], CORE::$manage . 'gallery/'); } }
public static function args_output($output = false, $tpl = false, $args = false) { if (!$output) { $sess_args = $args !== false ? $args : $_REQUEST; /* if(is_array($sess_args)){ foreach($sess_args as $field => $var){ $newArgs[$field] = urlencode($var); } $newArgsJson = json_encode($newArgs); }else{ $newArgsJson = json_encode(urlencode($sess_args)); } */ $newArgsJson = json_encode($sess_args); SESS::write('last_args', urlencode($newArgsJson)); } else { $output_args = $args !== false ? $args : SESS::get('last_args'); if (!empty($output_args)) { $argsArray = json_decode(urldecode($output_args), true); } CHECK::is_array_exist($argsArray); if (CHECK::is_pass()) { self::$args = $argsArray; if ($tpl) { foreach ($argsArray as $field => $value) { #$value = urldecode($value); switch ($field) { case "filename": case "title": case "h1": case "keywords": case "description": case "short_desc": $prefix = "SEO_"; break; default: $prefix = "VALUE_"; break; } VIEW::assignGlobal($prefix . strtoupper($field), $value); } } } SESS::del('last_args'); return self::$args; } }
private static function finish() { self::car(); #$account_check = CRUD::dataFetch('member',array('account' => $_POST["account"])); CHECK::is_must($_POST["name"], $_POST["tel"], $_POST["cell"], $_POST["add_name"], $_POST["add_tel"], $_POST["add_address"]); if (!empty($_POST["first"])) { # 未登入 /* CHECK::is_email($_POST["account"]); CHECK::is_password($_POST["password"]); CHECK::is_same($_POST["password"],$_POST["match_password"]); $pass = CHECK::is_pass(); if($pass && empty($account_check)){ $new_member_rs = self::new_member(); }else{ CORE::msg(CORE::$lang["account_exist"].'或'.CORE::$lang["args_error"],CORE::$root); } */ } else { # 已登入 $pass = CHECK::is_pass(); } if ($pass) { $serial = self::new_serial(); #$email = (empty($_POST["first"]))?$_POST["email"]:$_POST["account"]; $email = $_POST["email"]; $name = $_POST["name"]; $order = array('m_id' => self::$id, 'serial' => $serial, 'status' => !empty($_POST["first"]) ? 11 : 0, 'createdate' => date("Y-m-d H:i:s"), 'subtotal' => self::$subtotal, 'ship' => self::$ship, 'total' => self::$total, 'email' => $email); $order = array_merge($order, $_POST); CRUD::dataInsert('order', $order); $o_id = DB::get_id(); if (empty(DB::$error)) { $cartRow = SESS::get('cart'); foreach ($cartRow as $id => $cart) { $item = array('serial' => $serial, 'p_id' => $cart["p_id"], 'name' => $cart["name"], 'amount' => $cart["amount"], 'price' => $cart["price"]); CRUD::dataInsert('order_item', $item); if (!empty(DB::$error)) { break; } } } if (empty(DB::$error)) { # 訂購確認信 foreach ($order as $field => $var) { VIEW::assignGlobal("VALUE_" . strtoupper($field), $var); } new VIEW('ogs-mail-cart-tpl.html', false, true, false); CORE::mail_handle(SYSTEM::$setting["email"], $email, VIEW::$output, CORE::$lang["cart_mail"], SYSTEM::$setting["name"]); CORE::mail_handle($email, SYSTEM::$setting["email"], VIEW::$output, CORE::$lang["cart_mail"], $name); # 會員認證信 /* VIEW::assignGlobal('VALUE_VERIFY_PATH',self::$verify); new VIEW('ogs-mail-verify-tpl.html',false,true,false); CORE::mail_handle(SYSTEM::$setting["email"],$email,VIEW::$output,CORE::$lang["regist_mail"],SYSTEM::$setting["name"]); */ SESS::del('cart'); CORE::msg(CORE::$lang["cart_done"], CORE::$root . "member/order/{$o_id}/"); } else { # 發生錯誤 CORE::msg(DB::$error, CORE::$root); } } else { if (!$pass || empty($_POST["first"])) { CORE::msg(CHECK::$alert, CORE::$root); } } }
private static function login($path = 'member') { CHECK::is_email($_POST["account"]); CHECK::is_password($_POST["password"]); if (CHECK::is_pass()) { $rsnum = CRUD::dataFetch('member', array('status' => '1', 'verify' => '1', 'account' => $_POST["account"], 'password' => md5($_POST["password"]))); if ($rsnum == 1) { list($row) = CRUD::$data; SESS::write('m_id', $row["id"]); CORE::msg(CORE::$lang["login_done"], CORE::$root . $path); return true; } else { CORE::msg(CORE::$lang["login_error"], CORE::$root . $path); return false; } } else { CORE::msg(CHECK::$alert, CORE::$root . $path); return false; } }