コード例 #1
0
ファイル: load.php プロジェクト: PotsonHumer/OGS_V2
 function __construct()
 {
     if (!CORE::$cfg['loadScreen']) {
         return false;
     }
     VIEW::assignGlobal(array('TAG_LOAD_SCREEN_CSS' => self::loadCss(), 'TAG_LOAD_SCREEN_HTML' => self::loadHtml(), 'TAG_LOAD_SCREEN_JS' => self::loadJs()));
 }
コード例 #2
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 protected static function form($rowCount = 5)
 {
     CRUD::args_output(true, true);
     $rsnum = CRUD::dataFetch('feedback', array('status' => '1'), false, array('createdate' => 'desc'));
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $row) {
             $scoreArray[] = $row['score'];
             $socreCount[$row['score']]++;
         }
         # 計算平均總分
         $averge = round(array_sum($scoreArray) / $rsnum, 1);
         list($mainScore, $subScore) = explode('.', $averge);
     }
     VIEW::assignGlobal(array('VALUE_TOTAL' => empty($rsnum) ? 0 : $rsnum, 'VALUE_AVERGE_MAIN' => empty($mainScore) ? 0 : $mainScore, 'VALUE_AVERGE_SUB' => empty($subScore) ? 0 : $subScore));
     if (is_array($socreCount)) {
         $s = 6;
         while (--$s > 0) {
             VIEW::newBlock('TAG_SOCRE_LINE');
             $number = empty($socreCount[$s]) ? '0' : $socreCount[$s];
             VIEW::assign(array('VALUE_SCORE_PERCENT' => round(100 / $rsnum * $number) . '%', 'VALUE_SOCRE_COUNT' => $s, 'VALUE_SCORE_NUMBER' => $number));
         }
     }
     $schemaReview = self::row($rowCount);
     SCHEMA::make('feedback', array('count' => $rsnum, 'score' => $averge, 'review' => $schemaReview));
 }
コード例 #3
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 function __construct($func = false, $title = false, $custom = false)
 {
     self::$temp = CORE::$temp_main;
     self::$temp['MAIN'] = 'ogs-response-tpl.html';
     $tplPath = CORE::$temp . self::$temp['MAIN'];
     file_put_contents($tplPath, SYSTEM::$setting['response']);
     switch ($func) {
         case "feedback":
             VIEW::assignGlobal(array('SEO_H1' => !empty($title) ? $title : '感謝您的評價'));
             break;
         case "contact":
             VIEW::assignGlobal(array('SEO_H1' => !empty($title) ? $title : '感謝您的留言'));
             break;
     }
     if (is_array($custom)) {
         VIEW::assignGlobal($custom);
     }
     $msg = SESS::get('msg');
     if (empty($msg)) {
         header('location: ' . CORE::$root . $func . '/');
         exit;
     }
     SESS::del('msg');
     if (is_array($msg)) {
         $output['TAG_NAME'] = CORE::fetchName(array($msg['lastName'], $msg['firstName']), 'call', $msg['gender']);
         foreach ($msg as $field => $var) {
             $output['TAG_' . strtoupper($field)] = $var;
         }
     } else {
         $output['TAG_MSG'] = $msg;
     }
     VIEW::assignGlobal($output);
     CORE::common_resource();
     new VIEW(CORE::$temp_option["HULL"], self::$temp, false, false);
 }
コード例 #4
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function gaLoad($gaCode = false)
 {
     if (!empty($gaCode)) {
         VIEW::assignGlobal('SYSTEM_GA', $gaCode);
         new VIEW('ogs-fn-ga-tpl.html', false, true);
         return VIEW::$output;
     }
 }
コード例 #5
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function notFound()
 {
     CORE::common_resource();
     SEO::load('nofound');
     SEO::output();
     VIEW::assignGlobal('SEO_H1', empty(SEO::$data['h1']) ? '404 not found' : SEO::$data['h1']);
     $temp = CORE::$temp_main;
     $temp["MAIN"] = 'ogs-fn-404-tpl.html';
     new VIEW(CORE::$temp_option["HULL"], $temp, false, false);
 }
コード例 #6
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function nav()
 {
     VIEW::assignGlobal("NAV_CATE_TITLE", 'ABOUT');
     $rsnum = CRUD::dataFetch('intro', array('status' => '1', 'langtag' => CORE::$langtag), false, array('sort' => CORE::$cfg["sort"]));
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $key => $row) {
             VIEW::newBlock("TAG_NAV_LIST");
             VIEW::assign(array("VALUE_NAV_SUBJECT" => $row["subject"], "VALUE_NAV_LINK" => CORE::$root . 'intro/' . SEO::link($row) . '/', "VALUE_NAV_CURRENT" => empty(self::$id) && ++$i == 1 || self::$id == $row["id"] ? 'active' : ''));
         }
     }
 }
