コード例 #1
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function row()
 {
     $rsnum = CRUD::dataFetch('feedback', false, false, array('createdate' => 'desc'), false, true);
     if (!empty($rsnum)) {
         VIEW::newBlock("TAG_FEEDBACK_BLOCK");
         $data = CRUD::$data;
         foreach ($data as $key => $row) {
             VIEW::newBlock("TAG_FEEDBACK_LIST");
             foreach ($row as $field => $var) {
                 switch ($field) {
                     case "gender":
                         $gender = $var ? self::$lang['male'] : self::$lang['female'];
                         $var = $gender;
                         break;
                     case "status":
                         $status = $var ? self::$lang["status_on"] : self::$lang["status_off"];
                         if (empty($var)) {
                             VIEW::assign("CLASS_STATUS_RED", 'red');
                         }
                         $var = $status;
                         break;
                 }
                 VIEW::assign("VALUE_" . strtoupper($field), $var);
             }
             VIEW::assign('VALUE_NUMBER', PAGE::$start + ++$i);
         }
     } else {
         VIEW::newBlock("TAG_NONE");
     }
 }
コード例 #2
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function form($m_id = false)
 {
     if (!empty($m_id)) {
         CRUD::dataFetch('member', array('id' => $m_id));
         list($row) = CRUD::$data;
         foreach ($row as $field => $var) {
             switch ($field) {
                 case "gender":
                     $field = $field . '_CK' . $var;
                     $var = 'selected';
                     break;
             }
             $output['VALUE_' . strtoupper($field)] = $var;
         }
     }
     $output['VALUE_SUBJECT_OPTION'] = self::subjectOption($row['subject']);
     VIEW::assignGlobal($output);
     CRUD::args_output(true, true);
     SEO::load('contact');
     if (empty(SEO::$data["h1"])) {
         SEO::$data["h1"] = CORE::$lang["contact"];
     }
     SEO::output();
     CRUMBS::fetch('contact');
 }
コード例 #3
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 public static function row()
 {
     $args = !self::$cate ? array('status' => '1') : array('status' => '1', 'id' => self::$cate);
     $rsnum = CRUD::dataFetch('ad_cate', $args);
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         $nowDate = date("Y-m-d");
         foreach ($dataRow as $key => $cate) {
             $rsnum = CRUD::dataFetch('ad', array('langtag' => CORE::$langtag, 'parent' => $cate["id"], 'custom' => "status = '1' or (status = '2' and startdate <= '{$nowDate}' and limitdate >= '{$nowDate}')"));
             if (!empty($rsnum)) {
                 VIEW::newBlock("TAG_AD_BLOCK" . $cate["id"]);
                 foreach (CRUD::$data as $key => $row) {
                     VIEW::newBlock("TAG_AD_LIST" . $cate["id"]);
                     foreach ($row as $field => $var) {
                         switch ($field) {
                             case "link":
                                 if (empty($var)) {
                                     $var = '#';
                                 }
                             default:
                                 VIEW::assign("VALUE_" . strtoupper($field), $var);
                                 break;
                         }
                     }
                     IMAGES::load('ad', $row["id"]);
                     list($images) = IMAGES::$data;
                     VIEW::assign(array("VALUE_IMAGE" => $images["path"], "VALUE_ALT" => $images["alt"], "VALUE_TITLE" => $images["title"]));
                 }
             }
         }
     }
 }
コード例 #4
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function row()
 {
     $rsnum = CRUD::dataFetch('feedback', array('status' => '1'), false, array('createdate' => 'desc'));
     if (!empty($rsnum)) {
         VIEW::newBlock('TAG_FEEDBACK_BLOCK');
         $dataRow = CRUD::$data;
         foreach ($dataRow as $key => $row) {
             VIEW::newBlock('TAG_FEEDBACK_LIST');
             foreach ($row as $field => $var) {
                 switch ($field) {
                     case "gender":
                         $var = $var ? '先生' : '小姐';
                         break;
                     case "createdate":
                         $var = date('Y-m-d', strtotime($var));
                         break;
                 }
                 $schemaReview[$key][$field] = $var;
                 $output['VALUE_' . strtoupper($field)] = $var;
             }
             VIEW::assign($output);
             # 顯示評分星星數
             if (!empty($row['score'])) {
                 VIEW::newBlock('TAG_SCORE_BLOCK');
                 VIEW::assign('VALUE_SCORE', $row['score']);
                 $score = 0;
                 while (++$score <= $row['score']) {
                     VIEW::newBlock('TAG_SCORE_STAR');
                 }
             }
         }
         return $schemaReview;
     }
 }
