public function get_root_category()
 {
     $root = new RichRootCategory();
     $root->set_authorizations(WebConfig::load()->get_authorizations());
     $root->set_description(WebConfig::load()->get_root_category_description());
     return $root;
 }
 public function actionSaveConfig()
 {
     if (!empty($_POST)) {
         foreach ($_POST as $key => $value) {
             $config = WebConfig::model()->findByAttributes(array('name' => $key));
             $config->value = $_POST[$key];
             $config->update();
         }
         $this->redirect(array('System/Config'));
     }
 }
 public static function getValueByKey($key = null)
 {
     if (empty($key)) {
         return '';
     } else {
         foreach (WebConfig::model()->findAll() as $index => $value) {
             if ($value->name == $key) {
                 return $value->value;
             }
         }
     }
 }
 public function init()
 {
     $sessionMember = Yii::app()->session['member'];
     if (empty($sessionMember->mem_id)) {
         $this->render('../authen');
         exit;
     }
     /*
      * Load Config
      */
     $this->memberLevelDefault = WebConfig::getValueByKey('default_level');
     $this->memberStatusDefault = WebConfig::getValueByKey('default_object_public');
     /*
      * Load Config
      */
 }
 private function build_view()
 {
     $config = WebConfig::load();
     $weblink = $this->get_weblink();
     $category = $weblink->get_category();
     $keywords = $weblink->get_keywords();
     $has_keywords = count($keywords) > 0;
     $this->tpl->put_all(array_merge($weblink->get_array_tpl_vars(), array('C_COMMENTS_ENABLED' => $config->are_comments_enabled(), 'C_NOTATION_ENABLED' => $config->is_notation_enabled(), 'C_KEYWORDS' => $has_keywords, 'NOT_VISIBLE_MESSAGE' => MessageHelper::display(LangLoader::get_message('element.not_visible', 'status-messages-common'), MessageHelper::WARNING))));
     if ($config->are_comments_enabled()) {
         $comments_topic = new WebCommentsTopic($weblink);
         $comments_topic->set_id_in_module($weblink->get_id());
         $comments_topic->set_url(WebUrlBuilder::display($category->get_id(), $category->get_rewrited_name(), $weblink->get_id(), $weblink->get_rewrited_name()));
         $this->tpl->put('COMMENTS', $comments_topic->display());
     }
     if ($has_keywords) {
         $this->build_keywords_view($keywords);
     }
 }
    /**
     * {@inheritdoc}
     */
    public function synchronize()
    {
        $this->partners_weblinks = array();
        $now = new Date();
        $config = WebConfig::load();
        $result = PersistenceContext::get_querier()->select('
			SELECT web.id, web.name, web.partner_picture
			FROM ' . WebSetup::$web_table . ' web
			LEFT JOIN ' . DB_TABLE_COMMENTS_TOPIC . ' com ON com.id_in_module = web.id AND com.module_id = \'web\'
			LEFT JOIN ' . DB_TABLE_AVERAGE_NOTES . ' notes ON notes.id_in_module = web.id AND notes.module_name = \'web\'
			WHERE web.approbation_type = 1 OR (web.approbation_type = 2 AND (web.start_date > :timestamp_now OR (end_date != 0 AND end_date < :timestamp_now))) AND partner = 1
			ORDER BY web.privileged_partner DESC, ' . $config->get_sort_type() . ' ' . $config->get_sort_mode() . '
			LIMIT :partners_number_in_menu OFFSET 0', array('timestamp_now' => $now->get_timestamp(), 'partners_number_in_menu' => (int) $config->get_partners_number_in_menu()));
        while ($row = $result->fetch()) {
            $this->partners_weblinks[$row['id']] = $row;
        }
        $result->dispose();
    }
 public function actionLogin()
 {
     if (empty($_POST)) {
         $config = WebConfig::model()->findByAttributes(array('name' => 'facebook_appid'));
         $this->render('login', array('config' => $config));
     } else {
         $this->member = Member::model()->findByAttributes(array('mem_username' => $_POST['username'], 'mem_password' => md5($_POST['password'])));
         if (empty($this->member)) {
             Yii::app()->session['message'] = 'ไม่พบข้อมูลของท่านในระบบ';
             //$this->redirect(array('site/login'));
             echo CJSON::encode(array('status' => false, 'message' => 'ไม่พบข้อมูลของท่านในระบบ', 'url' => ''));
         } else {
             Yii::app()->session['member'] = $this->member;
             $url = Yii::app()->createUrl('site/index');
             if (!empty(Yii::app()->session['last_url'])) {
                 $url = Yii::app()->session['last_url'];
             }
             echo CJSON::encode(array('status' => true, 'message' => '', 'url' => $url));
         }
     }
 }
 private function save()
 {
     $this->config->set_items_number_per_page($this->form->get_value('items_number_per_page'));
     $this->config->set_categories_number_per_page($this->form->get_value('categories_number_per_page'));
     $this->config->set_columns_number_per_line($this->form->get_value('columns_number_per_line'));
     $this->config->set_category_display_type($this->form->get_value('category_display_type')->get_raw_value());
     if ($this->config->get_category_display_type() != WebConfig::DISPLAY_ALL_CONTENT) {
         if ($this->form->get_value('display_descriptions_to_guests')) {
             $this->config->display_descriptions_to_guests();
         } else {
             $this->config->hide_descriptions_to_guests();
         }
     }
     if ($this->form->get_value('comments_enabled')) {
         $this->config->enable_comments();
     } else {
         $this->config->disable_comments();
     }
     if ($this->form->get_value('notation_enabled')) {
         $this->config->enable_notation();
         $this->config->set_notation_scale($this->form->get_value('notation_scale'));
         if ($this->form->get_value('notation_scale') != $this->config->get_notation_scale()) {
             NotationService::update_notation_scale('web', $this->config->get_notation_scale(), $this->form->get_value('notation_scale'));
         }
     } else {
         $this->config->disable_notation();
     }
     $this->config->set_root_category_description($this->form->get_value('root_category_description'));
     $this->config->set_sort_type($this->form->get_value('sort_type')->get_raw_value());
     $this->config->set_sort_mode($this->form->get_value('sort_mode')->get_raw_value());
     $this->config->set_partners_number_in_menu($this->form->get_value('partners_number_in_menu'));
     $this->config->set_authorizations($this->form->get_value('authorizations')->build_auth_array());
     WebConfig::save();
     WebService::get_categories_manager()->regenerate_cache();
     WebCache::invalidate();
 }
    private function get_pagination($condition, $parameters, $field, $mode, $page)
    {
        $result = PersistenceContext::get_querier()->select_single_row_query('SELECT COUNT(*) AS weblinks_number
		FROM ' . WebSetup::$web_table . ' web
		LEFT JOIN ' . DB_TABLE_KEYWORDS_RELATIONS . ' relation ON relation.module_id = \'web\' AND relation.id_in_module = web.id 
		' . $condition, $parameters);
        $pagination = new ModulePagination($page, $result['weblinks_number'], (int) WebConfig::load()->get_items_number_per_page());
        $pagination->set_url(WebUrlBuilder::display_tag($this->get_keyword()->get_rewrited_name(), $field, $mode, '%d'));
        if ($pagination->current_page_is_empty() && $page > 1) {
            $error_controller = PHPBoostErrors::unexisting_page();
            DispatchManager::redirect($error_controller);
        }
        return $pagination;
    }
Exemple #10
0
 public function set_properties(array $properties)
 {
     $this->id = $properties['id'];
     $this->id_category = $properties['id_category'];
     $this->name = $properties['name'];
     $this->rewrited_name = $properties['rewrited_name'];
     $this->url = new Url($properties['url']);
     $this->contents = $properties['contents'];
     $this->short_contents = $properties['short_contents'];
     $this->approbation_type = $properties['approbation_type'];
     $this->start_date = !empty($properties['start_date']) ? new Date($properties['start_date'], Timezone::SERVER_TIMEZONE) : null;
     $this->end_date = !empty($properties['end_date']) ? new Date($properties['end_date'], Timezone::SERVER_TIMEZONE) : null;
     $this->end_date_enabled = !empty($properties['end_date']);
     $this->creation_date = new Date($properties['creation_date'], Timezone::SERVER_TIMEZONE);
     $this->number_views = $properties['number_views'];
     $this->partner = (bool) $properties['partner'];
     $this->partner_picture = new Url($properties['partner_picture']);
     $this->privileged_partner = (bool) $properties['privileged_partner'];
     $user = new User();
     if (!empty($properties['user_id'])) {
         $user->set_properties($properties);
     } else {
         $user->init_visitor_user();
     }
     $this->set_author_user($user);
     $notation = new Notation();
     $notation->set_module_name('web');
     $notation->set_notation_scale(WebConfig::load()->get_notation_scale());
     $notation->set_id_in_module($properties['id']);
     $notation->set_number_notes($properties['number_notes']);
     $notation->set_average_notes($properties['average_notes']);
     $notation->set_user_already_noted(!empty($properties['note']));
     $this->notation = $notation;
 }
Exemple #11
0
 /**
  * @des
  */
 public function action_feedback()
 {
     $userName = Webconfig::getConfig('cfg_sms_username');
     $password = WebConfig::getConfig('cfg_sms_password');
     $password = empty($password) ? '' : md5($password);
     $url = "http://www.stourweb.com/user/login/do_user_login/account/{$userName}/password/{$password}";
     echo '<script>' . 'window.open("' . $url . '","_self")' . '</script>';
 }
Exemple #12
0
foreach ($configs as $config) {
    ?>
            <div class="form-group">
                <label for="<?php 
    echo $config->name;
    ?>
" class="col-sm-2 control-label"><?php 
    echo $config->label;
    ?>
</label>
                <div class="col-lg-2 col-md-10 col-sm-10 col-xs-10">
                    <?php 
    if ($config->name == 'image_resize') {
        ?>
                        <?php 
        $percentResize = WebConfig::getPercentResize();
        ?>
                        <select class="form-control" name="<?php 
        echo $config->name;
        ?>
" id="<?php 
        echo $config->name;
        ?>
">
                            <?php 
        foreach ($percentResize as $key => $value) {
            ?>
                                <?php 
            if ($key == $config->value) {
                ?>
                                    <option value="<?php 
 private function get_pagination($condition, $parameters, $field, $mode, $page, $subcategories_page)
 {
     $weblinks_number = WebService::count($condition, $parameters);
     $pagination = new ModulePagination($page, $weblinks_number, (int) WebConfig::load()->get_items_number_per_page());
     $pagination->set_url(WebUrlBuilder::display_category($this->get_category()->get_id(), $this->get_category()->get_rewrited_name(), $field, $mode, '%d', $subcategories_page));
     if ($pagination->current_page_is_empty() && $page > 1) {
         $error_controller = PHPBoostErrors::unexisting_page();
         DispatchManager::redirect($error_controller);
     }
     return $pagination;
 }
 /**
  * @desc Return the authorized categories.
  */
 public static function get_authorized_categories($current_id_category)
 {
     $search_category_children_options = new SearchCategoryChildrensOptions();
     $search_category_children_options->add_authorizations_bits(Category::READ_AUTHORIZATIONS);
     if (AppContext::get_current_user()->is_guest()) {
         $search_category_children_options->set_allow_only_member_level_authorizations(WebConfig::load()->are_descriptions_displayed_to_guests());
     }
     $categories = self::get_categories_manager()->get_childrens($current_id_category, $search_category_children_options, true);
     return array_keys($categories);
 }
    ?>
                        <li role="separator" class="divider"></li>
                        <li><a href="javascript:void(0)" id="handleLogout">
                                <i class="fa fa-sign-out"></i> ออกจากระบบ</a>
                        </li>
                    </ul>
                </li>
            <?php 
}
?>

        </ul>
    </div><!-- /.navbar-collapse -->
</nav>
<?php 
$config = WebConfig::model()->findByAttributes(array('name' => 'facebook_appid'));
?>
<script type="text/javascript">
    var facebookConnect = false;
    /*
     * http://code.runnable.com/UTlPL1-f2W1TAAAZ/get-user-details-email-address-with-javascript-sdk-for-facebook
     * @type Array|@call;join
     */
    var permissions = [
        'email',
        'user_birthday',
        'user_likes'
    ].join(',');
    var fields = [
        'id',
        'name',