示例#1
0
文件: getnews.php 项目: phannack/GCMS
 $sql2 .= " LEFT JOIN `" . DB_USER . "` AS U ON U.`id` = Q.`member_id`";
 $sql2 .= " WHERE Q.`module_id`=" . $index['module_id'] . " AND Q.`published` = '1' AND Q.`published_date`<='{$c_date}' AND Q.`index` = '0' AND Q.`id`<" . $index['id'] . " AND (" . implode(' OR ', $qs) . ") ORDER BY Q.`create_date` DESC";
 $sql2 .= ") AS Q2, (SELECT @row2:=0) r";
 $sql2 .= ") AS Q3";
 $sql = "SELECT * FROM (SELECT * FROM (({$sql1}) UNION ({$sql2})) AS X ORDER BY X.`row` LIMIT " . $match[2] * $match[3] . ") AS Y ORDER BY `create_date` DESC";
 $datas = $cache->get($sql);
 if (!$datas) {
     $datas = $db->customQuery($sql);
     $cache->save($sql, $datas);
 }
 // styles
 $styles = in_array($match[5], array('list', 'icon', 'thumb')) ? $match[5] : 'list';
 // เครื่องหมาย new
 $valid_date = $mmktime - $index['new_date'];
 // template
 $skin = gcms::loadfile(ROOT_PATH . 'widgets/relate/widgetitem.html');
 $patt = array('/{BG}/', '/{URL}/', '/{TOPIC}/', '/{DETAIL}/', '/{CATEGORY}/', '/{DATE}/', '/{UID}/', '/{SENDER}/', '/{STATUS}/', '/{COMMENTS}/', '/{VISITED}/', '/{THUMB}/', '/{ICON}/');
 $widget = array();
 $bg = 'bg2';
 foreach ($datas as $i => $item) {
     if ($i > 0 && $i % $match[2] == 0) {
         $widget[] = '</div><div class="row ' . $styles . 'view">';
     }
     $bg = $bg == 'bg1' ? 'bg2' : 'bg1';
     $replace = array();
     $replace[] = "{$bg} background" . rand(0, 5);
     if ($config['module_url'] == '1') {
         $replace[] = gcms::getURL($index['module'], $item['alias']);
     } else {
         $replace[] = gcms::getURL($index['module'], '', 0, $item['id']);
     }
<?php

// admin/register.php
if (MAIN_INIT == 'admin' && $isAdmin) {
    // title
    $title = $lng['LNG_REGISTER_TITLE'];
    // แสดงผล
    $patt2 = array('/{STATUS}/');
    $replace2 = array();
    $statuses = array();
    foreach ($config['member_status'] as $i => $value) {
        $statuses[] = '<option value=' . $i . '>' . $value . '</option>';
    }
    $replace2[] = implode('', $statuses);
    $content[] = preg_replace($patt2, $replace2, gcms::loadfile(ROOT_PATH . "admin/skin/{$config['admin_skin']}/register.html"));
} else {
    $title = $lng['LNG_DATA_NOT_FOUND'];
    $content[] = '<aside class=error>' . $title . '</aside>';
}
示例#3
0
文件: modal.php 项目: phannack/GCMS
<?php

// modal.php
header("content-type: text/html; charset=UTF-8");
// inint
include dirname(__FILE__) . '/bin/inint.php';
// ตรวจสอบ referer
if (gcms::isReferer() && preg_match('/^([a-z]+)$/', $_POST['module'], $match)) {
    if (is_file(ROOT_PATH . SKIN . "{$match['1']}.html")) {
        $patt = array('/{(LNG_[A-Z0-9_]+)}/e', '/{SKIN}/', '/{WEBURL}/', '/{TITLE}/', '/{DESCRIPTION}/', '/{LANGUAGE}/');
        $replace = array(OLD_PHP ? '$lng[\'$1\']' : 'gcms::getLng', SKIN, WEB_URL, $config['web_title'], $config['web_description'], LANGUAGE);
        echo gcms::pregReplace($patt, $replace, gcms::loadfile(ROOT_PATH . SKIN . "{$match['1']}.html"));
    } else {
        echo '<div class=error>' . $lng['PAGE_NOT_FOUND'] . '</div>';
    }
}
示例#4
0
文件: load.php 项目: phannack/GCMS
     $menu = '/class="(' . preg_replace('/([\\/\\-])/', '\\1', preg_quote($menu)) . ')(.*?)"/';
     if (!preg_match($menu, $main_patt['/{MAINMENU}/'])) {
         // ถ้าไม่มีจะใช้่โมดูลแรกสุด
         $menu = $install_modules[$module_list[0]];
         $menu = empty($menu['alias']) ? $menu['module'] : $menu['alias'];
         $menu = '/class="(' . preg_replace('/([\\/\\-])/u', '\\1', preg_quote($menu)) . ')(.*?)"/';
     }
     $main_patt['/{MAINMENU}/'] = preg_replace($menu, 'class="\\1 select\\2"', $main_patt['/{MAINMENU}/']);
 }
 // เวอร์ชั่น
 $main_patt['/{VERSION}/'] = VERSION;
 // ข้อความบน title bar
 $main_patt['/{TITLE}/'] = strip_tags($title);
 // ภาษาที่ติดตั้ง
 $languages = array();
 $skin = gcms::loadfile(ROOT_PATH . SKIN . 'language.html');
 foreach ($config['languages'] as $language) {
     $languages[] = preg_replace('/{LNG}/', $language, $skin);
 }
 $script[] = 'changeLanguage("' . implode(',', $config['languages']) . '");';
 $main_patt['/{LANGUAGES}/'] = implode('', $languages);
 // ขนาดตัวอักษร
 $main_patt['/{FONTSIZE}/'] = '<a class="font_size small" title="{LNG_CHANGE_FONT_SMALL}">A<sup>-</sup></a><a class="font_size normal" title="{LNG_CHANGE_FONT_NORMAL}">A</a><a class="font_size large" title="{LNG_CHANGE_FONT_LARGE}">A<sup>+</sup></a>';
 // widgets
 $main_patt['/{WIDGET_([A-Z]+)(([\\s_])(.*))?}/e'] = OLD_PHP ? 'gcms::getWidgets(array(1=>\'$1\',3=>\'$3\',4=>\'$4\'))' : 'gcms::getWidgets';
 // ภาษา
 $main_patt['/{(LNG_[A-Z0-9_]+)}/e'] = OLD_PHP ? '$lng[\'$1\']' : 'gcms::getLng';
 // logo
 $main_patt['/{LOGO}/'] = $image_logo;
 // meta, keywords และ description
 $meta['description'] = '<meta name=description content="' . $description . '">';