コード例 #5
0
ファイル: sort.php プロジェクト: PotsonHumer/OGS_V2
 public static function auto($tb_name, $langtag, $id, $sort = 1)
 {
     $rsnum = CRUD::dataFetch($tb_name, array('id' => $id));
     if (empty($rsnum)) {
         return false;
     }
     list($selfRow) = CRUD::$data;
     $addon = '';
     if (isset($selfRow["parent"])) {
         $addon .= !empty($selfRow["parent"]) ? " and parent = '{$selfRow["parent"]}'" : " and parent IS NULL";
     }
     if (!empty($selfRow['lang_id']) && !empty($selfRow['langtag'])) {
         $addon .= " and langtag = '{$langtag}'";
     }
     $rsnum = CRUD::dataFetch($tb_name, array('custom' => "id != '{$id}' {$addon}"), false, array('sort' => CORE::$cfg["sort"]));
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $key => $row) {
             # 讓出預定排序位置
             $autoSort = ++$i == $sort ? ++$i : $i;
             $sort_args[] = array('id' => $row["id"], 'sort' => $autoSort);
         }
     }
     $sort_args[] = array('id' => $id, 'sort' => $sort);
     # 重置所有相關資料排序
     if (is_array($sort_args)) {
         foreach ($sort_args as $args) {
             DB::update(CORE::$prefix . "_" . $tb_name, array('sort' => $args["sort"], 'id' => $args["id"]));
         }
     }
 }
コード例 #6
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 protected static function subjectFetch($id, $field = '*')
 {
     $rsnum = CRUD::dataFetch('contact_subject', array('id' => $id), array($field));
     if (!empty($rsnum)) {
         list($row) = CRUD::$data;
         return $row[$field];
     }
     return false;
 }
コード例 #7
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function fetch($id)
 {
     $rsnum = CRUD::dataFetch('stock_bind', array('id' => $id));
     if (!empty($rsnum)) {
         return CRUD::$data[0];
     } else {
         return false;
     }
 }
コード例 #8
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 private static function news()
 {
     self::$rsnum[] = $rsnum = CRUD::dataFetch('news', array('langtag' => CORE::$langtag, 'status' => '1', 'custom' => "(subject like '%" . self::$kw . "%' or content like '%" . self::$kw . "%')"));
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $key => $row) {
             VIEW::newBlock("TAG_SEARCH_LIST");
             VIEW::assign(array("VALUE_SUBJECT" => $row["subject"], "VALUE_CONTENT" => mb_substr(strip_tags($row["content"]), 0, 50, 'UTF-8'), "VALUE_LINK" => NEWS::dataLink($row["parent"], $row)));
         }
     }
 }
コード例 #9
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' : ''));
         }
     }
 }
コード例 #10
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function idx_row()
 {
     $rsnum = CRUD::dataFetch('news', array('status' => '1', 'langtag' => CORE::$langtag), false, array('sort' => CORE::$cfg["sort"]), '0,4');
     if (!empty($rsnum)) {
         foreach (CRUD::$data as $key => $row) {
             VIEW::newBlock("IDX_NEWS_LIST");
             foreach ($row as $field => $var) {
                 switch ($field) {
                     case "showdate":
                         VIEW::assign("VALUE_" . strtoupper($field), date("Y.m.d", strtotime($var)));
                         break;
                     default:
                         VIEW::assign("VALUE_" . strtoupper($field), $var);
                         break;
                 }
             }
             VIEW::assign("VALUE_LINK", self::dataLink($row["parent"], $row));
         }
     }
 }
