コード例 #1
0
ファイル: Cart.php プロジェクト: swash13/shop
 protected static function actionDelete()
 {
     if (!empty($_GET['product'])) {
         unset($_SESSION['cart'][$_GET['product']]);
     }
     if (App::isAjax()) {
         return 'success';
     }
 }
コード例 #2
0
ファイル: ControllerFront.php プロジェクト: swash13/shop
 protected static function init()
 {
     parent::init();
     /*
      * Если текущий запрос не ajax
      * Происходит привязка текущего пользователя к шаблонам
      */
     if (!App::isAjax()) {
         // Привязка списка категорий
         static::templateGlobal('customer', App::currentUser());
     }
 }
コード例 #3
0
ファイル: Index.php プロジェクト: swash13/shop
 protected static function actionDefault()
 {
     /*
      * Если выводиться вся страница то списко товаров передается шаблону products-list таким образом
      * Controller -> index -> products-list
      * Если запрос аяксовый то переменные передаются напрямую шаблону products-list
      * Controller -> products-list
      * Но при создании этих переменных мы не думаем о том какой шаблон будет выводиться.
      */
     // Заголовок списка товаров
     self::templateVar('product_list_title', 'Последние товары');
     // товары в списке (6 последних добавленных в соотвествии с фильтром цен)
     $collection = new Collection('Product', App::currentLang()->getId());
     $collection->link('cover');
     $collection->order("`add` DESC");
     $where = "`active` = 1";
     if (isset($_POST['submitPriceRange'])) {
         $where .= " AND `price` >= {$_POST['min']} AND `price` <= {$_POST['max']}";
     }
     $collection->where($where);
     $collection->limit(6);
     self::templateVar('product_list_items', $collection->items());
     if (App::isAjax()) {
         // Если это ajax выводим чанк списка товаров
         return self::displayPage('chunks/product-list');
     }
     // Привязка категорий для табов под списком товаров
     // Получаем две категории из базы
     $collection = new Collection('Category', App::currentLang()->getId());
     $collection->where("`active` = 1");
     $collection->limit(2);
     $categories = $collection->items();
     foreach ($categories as $category) {
         $collection = new Collection('Product', App::currentLang()->getId());
         $collection->where("`id_category` = " . $category->getId() . " AND `active` = 1");
         $collection->limit(4);
         $category->setLink('products', $collection->items());
     }
     foreach ($categories as $index => $category) {
         if (empty($category->products)) {
             unset($categories[$index]);
         }
     }
     // Привязываем к шаблону
     static::templateVar('tab_categories', $categories);
     return self::displayPage('index');
 }
コード例 #4
0
ファイル: Catalog.php プロジェクト: swash13/shop
 protected static function actionSearch()
 {
     // Заголовок над списком твоаров
     self::templateVar('product_list_title', 'Результаты поиска');
     // Товары
     $products = new Collection('Product', App::currentLang()->getId());
     $products->link('cover');
     $products->where("`active` = 1 AND `name` LIKE '%{$_GET['q']}%'" . (isset($_POST['submitPriceRange']) ? " AND `price` >= {$_POST['min']} AND `price` <= {$_POST['max']}" : ''));
     $products->order("`add` DESC");
     $products->limit(12);
     self::templateVar('product_list_items', $products->items());
     // Если это ajax выводим только чанк product-list
     if (App::isAjax()) {
         return self::displayPage('chunks/product-list');
     }
     return self::displayPage('catalog');
 }
コード例 #5
0
ファイル: ControllerAside.php プロジェクト: swash13/shop
 protected static function init()
 {
     parent::init();
     /*
      * Если текущий запрос не ajax
      * Происходит привязка глобальных данных для левого меню
      */
     if (!App::isAjax()) {
         // Привязка списка категорий
         $collection = new Collection('Category', App::currentLang()->getId());
         $collection->where("`active` = 1");
         static::templateGlobal('aside_categories', $collection->items());
         // Привязка списка производителей
         $collection = new Collection('Brand', App::currentLang()->getId());
         $collection->where("`active` = 1");
         static::templateGlobal('aside_brands', $collection->items());
         // Привязка данных для фильтра цен
         static::templateGlobal('filter_price', Database::getRow("\n                SELECT\n                    MIN(`price`) AS `min`,\n                    MAX(`price`) AS `max`\n                FROM `product`\n                WHERE `active` = 1\n            "));
     }
 }