示例#5
0
文件: view.php 项目: phannack/GCMS
<?php

// widgets/tags/view.php
header("content-type: text/html; charset=UTF-8");
// inint
include '../../bin/inint.php';
// referer
if (gcms::isReferer()) {
    list($action, $id) = explode('-', $_POST['id']);
    $tag = $db->getRec(DB_TAGS, $id);
    if ($tag) {
        $patt = array('/{(LNG_[A-Z0-9_]+)}/e', '/{TAG}/', '/{COUNT}/');
        $replace = array();
        $replace[] = OLD_PHP ? '$lng[\'$1\']' : 'gcms::getLng';
        $replace[] = $tag['tag'];
        $replace[] = number_format($tag['count']);
        echo gcms::pregReplace($patt, $replace, gcms::loadfile('tags.tpl'));
    }
}
示例#6
0
文件: index.php 项目: phannack/GCMS
    $replace[] = strip_tags($title);
    $replace[] = $config['web_title'];
    if (isset($login_result)) {
        $name = trim("{$login_result['pname']} {$login_result['fname']} {$login_result['lname']}");
        $name = $name == '' ? $login_result['displayname'] : $name;
        $replace[] = $name == '' ? $login_result['email'] : $name;
        $replace[] = $login_result['id'];
    } else {
        $replace[] = '';
        $replace[] = 0;
    }
    $replace[] = OLD_PHP ? '$lng[\'$1\']' : 'gcms::getLng';
    $replace[] = VERSION;
    $replace[] = LANGUAGE;
    $replace[] = $config['admin_skin'];
    $replace[] = WEB_URL;
    if (isset($input)) {
        $replace[] = $input == 'login_email' ? 'autofocus' : '';
        $replace[] = $input == 'login_password' ? 'autofocus' : '';
    } else {
        $replace[] = '';
        $replace[] = '';
    }
    $replace[] = DATA_URL;
    $replace[] = OLD_PHP ? 'gcms::adminURL(array(2 => \'$2\'))' : 'gcms::adminURL';
    $replace[] = gcms::getVars($_GET, 'src', '');
    $replace[] = $login_remember == 1 ? 'checked' : '';
    $replace[] = $login_email;
    $replace[] = $login_password;
    echo gcms::pregReplace($patt, $replace, gcms::loadfile(ROOT_PATH . "admin/skin/{$config['admin_skin']}/index.html"));
}
示例#7
0
 /**
  * ฟังก์ชั่น โหลด template ของโมดูลที่เลือก
  *
  * @param string $module ชื่อโมดูล
  * @param string $owner ชื่อโฟลเดอร์ ตามใน modules/
  * @param string $file ชื่อไฟล์ ไม่ต้องระบุนามสกุล html
  * @return string คืนค่า template จาก $module ถ้าไม่มีจะโหลดจาก $owner ถ้าไม่พบคืนค่าว่าง
  */
 public static function loadtemplate($module, $owner, $file)
 {
     $template = is_file(ROOT_PATH . SKIN . "{$module}/{$file}.html") ? $module : $owner;
     return gcms::loadfile(ROOT_PATH . SKIN . str_replace('//', '/', "{$template}/{$file}.html"));
 }