コード例 #11
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function row()
 {
     $rsnum = CRUD::dataFetch('rewrite', false, false, array('id' => 'desc'));
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $row) {
             VIEW::newBlock('TAG_REWRITE_LIST');
             foreach ($row as $field => $var) {
                 switch ($field) {
                     case "status":
                         $field = 'VALUE_' . strtoupper($field) . '_CK' . $var;
                         $var = 'selected';
                         break;
                 }
                 VIEW::assign("VALUE_" . strtoupper($field), $var);
             }
         }
     } else {
         VIEW::newBlock('TAG_REWRITE_LIST');
     }
 }
コード例 #12
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function replace()
 {
     CHECK::is_email($_POST["email"]);
     CHECK::is_must($_POST["callback"]);
     if (CHECK::is_pass()) {
         $systemExist = CRUD::dataFetch('system', array('id' => '1'));
         $args = array_merge($_POST, array('id' => '1'));
         if ($systemExist) {
             CRUD::dataUpdate('system', $args);
         } else {
             CRUD::dataInsert('system', $args);
         }
         if (!empty(DB::$error)) {
             $msg = array(DB::$error, CORE::$manage . 'system/');
         } else {
             $msg = array(self::$lang["modify_done"], CORE::$manage . 'system/');
         }
     } else {
         $msg = array(CHECK::$alert, CORE::$manage . 'system/');
     }
     CORE::msg($msg);
 }
コード例 #13
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 private static function detail()
 {
     $serial = array_shift(CORE::$args);
     $o_row = self::row($serial);
     if (is_array(self::$lang["order_status"])) {
         foreach (self::$lang["order_status"] as $status => $status_str) {
             VIEW::newBlock("TAG_STATUS_LIST");
             VIEW::assign(array("VALUE_STATUS_STR" => $status_str, "VALUE_STATUS" => $status, "VALUE_STATUS_CK" => $status == $o_row["status"] ? 'checked' : ''));
         }
     }
     $rsnum = CRUD::dataFetch('order_item', array('serial' => $serial), false, array('id' => 'desc'));
     if (!empty($rsnum)) {
         VIEW::newBlock("TAG_ITEM_BLOCK");
         foreach (CRUD::$data as $key => $row) {
             VIEW::newBlock("TAG_ITEM_LIST");
             foreach ($row as $field => $var) {
                 VIEW::assign("VALUE_" . strtoupper($field), $var);
             }
             VIEW::assign("VALUE_ROW", ++$i);
         }
     }
 }
コード例 #14
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function row()
 {
     if (empty(self::$func) || empty(self::$dataID)) {
         return false;
     }
     $rsnum = CRUD::dataFetch('message', array('status' => '1', 'func' => self::$func, 'dataID' => self::$dataID, 'reply' => 'null'));
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $row) {
             VIEW::newBlock('TAG_MESSAGE_LIST');
             foreach ($row as $field => $var) {
                 VIEW::assign('VALUE_' . strtoupper($field), $var);
             }
             $replyRsnum = CRUD::dataFetch('message', array('replay' => $row['reply'], 'status' => '1'));
             if (!empty($replyRsnum)) {
                 list($reply) = CRUD::$data;
                 VIEW::newBlock('TAG_MESSAGE_REPLY');
                 foreach ($row as $field => $var) {
                     VIEW::assign('VALUE_' . strtoupper($field), $var);
                 }
             }
         }
     }
 }
コード例 #15
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function setting()
 {
     $rsnum = CRUD::dataFetch('system', array('id' => '1'));
     if (!empty($rsnum)) {
         self::$setting = CRUD::$data[0];
         foreach (self::$setting as $field => $var) {
             switch ($field) {
                 case "address":
                     if (!empty($var)) {
                         $output['SYSTEM_MAP'] = 'https://maps.google.com.tw/maps?f=q&hl=zh-TW&geocode&q=' . $var;
                     }
                     break;
                 case "ga":
                     $var = self::gaLoad($var);
                     break;
                 case "email":
                     if (empty($var)) {
                         # 如果未設定系統 E-mail,設定初始 E-mail
                         $var = '*****@*****.**';
                         self::$setting[$field] = $var;
                     }
                     break;
                 case "facebook":
                 case "gplus":
                 case "twitter":
                 case "instagram":
                 case "linkedin":
                     $output['SYSTEM_' . strtoupper($field) . '_TARGET'] = !empty($var) ? '_blank' : '_self';
                     $var = empty($var) ? '#' : $var;
                     break;
             }
             $output['SYSTEM_' . strtoupper($field)] = $var;
         }
         VIEW::assignGlobal($output);
     }
 }