コード例 #6
0
ファイル: photos.php プロジェクト: googlesky/snsp.vn
                    $sError = $aRow->error_message;
                }
                unlink(APP_DIR . 'uploads/' . $sName);
            } else {
                $sError = 'Not a valid image. We only accept .png, .gif or .jpg images.';
            }
        } else {
            $sError = 'Unable to upload the photo.';
        }
    }
    if (!empty($sError)) {
        echo '<script type="text/javascript">window.parent.$App.error(\'photo\', \'' . $sError . '\');</script>';
    }
    exit;
}
if (!App::isAjax()) {
    ?>
 
<div class="app_form">
	<form method="post" action="<?php 
    echo App::link('photos');
    ?>
" enctype="multipart/form-data" target="app_iframe_src">
		<div id="app_form_photo_upload_holder">
			<div class="app_form_input">
				Share a Photo
			</div>		
			<input type="file" name="photo" id="app_form_photo_upload" />
		</div>		
		<div class="app_form_hidden">
			<textarea cols="60" rows="10" name="status" id="app_form_status" placeholder="Say something about this photo..."></textarea>
コード例 #7
0
 /**
 +----------------------------------------------------------
 * 用户访问权限验证
 +----------------------------------------------------------
 * @access private
 +----------------------------------------------------------
 * @return void
 +----------------------------------------------------------
 */
 private static function checkUser()
 {
     global $ts;
     // 邀请
     if ($_GET['validationcode'] && $_GET['validationid']) {
         service('Validation')->dispatchValidation();
     }
     // 验证登陆
     if (!service('Passport')->isLogged()) {
         // 未登陆
         // 邀请
         if (APP_NAME == 'home' && MODULE_NAME == 'Index' && ACTION_NAME == 'index' && isset($_REQUEST['invite'])) {
             redirect(SITE_URL . '/index.php?app=home&mod=Public&act=register&invite=' . $_REQUEST['invite']);
         }
         // 是否开启游客访问
         if (APP_NAME == 'home' && MODULE_NAME == 'Space' && !$ts['site']['site_anonymous']) {
             redirect(U('home/Public/login'));
         }
         // 匿名访问控制
         if (!canAccess()) {
             if (App::isAjax() || strpos($_SERVER['REQUEST_URI'], "addon") != FALSE) {
                 // Ajax访问禁止匿名的资源时, 不做自动跳转
                 exit;
             } else {
                 // 记录登陆前的url地址
                 $_SESSION['refer_url'] = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
                 redirect(U('home/Public/login'));
             }
         }
     } else {
         // 已登录
         // 设为在线
         setOnline($_SESSION['mid']);
         // 检查用户权限. 管理后台的权限由它自己控制.
         if (!service('SystemPopedom')->hasPopedom()) {
             if (APP_NAME == 'admin') {
                 redirect(U('home/Public/adminlogin'), 5, '您无权查看');
             } else {
                 redirect(U('home'), 5, '您无权查看');
             }
         }
     }
     return;
 }
コード例 #8
0
ファイル: index.php プロジェクト: googlesky/snsp.vn
    $iId = 'app_new_status_' . $aRow->id . '';
    echo '$App.addItem(\'status\', \'' . $iId . '\', \'' . App::cleanJs($sItem) . '\');';
    exit;
}
if (!App::isAjax()) {
    ?>
<div class="app_form">
	<form method="post" action="#">
		<div><input type="hidden" name="do" value="index" id="app_form_action" /></div>
		<textarea cols="60" rows="10" name="status" id="app_form_status" placeholder="What's going on?"></textarea>
		<div class="app_submit">
			<input type="submit" value="Post" class="app_button" id="app_form_button" />
			<div class="app_form_process"></div>
		</div>
	</form>
</div>
<div id="app_new_status_updates"></div>
<?php 
}
$aRows = (array) App::api('user.status');
foreach ($aRows as $aRow) {
    App::item(array('id' => $aRow->id, 'module' => 'user_status', 'display_name' => $aRow->profile_full_name, 'profile_image' => $aRow->profile_image, 'content' => $aRow->update, 'likes' => $aRow->likes, 'is_liked' => $aRow->is_liked, 'comments' => $aRow->comments, 'time' => $aRow->convert_time_stamp));
}
if (empty($aRows)) {
    if (App::isAjax()) {
        echo '<div class="app_item_done">No more updates to view at this time.</div>';
    } else {
    }
} else {
    App::pager('');
}