示例#8
0
文件: index.php 项目: phannack/GCMS
<?php

// widgets/relate/index.php
$widget = '';
if (defined('MAIN_INIT') && preg_match('/^[0-9]+$/', $id)) {
    // ค่าที่ส่งมา
    $id = (int) $id;
    if ($id > 0) {
        $cols = isset($cols) ? (int) $cols : 1;
        $rows = isset($rows) ? (int) $rows : 1;
        $sort = isset($sort) ? (int) $sort : 1;
        if ($cols * $cols > 0) {
            $styles = isset($styles) && in_array($styles, array('list', 'icon', 'thumb')) ? $styles : 'list';
            // แสดงผล
            $patt = array('/{ID}/', '/{DETAIL}/');
            $replace = array();
            $replace[0] = "widget_{$id}_{$cols}_{$rows}_{$sort}_{$styles}";
            $replace[1] = "<script>getWidgetNews('{$replace['0']}', 'relate', 0);</script>";
            $widget = preg_replace($patt, $replace, gcms::loadfile(ROOT_PATH . 'widgets/relate/widget.html'));
        }
    }
}
            } elseif ($key == 'provinceID') {
                // จังหวัด
                $provinces = array();
                $provinces[] = '<option value="">--- ' . $lng['LNG_PLEASE_SELECT'] . ' ---</option>';
                $sql = "SELECT `id`, `name` FROM `" . DB_PROVINCE . "`";
                $datas = $cache->get($sql);
                if (!$datas) {
                    $datas = $db->customQuery($sql);
                    $cache->save($sql, $datas);
                }
                foreach ($datas as $item) {
                    $sel = $user['provinceID'] == $item['id'] ? ' selected' : '';
                    $provinces[] = '<option value=' . $item['id'] . $sel . '>' . $item['name'] . '</option>';
                }
                $replace2[] = implode('', $provinces);
            } else {
                $replace2[] = $value;
            }
        }
        $content[] = gcms::pregReplace($patt2, $replace2, gcms::loadfile(ROOT_PATH . "admin/skin/{$config['admin_skin']}/editprofile.html"));
        // หน้าปัจจุบัน
        $url_query['module'] = 'editprofile';
    } else {
        // ไม่ได้กำหนด id มา หรือ ไม่พบ user ที่เรียก
        $title = $lng['LNG_DATA_NOT_FOUND'];
        $content[] = '<aside class=error>' . $title . '</aside>';
    }
} else {
    $title = $lng['LNG_DATA_NOT_FOUND'];
    $content[] = '<aside class=error>' . $title . '</aside>';
}