コード例 #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
ファイル: 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']);
     }
 }
コード例 #18
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function seek($id = false)
 {
     if (empty($_POST['call'])) {
         echo 'NONE';
     }
     $seekStr = $_POST['call'];
     if (!empty($id)) {
         $rsnum = CRUD::dataFetch('gallery', array('id' => $id), array('related'));
         if (!empty($rsnum)) {
             list($nowRow) = CRUD::$data;
             if (!empty($nowRow['related'])) {
                 $relatedArray = json_decode($nowRow['related'], true);
                 $seekFilter = "id NOT IN('" . implode("','", $relatedArray) . "','" . $id . "')";
                 $sk = array('status' => '1', 'langtag' => CORE::$langtag, 'subject' => '%' . $seekStr . '%', 'custom' => $seekFilter);
             } else {
                 $sk = array('status' => '1', 'langtag' => CORE::$langtag, 'subject' => '%' . $seekStr . '%', 'id' => "!{$id}");
             }
         }
     }
     if (empty($sk) || !is_array($sk)) {
         $sk = array('status' => '1', 'langtag' => CORE::$langtag, 'subject' => '%' . $seekStr . '%');
     }
     $rsnum = CRUD::dataFetch('gallery', $sk);
     if (!empty($rsnum)) {
         $dataRow = CRUD::$data;
         foreach ($dataRow as $key => $row) {
             foreach ($row as $field => $var) {
                 $output[$key][$field] = rawurlencode($var);
             }
             IMAGES::load('gallery', $row["id"]);
             list($image) = IMAGES::$data;
             $output[$key]['image'] = '<img src="' . $image['path'] . '" style="width: 100px;">';
             $output[$key]['link'] = GALLERY::dataLink($row['parent'], $row);
         }
         if (is_array($output)) {
             echo json_encode($output);
         }
     } else {
         echo 'NONE';
     }
 }
コード例 #19
0
ファイル: seo.php プロジェクト: PotsonHumer/OGS_V2
 public static function origin($tb_name, $args = false)
 {
     if (empty($args) || $args === false) {
         return false;
     }
     if (is_numeric($args)) {
         return $args;
     } else {
         $rsnum = CRUD::dataFetch('seo', array("filename" => urldecode($args)));
         if (!empty($rsnum)) {
             list($row) = CRUD::$data;
             $origin_num = CRUD::dataFetch($tb_name, array('seo_id' => $row["id"]));
             if (!empty($origin_num)) {
                 list($origin_row) = CRUD::$data;
                 return $origin_row["id"];
             }
         }
         return false;
     }
 }
コード例 #20
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function replace()
 {
     CHECK::is_array_exist($_POST["id"]);
     if (CHECK::is_pass()) {
         $sql = DB::field(CORE::$prefix . '_stock_bind');
         while ($row = DB::fetch($sql)) {
             $field_array[] = $row["Field"];
         }
         foreach ($_POST["id"] as $key => $id) {
             $rsnum = CRUD::dataFetch('stock_cate');
             # 取得規格類別數量
             foreach ($field_array as $field) {
                 switch ($field) {
                     case "item":
                         for ($i = 0; $i < $rsnum; $i++) {
                             if ($_POST['item_' . $i][$key] !== 'null') {
                                 $item[$i] = $_POST['item_' . $i][$key];
                             }
                             if (empty($_POST["name"][$key])) {
                                 CRUD::dataFetch('stock_item', array('id' => $item[$i]));
                                 # 取得規格項目名稱
                                 if (!empty(CRUD::$data[0]["name"])) {
                                     $name[$i] = CRUD::$data[0]["name"];
                                 }
                             }
                         }
                         $args["item"] = json_encode($item);
                         $args["name"] = empty($_POST["name"][$key]) ? implode(" / ", $name) : $_POST["name"][$key];
                         break;
                     default:
                         $args[$field] = $_POST[$field][$key];
                         break;
                 }
             }
             $args["sort"] = $key;
             if (empty($id)) {
                 CRUD::dataInsert('stock_bind', $args);
             } else {
                 CRUD::dataUpdate('stock_bind', $args);
             }
             if (empty($key)) {
                 $p_id = $args["p_id"];
             }
             if (!empty(DB::$error)) {
                 CORE::msg(DB::$error, CORE::$manage . "stock/{$p_id}");
             }
         }
         CORE::msg(self::$lang["modify_done"], CORE::$manage . "stock/{$p_id}");
     } else {
         CORE::msg(self::$lang["no_args"], CORE::$manage . "stock/{$p_id}");
     }
 }