コード例 #7
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 function __construct()
 {
     self::$temp = CORE::$temp_main;
     self::$kw = $_POST["kw"];
     self::$temp["NAV"] = '';
     self::$temp["MAIN"] = 'ogs-search-tpl.html';
     self::row();
     new AD();
     VIEW::assignGlobal(array("NAV_CATE_TITLE" => CORE::$lang["search"], "SEO_H1" => CORE::$lang["search"], "VALUE_KW" => self::$kw, "VALUE_RSNUM" => array_sum(self::$rsnum)));
     CRUMBS::fetch('search');
     new VIEW(CORE::$temp_option["HULL"], self::$temp, false, false);
 }
コード例 #8
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function nav()
 {
     list($cate) = CORE::$args;
     VIEW::assignGlobal("NAV_CATE_TITLE", 'PRODUCTS CATE');
     $rsnum = CRUD::dataFetch('products_cate', array('status' => '1', 'parent' => 'null', 'langtag' => CORE::$langtag), false, array('sort' => CORE::$cfg["sort"]));
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $key => $row) {
             VIEW::newBlock("TAG_NAV_LIST");
             VIEW::assign(array("VALUE_NAV_SUBJECT" => $row["subject"], "VALUE_NAV_LINK" => CORE::$root . 'products/' . SEO::link($row) . '/', "VALUE_NAV_CURRENT" => $cate == $row["id"] ? 'current' : ''));
         }
     }
 }
コード例 #9
0
ファイル: images.php プロジェクト: PotsonHumer/OGS_V2
 public static function output($tb_name, $id, $setnum = 0, $tag = false, $tagRow = false)
 {
     $rsnum = IMAGES::load($tb_name, $id);
     # 指定數量
     if (!empty($setnum)) {
         for ($i = 0; $i < $setnum; $i++) {
             $row = IMAGES::$data[$i];
             if (!$tag) {
                 $tag = 'IMAGES_BLOCK';
             }
             if ($tagRow) {
                 VIEW::newBlock($tag);
             } else {
                 VIEW::newBlock($tag . $i);
             }
             if (is_array($row)) {
                 foreach ($row as $field => $var) {
                     VIEW::assign("IMAGES_" . strtoupper($field), $var);
                 }
             }
         }
         return true;
     }
     # 自動偵測
     switch ($rsnum) {
         case "0":
             return false;
             break;
         case "1":
             list($row) = IMAGES::$data;
             foreach ($row as $field => $var) {
                 VIEW::assignGlobal("IMAGES_" . strtoupper($field), $var);
             }
             break;
         default:
             if (!$tag) {
                 $tag = 'IMAGES_BLOCK';
             }
             foreach (IMAGES::$data as $key => $row) {
                 if ($tagRow) {
                     VIEW::newBlock($tag);
                 } else {
                     VIEW::newBlock($tag . $key);
                 }
                 foreach ($row as $field => $var) {
                     VIEW::assign("IMAGES_" . strtoupper($field), $var);
                 }
             }
             break;
     }
 }
コード例 #10
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function cateList($nowID = false)
 {
     $cate = self::cateFetch();
     CHECK::is_array_exist($cate);
     if (CHECK::is_pass()) {
         VIEW::newBlock('TAG_CATE_BLOCK');
         foreach ($cate as $cateID => $cateStr) {
             VIEW::newBlock('TAG_CATE_LIST');
             VIEW::assign(array('VALUE_ID' => $cateID, 'VALUE_SUBJECT' => $cateStr, 'VALUE_CURRENT' => !empty($nowID) && $nowID == $cateID ? 'current' : ''));
         }
         if (empty($nowID)) {
             VIEW::assignGlobal('NONE_CURRENT', 'current');
         }
     }
 }
