Пример #1
0
 /**
  * Get additional content data selected
  * 
  * @param $result = Query result
  */
 public static function post_find($result)
 {
     if ($result !== null) {
         if (is_array($result)) {
             foreach ($result as $item) {
                 // It will first check if we already have result in temporary result,
                 // and only execute query if we dont. That way we dont have duplicate queries
                 // Get related products
                 $item->get_products = static::lazy_load(function () use($item) {
                     $products = Model_Product_To_Groups::find(function ($query) use($item) {
                         return $query->where('group_id', $item->id);
                     }, 'product_id');
                     if (!empty($products)) {
                         $products = '(' . implode(',', array_keys($products)) . ')';
                         return Model_Product::find(function ($query) use($products, $item) {
                             $query->where('id', 'IN', \DB::expr($products));
                             $query->order_by('sort', 'asc');
                             return $query;
                         }, 'id');
                     }
                     return array();
                 }, $item->id, 'products');
                 // Get content children
                 $item->get_children = static::lazy_load(function () use($item) {
                     return Model_Group::find(array('where' => array('parent_id' => $item->id), 'order_by' => array('sort' => 'asc')));
                 }, $item->id, 'children');
                 // Get group images
                 $item->get_images = static::lazy_load(function () use($item) {
                     return Model_Group_Image::find(array('where' => array('content_id' => $item->id), 'order_by' => array('sort' => 'asc')));
                 }, $item->id, 'images');
                 // Get product groups
                 $item->get_product_groups = static::lazy_load(function () use($item) {
                     $product_groups = \Product\Model_Group::find_by_type('discount');
                     foreach ($product_groups as $product_group) {
                         $product_group->set_user_group_id($item->id);
                     }
                     return $product_groups;
                 }, $item->id, 'product_groups');
             }
         }
     }
     // return the result
     return $result;
 }
Пример #2
0
	                                	<?php 
    }
    ?>
									<?php 
}
?>
                                </div>
                            </div>
                        </div>

                        <?php 
if ($product) {
    ?>

                            <?php 
    $property_groups = \Product\Model_Group::find_by_type('property');
    ?>
                            
                            <div class="side_tree_holder" style="display: none;">
                                <div class="tree_heading">
                                    <h4>Property Groups</h4>
                                    <div id="sidetreecontrol2" class="sidetreecontrol"><a href="#">Collapse All</a><a href="#">Expand All</a></div>
                                </div>
                                <div class="tree_content">
                                    <div id="sidetree">

                                        <?php 
    if (!$product && empty($property_groups)) {
        ?>
                                            <div class="wide"><span class="req">Note: </span> There are no property groups yet.</div>
                                        <?php 
Пример #3
0
                            <?php 
    // END OF: USER SPECIFIC SEARCH FILTERS
    ?>
                            
                            <?php 
    if (in_array('group_id', $options)) {
        ?>
                                <div class="filter_width <?php 
        echo $margin();
        ?>
">
                                    <?php 
        echo \Form::label('Parent Group');
        ?>
                                    <?php 
        echo \Form::select('parent_id', \Input::get('parent_id'), array('false' => 'Select') + \Product\Model_Group::fetch_pair('id', 'title', array(), false, \Product\Model_Group::find_by_type('property')), array('class' => 'select_init filter_width'));
        ?>
                                </div>
                            <?php 
    }
    ?>
                            
                            <?php 
    if (in_array('category_id', $options)) {
        ?>
                                <div class="filter_width <?php 
        echo $margin();
        ?>
">
                                    <?php 
        echo \Form::label('Product Categories');
Пример #4
0
 public function action_update_new($id = false)
 {
     if (!is_numeric($id)) {
         \Response::redirect('admin/user/group/list');
     }
     // Get group to edit
     if (!($item = \Sentry::group((int) $id))) {
         \Response::redirect('admin/user/group/list');
     }
     \View::set_global('title', 'Edit Group');
     $group = \Sentry::group((int) $id);
     // Find all product groups and set usergroup id
     $group->product_groups = \Product\Model_Group::find_by_type('pricing');
     foreach ($group->product_groups as $product_group) {
         $product_group->set_user_group_id($group->id);
     }
     \Theme::instance()->set_partial('content', $this->view_dir . 'update_new')->set('group', $group);
 }