コード例 #21
0
ファイル: frontend.php プロジェクト: PotsonHumer/OGS_V2
 private static function hot($nowID)
 {
     $rsnum = CRUD::dataFetch('blog', array('status' => '1', 'hot' => '1', 'id' => '!' . $nowID), false, array('rand()' => ''), '0,5');
     if (!empty($rsnum)) {
         VIEW::newBlock("TAG_HOT_BLOCK");
         $dataRow = CRUD::$data;
         foreach ($dataRow as $row) {
             VIEW::newBlock("TAG_HOT_LIST");
             foreach ($row as $field => $var) {
                 switch ($field) {
                     case "content":
                         $maxLength = 15;
                         $var = mb_strlen($var, 'UTF-8') > $maxLength ? mb_substr(strip_tags($var), 0, $maxLength, 'UTF-8') . '...' : $var;
                         break;
                 }
                 VIEW::assign("VALUE_" . strtoupper($field), $var);
             }
             IMAGES::load('blog', $row["id"]);
             list($images) = IMAGES::$data;
             VIEW::assign(array("VALUE_IMAGE" => $images["path"], "VALUE_ALT" => $images["alt"], "VALUE_TITLE" => $images["title"], 'VALUE_LINK' => self::dataLink($row["parent"], $row)));
         }
     }
 }
コード例 #22
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function modify()
 {
     CHECK::is_must($_POST["id"], $_POST["name"]);
     CHECK::is_email($_POST["account"]);
     if (!empty($_POST["password"])) {
         CHECK::is_password($_POST["password"]);
         CHECK::is_same($_POST["password"], $_POST["match_password"]);
         $password_check = true;
     } else {
         unset($_POST["password"]);
     }
     $check = CHECK::is_pass();
     if ($password_check) {
         $rsnum = CRUD::dataFetch('manager', array('id' => $_POST["id"], 'password' => md5($_POST["old_password"])));
         $check = !empty($rsnum) ? true : false;
         if ($check) {
             $_POST["password"] = md5($_POST["password"]);
         }
     }
     if ($check) {
         CRUD::dataUpdate('manager', $_POST);
         if (!empty(DB::$error)) {
             $msg = DB::$error;
             $path = CORE::$manage . 'manager/';
         } else {
             $manager = SESS::get('MANAGER');
             if ($manager["id"] == $_POST["id"]) {
                 $msg = self::$lang["manager_modify"];
                 $path = CORE::$manage . 'manager/logout/';
             } else {
                 $msg = self::$lang["modify_done"];
                 $path = CORE::$manage . 'manager/';
             }
         }
     } else {
         $msg = !empty($rsnum) ? self::$lang["password_error"] : CHECK::$alert;
         $path = CORE::$manage . 'manager/';
     }
     CORE::msg($msg, $path);
 }