コード例 #11
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function add($m_id = false)
 {
     $recaptcha = self::recaptcha();
     CHECK::is_must($_POST["name"], $_POST["tel"], $_POST["content"]);
     CHECK::is_email($_POST["email"]);
     if ($recaptcha && CHECK::is_pass()) {
         $args = array('m_id' => !empty($m_id) ? $m_id : "null", 'content' => htmlspecialchars($_POST["content"], ENT_NOQUOTES));
         $args = array_merge($_POST, $args);
         CRUD::dataInsert('contact', $args);
         if (!empty(DB::$error)) {
             $msg = DB::$error;
         } else {
             foreach ($_POST as $field => $var) {
                 switch ($field) {
                     case "subject":
                         $subjectmail = self::subjectFetch($var, 'email');
                         $var = self::subjectFetch($var, 'subject');
                         break;
                     case "gender":
                         $var = empty($var) ? CORE::$lang["female"] : CORE::$lang["male"];
                         break;
                 }
                 VIEW::assignGlobal('VALUE_' . strtoupper($field), $var);
             }
             $msg = CORE::$lang["submit_done"];
             $mail_temp = 'ogs-mail-contact-tpl.html';
             # 信件樣板
             new VIEW($mail_temp, false, true, false);
             $fromMail = !empty($subjectmail) ? $subjectmail : SYSTEM::$setting["email"];
             CORE::mail_handle($_POST["email"], $fromMail, VIEW::$output, CORE::$lang["contact_mail"], SYSTEM::$setting["name"]);
             # 寄出認證信
             $rs = true;
         }
     } else {
         $msg = CHECK::$alert;
         if (empty($recaptcha)) {
             $msg = '請勾選驗證';
         }
         CRUD::args_output();
     }
     if ($rs) {
         RESPONSE::register($_POST, CORE::$root . 'contact/thankyou/');
         exit;
     } else {
         CORE::msg($msg, CORE::$root . 'contact/');
     }
 }
コード例 #12
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 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;
 }
コード例 #13
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function row()
 {
     CORE::res_init('tab', 'box');
     $rsnum = CRUD::dataFetch('system', array('id' => '1'));
     if (!empty($rsnum)) {
         $row = CRUD::$data[0];
         foreach ($row as $field => $var) {
             VIEW::assignGlobal("VALUE_" . strtoupper($field), $var);
         }
     }
     # SEO
     $rsnum = CRUD::dataFetch('seo', array('custom' => "name != ''", 'langtag' => CORE::$langtag));
     if (!empty($rsnum)) {
         VIEW::newBlock("TAG_SEO_BLOCK");
         foreach (CRUD::$data as $key => $row) {
             VIEW::newBlock("TAG_SEO_TITLE");
             switch ($row["name"]) {
                 case "index":
                     VIEW::assign("VALUE_NAME", self::$lang['home']);
                     break;
                 default:
                     VIEW::assign("VALUE_NAME", self::$lang[$row["name"]]);
                     break;
             }
             VIEW::newBlock("TAG_SEO_TAB");
             foreach ($row as $field => $var) {
                 switch ($field) {
                     case "name":
                         $name = $var == 'index' ? self::$lang['home'] : self::$lang[$var];
                         VIEW::assign("VALUE_" . strtoupper($field), $name);
                         break;
                     default:
                         VIEW::assign("VALUE_" . strtoupper($field), $var);
                         break;
                 }
             }
         }
     }
 }
コード例 #14
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function language_select()
 {
     if (!empty(self::$langID) && CRUD::dataFetch('lang', array('id' => self::$langID))) {
         list($row) = CRUD::$data;
         $related = json_decode($row["related"], true);
     }
     unset($option, $option_array);
     $lang_array = array_keys(CORE::$cfg["lang"]);
     foreach ($lang_array as $lang) {
         $path = $lang == $lang_array[0] ? CORE::$cfg["root"] : CORE::$cfg["root"] . $lang . '/';
         $selected = CORE::$cfg["router"] == $lang ? 'selected' : '';
         $args = CORE::$args;
         if (!empty($related[$lang])) {
             array_pop($args);
             $lang_path = self::$func . '/' . implode("/", $args) . '/' . $related[$lang] . '/';
         } else {
             $args = is_array($args) && count($args) ? implode("/", $args) . '/' : '';
             $lang_path = self::$func . '/' . $args;
         }
         $option_array[] = '<option value="' . $path . 'ogsadmin/' . $lang_path . '" ' . $selected . '>' . self::$lang[$lang] . '</option>';
     }
     $option = implode("", $option_array);
     VIEW::assignGlobal("VALUE_LANGUAGE_OPTION", $option);
 }
コード例 #15
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 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/');
     }
 }
コード例 #16
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function reset_password($id)
 {
     CRUD::dataFetch('member', array('id' => $id));
     list($row) = CRUD::$data;
     $rand_password = CORE::rand_password();
     $forget_temp = 'ogs-mail-forget-tpl.html';
     CRUD::dataUpdate('member', array('password' => md5($rand_password), 'id' => $row["id"]));
     CORE::msg(self::$lang["forget_send"], CORE::$manage . 'member/detail/' . $row["id"] . '/');
     # 原本樣板
     new VIEW(self::$temp_option["HULL"], self::$temp, true, 1);
     $origin_output = VIEW::$output;
     # 輸出取回密碼樣板
     VIEW::assignGlobal('VALUE_RAND_PASSWORD', $rand_password);
     new VIEW($forget_temp, false, true, false);
     CORE::mail_handle(SYSTEM::$setting["email"], $row["email"], VIEW::$output, self::$lang["forget_recall"], SYSTEM::$setting["name"]);
     # 寄出認證信
     exit;
 }
コード例 #17
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function output($view = false)
 {
     $schemaJson = self::jsonEncode();
     if (!empty($schemaJson)) {
         $schemaFull = '<script type="application/ld+json">' . $schemaJson . '</script>';
         if ($view) {
             VIEW::assignGlobal('TAG_SCHEMA', $schemaFull);
         } else {
             return $schemaFull;
         }
     }
 }
コード例 #18
0
ファイル: core.php プロジェクト: PotsonHumer/OGS_V2
 public static function res_init()
 {
     static $box_title;
     static $css_title;
     static $js_title;
     static $custom_title;
     if (self::$bgend) {
         self::$mobileDir = '';
     }
     $new_title = func_get_args();
     $res_type = array_pop($new_title);
     # 最後一個值為資源類型
     switch ($res_type) {
         case "footer_box":
             $footer_tag = "TAG_BOX_FOOTER";
             $res_title = 'box_footer';
             break;
         case "footer_css":
             $footer_tag = "TAG_CSS_FOOTER";
             $res_title = 'css_footer';
             break;
         case "footer_js":
             $footer_tag = "TAG_JS_FOOTER";
             $res_title = 'js_footer';
             break;
         case "footer_custom":
             $footer_tag = "TAG_CUSTOM_FOOTER";
             $res_title = 'custom_footer';
             break;
             ###########################################
         ###########################################
         case "box":
             $res_tag = "TAG_JS_BOX";
             $res_title = 'box_title';
             break;
         case "css":
             $res_tag = "TAG_CSS_INCLUDE";
             $res_title = 'css_title';
             break;
         case "js":
             $res_tag = "TAG_JS_INCLUDE";
             $res_title = 'js_title';
             break;
         case "custom":
             $res_tag = "TAG_CUSTOM_INCLUDE";
             $res_title = 'custom_title';
             break;
     }
     if (is_array(${$res_title})) {
         ${$res_title} = array_merge(${$res_title}, $new_title);
     } else {
         ${$res_title} = $new_title;
     }
     if (count(${$res_title})) {
         # 利用翻轉刪除重複的值
         ${$res_title} = array_flip(${$res_title});
         ${$res_title} = array_flip(${$res_title});
         foreach (${$res_title} as $key => $value) {
             switch ($res_type) {
                 case "box":
                     $res_path = self::$cfg["js"] . 'box_serial/' . $value . '_box.js';
                     $res_insert .= '<script src="' . $res_path . '" type="text/javascript" defer></script>' . "\n";
                     $footer = false;
                     break;
                 case "css":
                     $res_path = self::$cfg["css"] . self::$mobileDir . $value . '.css';
                     $res_insert .= '<link href="' . $res_path . '" rel="stylesheet" type="text/css" />' . "\n";
                     $footer = false;
                     break;
                 case "js":
                     $res_path = self::$cfg["js"] . $value . '.js';
                     $res_insert .= '<script src="' . $res_path . '" type="text/javascript" defer></script>' . "\n";
                     $footer = false;
                     break;
                 case "custom":
                     $value_array = explode(".", $value);
                     $custom_type = array_pop($value_array);
                     $res_path = $value;
                     switch ($custom_type) {
                         case "css":
                             $res_insert .= '<link href="' . $res_path . '" rel="stylesheet" type="text/css" />' . "\n";
                             break;
                         case "js":
                             $res_insert .= '<script src="' . $res_path . '" type="text/javascript" defer></script>' . "\n";
                             break;
                     }
                     $footer = false;
                     break;
                 case "footer_box":
                     $res_path = self::$cfg["js"] . 'box_serial/' . $value . '_box.js';
                     $footer_insert .= '<script src="' . $res_path . '" type="text/javascript" defer></script>' . "\n";
                     $footer = true;
                     break;
                 case "footer_css":
                     $res_path = self::$cfg["css"] . self::$mobileDir . $value . '.css';
                     $footer_insert .= '<link href="' . $res_path . '" rel="stylesheet" type="text/css" />' . "\n";
                     $footer = true;
                     break;
                 case "footer_js":
                     $res_path = self::$cfg["js"] . $value . '.js';
                     $footer_insert .= '<script src="' . $res_path . '" type="text/javascript" defer></script>' . "\n";
                     $footer = true;
                     break;
                 case "footer_custom":
                     $value_array = explode(".", $value);
                     $custom_type = array_pop($value_array);
                     $res_path = $value;
                     switch ($custom_type) {
                         case "css":
                             $footer_insert .= '<link href="' . $res_path . '" rel="stylesheet" type="text/css" />' . "\n";
                             break;
                         case "js":
                             $footer_insert .= '<script src="' . $res_path . '" type="text/javascript" defer></script>' . "\n";
                             break;
                     }
                     $footer = true;
                     break;
             }
             if (preg_match('/^http/', $res_path)) {
                 $direct_insert .= $footer ? $footer_insert : $res_insert;
                 continue;
             }
             if (self::$cfg['directInclude'] && !self::$bgend) {
                 if (!$footer) {
                     $direct_insert .= DINCLUDE::allHandle($res_path);
                 } else {
                     $direct_footer .= DINCLUDE::allHandle($res_path);
                 }
             }
         }
         if (self::$cfg['directInclude'] && !self::$bgend) {
             VIEW::assignGlobal($res_tag, $direct_insert);
             VIEW::assignGlobal($footer_tag, $direct_footer);
         } else {
             VIEW::assignGlobal($res_tag, $res_insert);
             VIEW::assignGlobal($footer_tag, $footer_insert);
         }
     }
 }