コード例 #23
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function bonus($m_id = false)
 {
     SALE::pyramid($m_id);
     list($data) = self::$group;
     unset($data[0]);
     foreach ($data as $level => $cate) {
         $level_total = pow(2, $level);
         unset($member_count, $createdate);
         foreach ($cate as $sub_member) {
             $member_count[] = count($sub_member);
             # 取得會員創建時間
             foreach ($sub_member as $memberRow) {
                 $createdate[] = $memberRow["createdate"];
             }
         }
         $member_total = array_sum($member_count);
         # 取得同階層總會員數
         if ($level_total == $member_total) {
             $level_done[$level] = true;
             # 取得會員最晚創建時間
             rsort($createdate);
             list($level_time[$level]) = $createdate;
         }
     }
     # 所有累計獎金
     $bonus = self::bonus_count($level_done, $level_time);
     # 扣除已經發送獎金
     $rsnum = CRUD::dataFetch('grant', array('m_id' => $m_id));
     if (!empty($rsnum)) {
         foreach (CRUD::$data as $key => $row) {
             $granted_array[] = $row["granted"];
         }
         $granted = array_sum($granted_array);
         return $bonus - $granted;
     } else {
         return $bonus;
     }
 }
コード例 #24
0
ファイル: backend.php プロジェクト: PotsonHumer/OGS_V2
 private static function modify()
 {
     CHECK::is_must($_POST["callback"], $_POST["id"], $_POST["subject"], $_POST["cateID"]);
     $check = CHECK::is_pass();
     $rsnum = CRUD::dataFetch('ad', array('id' => $_POST["id"]));
     if ($check && !empty($rsnum)) {
         CRUD::dataUpdate('ad', $_POST, false, true);
         if (!empty(DB::$error)) {
             $msg = DB::$error;
             $path = CORE::$manage . 'ad/';
         } else {
             $msg = self::$lang["modify_done"];
             $path = CORE::$manage . "ad/detail/{$_POST['id']}/";
         }
     } else {
         if (empty($rsnum)) {
             $msg = self::$lang["no_data"];
             $path = CORE::$manage . 'ad/';
         }
         if (!$check) {
             $msg = CHECK::$alert;
             $path = CORE::$manage . 'ad/';
         }
     }
     CORE::msg($msg, $path);
 }
コード例 #25
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function multiChange($tb_name, $eval)
 {
     if (empty($_POST['id'])) {
         return false;
     }
     unset($_POST['seo_id']);
     $rsnum = CRUD::dataFetch($tb_name, array('id' => $_POST['id']));
     if (!empty($rsnum)) {
         list($row) = CRUD::$data;
     }
     $rsnum = CRUD::dataFetch('lang', array('id' => $row['lang_id']));
     if (!empty($rsnum)) {
         list($lang) = CRUD::$data;
     }
     return json_decode($lang['related'], true);
 }
コード例 #26
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 private static function new_serial()
 {
     $rsnum = CRUD::dataFetch('order');
     return date("YmdHis" . str_pad(++$rsnum, 10, "0", STR_PAD_LEFT));
 }
コード例 #27
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 private static function intro($args)
 {
     switch (true) {
         case is_array($args):
             # 依照來源資料
             $row = $args;
             break;
         case is_numeric($args):
             # 自行取得資料
             $rsnum = CRUD::dataFetch('intro', array('id' => $args, 'status' => '1', 'langtag' => CORE::$langtag));
             if (!empty($rsnum)) {
                 list($row) = CRUD::$data;
             }
             break;
         default:
             $row = false;
             break;
     }
     if (is_array($row)) {
         $output = array('name' => CORE::$lang['intro'], 'headline' => $args['subject'], 'articleBody' => strip_tags($row['content']), 'author' => SYSTEM::$setting['name'], 'publisher' => array('@type' => 'Organization', 'name' => self::$publisher, 'logo' => self::image(SYSTEM::$setting['logo'])), 'datePublished' => !empty($args['createdate']) ? $args['createdate'] : date('Y-m-d'), 'dateModified' => !empty($args['modifydate']) ? $args['modifydate'] : date('Y-m-d'), 'mainEntityOfPage' => CORE::$cfg['host'] . 'blog/');
         preg_match('/<img src="(.*?)" [^>]*?>/', $row['content'], $imgOutput);
         if (is_array($imgOutput)) {
             list($imgTag, $imgPath) = $imgOutput;
             $output['image'] = self::image($imgPath);
         }
         self::$schema[] = self::basic('Article', $output);
     }
 }
コード例 #28
0
ファイル: crud.php プロジェクト: PotsonHumer/OGS_V2
 public static function dataDel($tb_name, array $args)
 {
     $rsnum = CRUD::dataFetch($tb_name, $args);
     if (!empty($rsnum)) {
         list($row) = CRUD::$data;
         DB::delete(CORE::$prefix . "_" . $tb_name, $args);
         # 去除語系連結
         if (isset($row["lang_id"]) && !empty($row["lang_id"])) {
             $lang_rsnum = CRUD::dataFetch("lang", array("id" => $row["lang_id"]));
             if (!empty($lang_rsnum)) {
                 list($lang_row) = CRUD::$data;
                 $lang_related = json_decode($lang_row["related"], true);
                 if (is_array($lang_related)) {
                     unset($lang_related[CORE::$langtag]);
                     if (count($lang_related) >= 1) {
                         $new_related = array('id' => $lang_row["id"], 'related' => json_encode($lang_related));
                         CRUD::dataUpdate("lang", $new_related);
                     } else {
                         $related_none = true;
                     }
                 } else {
                     $related_none = true;
                 }
                 # 沒有可連結資料,刪除整筆記錄
                 if ($related_none) {
                     DB::delete(CORE::$prefix . "_lang", array('id' => $row["lang_id"]));
                 }
             }
         }
         # 刪除 seo 紀錄
         if (isset($row["seo_id"]) && !empty($row["seo_id"])) {
             DB::delete(CORE::$prefix . "_seo", array('id' => $row["seo_id"]));
         }
         # 刪除圖片記錄
         IMAGES::del($tb_name, $row["id"]);
         return true;
     } else {
         return false;
     }
 }
コード例 #29
0
ファイル: index.php プロジェクト: PotsonHumer/OGS_V2
 public static function related($related = false)
 {
     if (empty($related)) {
         return false;
     }
     $relatedArray = json_decode($related, true);
     $rsnum = CRUD::dataFetch('products', array('id' => $relatedArray, 'status' => '1', 'langtag' => CORE::$langtag));
     if (!empty($rsnum)) {
         VIEW::newBlock("TAG_RELATED_BLOCK");
         $dataRow = CRUD::$data;
         foreach ($dataRow as $key => $row) {
             VIEW::newBlock("TAG_RELATED_LIST");
             IMAGES::load('products', $row["id"]);
             list($image) = IMAGES::$data;
             VIEW::assign(array("VALUE_ID" => $row['id'], "VALUE_SUBJECT" => $row['subject'], "VALUE_IMAGE" => $image['path'], "VALUE_ALT" => $image['alt'], "VALUE_TITLE" => $image['title'], "VALUE_LINK" => PRODUCTS::dataLink($row['parent'], $row), "VALUE_PRICE" => $row['price']));
         }
     }
 }
コード例 #30
0
ファイル: images.php プロジェクト: PotsonHumer/OGS_V2
 public static function modify(array $args, $tb_name = false, $related = false)
 {
     foreach ($args["id"] as $key => $id) {
         list($width, $height) = IMAGES::size($args["path"][$key]);
         $images = array('id' => $id, 'path' => $args["path"][$key], 'alt' => $args["alt"][$key], 'title' => $args["title"][$key], 'width_o' => $width, 'height_o' => $height, 'width' => $args['width'][$key], 'height' => $args['height'][$key], 'width_m' => $args['width_m'][$key], 'height_m' => $args['height_m'][$key], 'info' => $args['info'][$key]);
         if (empty($id)) {
             $images = array_merge($images, array('sheet' => $tb_name, 'related' => $related));
             CRUD::dataInsert('images', $images);
             $ID = CRUD::$id;
         } else {
             CRUD::dataUpdate('images', $images);
             $ID = $images['id'];
         }
         $rsnum = CRUD::dataFetch('images', array('id' => $id));
         if (!empty($rsnum)) {
             list($imgRow) = CRUD::$data;
         }
         self::crop($ID, $images['path'], $images['width'], $images['height'], $images['width_m'], $images['height_m'], $imgRow['crop'], $imgRow['crop_m']);
     }
 }