コード例 #19
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 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/');
     }
 }
コード例 #20
0
ファイル: share.php プロジェクト: PotsonHumer/OGS_V2
 private static function output()
 {
     VIEW::assignGlobal(array('SHARE_PREFIX' => 'prefix="' . self::$prefix . '"', 'SHARE_META' => is_array(self::$meta) ? implode("\n", self::$meta) : '', 'SHARE_LINE' => "javascript: void(window.open('http://line.naver.jp/R/msg/text/?'.concat(encodeURIComponent(location.href)) ));", 'SHARE_FACEBOOK' => "javascript: void(window.open('http://www.facebook.com/share.php?u=" . self::$url . "'));", 'SHARE_TWITTER' => "javascript: void(window.open('http://twitter.com/home/?status=" . self::$url . "'));", 'SHARE_GPLUS' => "javascript: void(window.open('https://plus.google.com/share?url=" . self::$url . "'));"));
 }
コード例 #21
0
ファイル: core.php プロジェクト: PotsonHumer/OGS_V3
 public static function msg($msg = false, $redirect = false, $sec = 2)
 {
     if (is_array($msg) && count($msg) == "2") {
         $msg_array = $msg;
         $msg = $msg_array[0];
         $redirect = $msg_array[1];
     }
     if (!empty($msg)) {
         VIEW::assignGlobal("TAG_MSG", $msg);
     }
     if (!empty($redirect)) {
         header("Refresh: {$sec}; url={$redirect}");
     }
 }
コード例 #22
0
ファイル: crud.php プロジェクト: PotsonHumer/OGS_V2
 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;
     }
 }
コード例 #23
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function detail()
 {
     $rsnum = CRUD::dataFetch('products', array('id' => self::$id));
     if (!empty($rsnum)) {
         list($row) = CRUD::$data;
         foreach ($row as $field => $var) {
             VIEW::assignGlobal("VALUE_" . strtoupper($field), $var);
         }
         SCHEMA::make('products_detail', $row);
         VIEW::assignGlobal("VALUE_BACK_LINK", self::dataLink(self::$cate));
         IMAGES::load('products', $row["id"]);
         foreach (IMAGES::$data as $key => $images) {
             switch ($key) {
                 case 0:
                     break;
                 case 1:
                     foreach ($images as $field => $var) {
                         VIEW::assignGlobal("IMAGE_" . strtoupper($field), $var);
                     }
                 default:
                     VIEW::newBlock("TAG_IMAGES");
                     foreach ($images as $field => $var) {
                         VIEW::assign("IMAGES_" . strtoupper($field), $var);
                     }
                     break;
             }
         }
         if (empty($row["discount"])) {
             VIEW::assignGlobal("DISCOUNT_NONE", 'style="display: none;"');
         }
         SEO::load($row["seo_id"]);
         if (empty(SEO::$data["h1"])) {
             SEO::$data["h1"] = $row["subject"];
         }
         SEO::output();
         CRUMBS::fetch('products', $row);
         while (++$i <= 99) {
             VIEW::newBlock("TAG_AMOUNT_LIST");
             VIEW::assign("VALUE_AMOUNT", $i);
         }
         PRODUCTS::related($row['related']);
     }
 }
コード例 #24
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 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);
         }
     }
 }
コード例 #25
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function bind($p_id = false)
 {
     $p_row = self::products_list($p_id);
     if (empty($p_id)) {
         VIEW::newBlock("TAG_NONE_STOCK");
     } else {
         VIEW::newBlock("TAG_STOCK_BLOCK");
         VIEW::assign("VALUE_P_NAME", $p_row["list_name"]);
         $rsnum = CRUD::dataFetch('stock_bind', array('p_id' => $p_row["id"]), false, array('sort' => CORE::$cfg["sort"]));
         if (!empty($rsnum)) {
             foreach (CRUD::$data as $row) {
                 VIEW::newBlock("TAG_STOCK_LIST");
                 foreach ($row as $field => $var) {
                     switch ($field) {
                         case "item":
                             $item = json_decode($var);
                             VIEW::assign('VALUE_STOCK_SELECT', self::item_cate($item));
                             break;
                         case "status":
                             VIEW::assign('VALUE_' . strtoupper($field) . '_CK' . $var, 'selected');
                             break;
                         default:
                             VIEW::assign('VALUE_' . strtoupper($field), $var);
                             break;
                     }
                 }
             }
         } else {
             VIEW::newBlock("TAG_STOCK_LIST");
             VIEW::assign(array("VALUE_P_ID" => $p_row["id"], "VALUE_STOCK_SELECT" => self::item_cate()));
         }
         VIEW::assignGlobal(array("JS_STOCK_SELECT" => self::item_cate(), "JS_P_ID" => $p_row["id"]));
     }
 }
コード例 #26
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function reverify()
 {
     $manager = SESS::get("MANAGER");
     $reverify_code = CORE::rand_password();
     SESS::write('reverify', $reverify_code);
     $mail_temp = 'ogs-mail-manager-reverify-tpl.html';
     VIEW::assignGlobal('VALUE_REVERIFY_CODE', $reverify_code);
     new VIEW($mail_temp, false, true, 1);
     CORE::mail_handle(SYSTEM::$setting["email"], $manager["account"], VIEW::$output, CORE::$lang["manager_verify"], SYSTEM::$setting["name"]);
     # 寄出認證信
 }
コード例 #27
0
ファイル: seo.php プロジェクト: PotsonHumer/OGS_V2
 public static function output($args = false)
 {
     if (is_array($args)) {
         $output = $args;
     } else {
         $output = self::$data;
     }
     CHECK::is_array_exist($output);
     if (CHECK::is_pass()) {
         foreach ($output as $field => $var) {
             switch ($field) {
                 case "short_desc":
                     $var = !empty($var) ? "<h2>{$var}</h2>" : '';
                     break;
             }
             self::$output[$field] = $var;
             VIEW::assignGlobal("SEO_" . strtoupper($field), $var);
         }
     }
 }
コード例 #28
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 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/');
     }
 }
コード例 #29
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 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/');
     }
 }
コード例 #30
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function detail()
 {
     $rsnum = CRUD::dataFetch('blog', array('id' => self::$id));
     if (!empty($rsnum)) {
         list($row) = CRUD::$data;
         foreach ($row as $field => $var) {
             VIEW::assignGlobal("VALUE_" . strtoupper($field), $var);
         }
         VIEW::assignGlobal("VALUE_BACK_LINK", CORE::$root . 'blog/');
         SEO::load($row["seo_id"]);
         if (empty(SEO::$data["h1"])) {
             SEO::$data["h1"] = $row["subject"];
         }
         SEO::output();
         CRUMBS::fetch('blog', $row);
         MESSAGE::$dataID = $row['id'];
         MESSAGE::$func = 'blog';
         new MESSAGE();
         VIEW::assignGlobal('TAG_MESSAGE_BLOCK', MESSAGE::$output);
         SCHEMA::make('blog_detail', $row);
     }
 }