18 |
file_put_contents('/home/garrattpublishin/public_html/modules/cms/controllers/cms_settings/stats.htm', '<? Phpr_View::beginBlock("head") ?>
<link rel="stylesheet" href="modules/cms/resources/css/cms.css?<?= module_build('cms') ?>" type="text/css"/>
<? Phpr_View::endBlock() ?>
<? Phpr_View::beginBlock("view") ?>
<ul class="breadcrumbs">
<li><a href="<?= url('/system/settings') ?>">Settings</a></li>
<li><?= $this->app_page_title ?></li>
</ul>
<div class="form500">
<?= Phpr_Form::openTag(array('id'=>'settings_form')) ?>
<? $this->formRender($settings) ?>
<?= backend_ajax_button('Save', 'stats_onSave', array(), "update: 'multi', loadIndicator: {hideOnSuccess: true}, preCheckFunction: function(){
if (Number($('prev_pageviews').value) > Number($('Cms_Stats_Settings_keep_pageviews').get('value')))
return confirm('New pageviews number is less than the previous value. Obsolete pageviews data will be deleted. Continue?');
return true;
}") ?>
<?= backend_button('Cancel', url('system/settings')) ?>
<input type="hidden" id="prev_pageviews" value="<?= $settings->keep_pageviews ?>"/>
<div class="clear"></div>
</form>
<script type="text/javascript">
window.addEvent('domready', function(){
$('Cms_Stats_Settings_ga_enabled').addEvent('toggle', function(state){
if (state)
$('form_field_ga_enabledCms_Stats_Settings').addClass('separatedField');
else
$('form_field_ga_enabledCms_Stats_Settings').removeClass('separatedField');
var fields = ['form_field_ga_siteidCms_Stats_Settings', 'form_field_ga_usernameCms_Stats_Settings', 'form_field_ga_property_idCms_Stats_Settings', 'ga_hint', 'form_field_ga_site_speed_sample_rateCms_Stats_Settings', 'form_field_ga_domain_nameCms_Stats_Settings', 'form_field_ga_enable_doubleclick_remarketingCms_Stats_Settings', 'form_field_ga_client_idCms_Stats_Settings', 'form_field_ga_client_secretCms_Stats_Settings', 'form_field_ga_redirect_urlCms_Stats_Settings','form_field_ga_debugCms_Stats_Settings'];
fields.each(function(element){
console.log(element);
if (state)
$(element).show();
else
$(element).hide();
})
})
$('Cms_Stats_Settings_enable_builtin_statistics').addEvent('toggle', function(state){
if (state)
$('form_field_enable_builtin_statisticsCms_Stats_Settings').addClass('separatedField');
else
$('form_field_enable_builtin_statisticsCms_Stats_Settings').removeClass('separatedField');
var fields = ['form_field_keep_pageviewsCms_Stats_Settings', 'ip_filters'];
fields.each(function(element){
if (state)
$(element).show();
else
$(element).hide();
});
});
});
</script>
</div>
<? Phpr_View::endBlock() ?>') |
/modules/googleanalytics/classes/googleanalytics_module.php |
56 |
17 |
GoogleAnalytics_Module::autoloader('Shop_OptionMatrix') |
|
|
16 |
spl_autoload_call('Shop_OptionMatrix') |
/modules/shop/models/shop_product.php |
3766 |
15 |
Shop_Product->om('images') |
/modules/cms/classes/cms_controller.php(383) : eval()'d code |
60 |
14 |
eval(()) |
/modules/cms/classes/cms_controller.php |
383 |
13 |
Cms_Controller->evalWithException('?><?php if(strpos($_SERVER['REQUEST_URI'], '?query=') !== false){
$is_search_page = true;
}
?>
<?php
//zach edit - added search ==false - do not enter if when it is a search
if (isset($paginate) && $paginate && $search==false)
{
$page_index = isset($page_index) ? $page_index-1 : 0;
$records_per_page = isset($records_per_page) ? $records_per_page : 15;
$pagination = $products->paginate($page_index, $records_per_page);
//var_dump($products->getRowCount());
}
//else
//$pagination = null;
$products = $products instanceof Db_ActiveRecord ? $products->find_all() : $products;
?>
<ul class="product-list isotope">
<? foreach ($products as $product):
?>
<div id="__<?= $product->id?>_added" class="modal fade" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<hgroup class="title">
<h3>You're one step closer to owning this product!</h3>
<h5><?php echo h($product->name); ?> has been added to your cart</h5>
</hgroup>
</div>
<div class="modal-footer">
<div class="pull-left">
<button data-dismiss="modal" aria-hidden="true" class="btn btn-primary btn-small">
<i class="icon-chevron-left"></i> Continue Shopping
</button>
</div>
<div class="pull-right">
<a style="color:white" href="/cart" class="btn btn-primary btn-small"> Go to cart <i class="icon-chevron-right"></i> </a>
</div>
</div>
</div>
</div>
</div>
<li class="<?php echo isset($enable_featured) && $product->x_featured_product ? 'featured' : 'standard'; ?>" data-price="<?php echo floor( (int) $product->price() ); ?>">
<a href="<?php echo $product->page_url('/product'); ?>/" title="<?php echo h($product->name); ?>">
<div class="image">
<?php $images = $product->om('images'); ?>
<?php if($images->count): ?>
<img class="primary img-responsive" src="<?php echo $product->image_url(0, 640, 'auto'); ?>" alt="<?php echo h($product->name); ?>" />
<?php elseif($images->count == 0): ?>
<img src="<?php echo theme_resource_url('img/Garratt_thumnail.png'); ?>" class="img-responsive" alt="<?php echo h($product->name); ?>" />
<?php endif; ?>
<?php if($images->count > 1): ?>
<img class="secondary" src="<?php echo $product->image_url(1, 640, 'auto'); ?>" alt="<?php echo h($product->name); ?>" />
<?php endif; ?>
<?php if($product->om('is_on_sale')): ?>
<span class="badge badge-sale">SALE</span>
<?php endif; ?>
</div>
<div class="title">
<h3 ><?php echo h($product->name); ?></h3>
<?if(!$product->om('disabled') && !$product->x_garrattcustom_product_not_available): ?>
<p class="rrp">RRP $<?php echo h($product->x_display_price); ?></p>
<?php if($product->om('is_on_sale')): ?>
<div class="prices"><span class="price">On Sale </span><span class="price"><?php echo format_currency($product->om('sale_price')); ?></span> <del class="base"><?php echo format_currency($product->om('price')); ?></del></div>
<?php else: ?>
<div class="prices"><span class="price">Your price <?php echo format_currency($product->om('sale_price')); ?></span></div>
<?php endif; ?>
<? foreach ($product->price_tiers as $tier):
if($tier->fetched['customer_group_calculated'] != 'SophiaWeb') :
continue;
endif; ?>
<?php
//zach - show only quantity 1 price
if($tier->quantity == 1){
$tprice = (float)$tier->price;
if($tprice != 0){
if($product->price && $product->om('sale_price') > $tier->price) {
$tper = 100-(round($tprice/$product->price, 2)*100);
if($tier->price != '' && !is_null($tier->price)){
echo '<p class="sophia">Sophia BookClub ' . format_currency($tier->price) .'</p>';
}
}
}
}
?>
<? endforeach ?>
<? endif; ?>
</div>
</a>
<?php echo open_form(); ?>
<div class="add-to-cart">
<?php if(!$product->om('disabled') && !$product->x_garrattcustom_product_not_available): ?>
<button class="btn btn-primary btn-sm add" onclick="return $(this).getForm().sendRequest('shop:on_addToCart', {
selectorMode: true,
update: {'.mini-cart': 'shop:mini_cart'},
extraFields: {
'product_id': <?= $product -> id; ?>
},
onSuccess: function() {
$('#__<?=$product -> id ?>_added').modal('show')
}
});">
<i class="icon-plus"></i>Add to cart
</button>
<?php else: ?>
<button style="padding:5px 6px; line-height:12px;" class="btn btn-primary btn-sm">
<a href="mailto:sales@garrattpublishing.com.au?subject=Product Enquiry&body=Product ID: <?= $product -> id ?>%0D%0AProduct Name: <?= $product -> name ?>%0D%0A"><i class="icon-envelope"></i> Contact Us</a>
</button>
<?php endif; ?>
</div>
<?php echo close_form(); ?>
</li>
<?php endforeach; ?>
</ul>
<?
if (isset($paginate) && $paginate):
$base_url = $pagination_base_url;
$curPageIndex = $pagination->getCurrentPageIndex();
$pageNumber = $pagination->getPageCount();
$suffix = isset($suffix) ? $suffix : null;
if($pageNumber > 1):
if(isset($is_search_page) && $is_search_page):
?>
<div class="pagination">
<p>
Showing <strong><?= ($pagination->getFirstPageRowIndex()+1).'-'.($pagination->getLastPageRowIndex()+1) ?></strong>
of <strong><?= $pagination->getRowCount(); ?></strong> records.<br />
<!--Showing <strong><?= ($pagination->getFirstPageRowIndex()+1).'-'.($pagination->getLastPageRowIndex()+1) ?></strong>
of <strong><?= $pagination->getRowCount() ?></strong> records.<br />-->
Page:
<? for ($i = 1; $i <= $pageNumber; $i++): ?>
<? if ($i != $curPageIndex+1): ?><a href="<?= $base_url.'/'.$i.$suffix ?>" class="btn"><? endif ?>
<?= $i ?>
<? if ($i != $curPageIndex+1): ?></a><? endif;?>
<?php
endfor ?>
</p></div>
<p>
<? if ($curPageIndex): ?><a href="<?= $base_url.'/'.$curPageIndex.$suffix ?>" class="btn">
← Previous page</a><? endif ?>
<? if ($curPageIndex < $pageNumber-1): ?><a href="<?= $base_url.'/'.($curPageIndex+2).$suffix ?>" class="btn pull-right">
Next page →</a><? endif ?>
</p>
<?php else:?>
<div class="pagination">
<p>
Showing <strong><?= ($pagination->getFirstPageRowIndex()+1).'-'.($pagination->getLastPageRowIndex()+1) ?></strong>
of <strong><?= $pagination->getRowCount(); ?></strong> records.<br />
<!--Showing <strong><?= ($pagination->getFirstPageRowIndex()+1).'-'.($pagination->getLastPageRowIndex()+1) ?></strong>
of <strong><?= $pagination->getRowCount() ?></strong> records.<br />-->
Page:
<? for ($i = 1; $i <= $pageNumber; $i++): ?>
<? if ($i != $curPageIndex+1): ?><button class="btn" onclick="fetch_products(<?php echo $i ?>)"><?php echo $i ?></button><? endif ?>
<?php
endfor ?>
</p></div>
<p>
<? if ($curPageIndex): ?><button onclick="fetch_products(<?php echo $curPageIndex ?>)" class="btn">
← Previous page</button><? endif ?>
<? if ($curPageIndex < $pageNumber-1): ?><button onclick="fetch_products(<?php echo $curPageIndex+2 ?>)" class="btn pull-right">
Next page →</button><? endif ?>
</p>
<?php endif; endif; endif; ?>
<script>
//Zach - Applying ajax to pagination - category search only
function fetch_products(pagination_number){
$('#pagination_number').val(pagination_number);
$('#cat_search_form').submit();
}
</script>', 'CMS partial', 'shop:product_list', array(1) [products => object(Db_DataCollection)]) |
/modules/cms/classes/cms_controller.php |
1020 |
12 |
Cms_Controller->render_partial('shop:product_list', array(1) [products => object(Db_DataCollection)]) |
/modules/cms/classes/cms_controller.php(383) : eval()'d code |
328 |
11 |
eval(()) |
/modules/cms/classes/cms_controller.php |
383 |
10 |
Cms_Controller->evalWithException('?><?php $is_search_page = false; ?>
<?php if($category): ?>
<section class="category">
<div class="container">
<div class="row">
<div class="col-sm-3">
<aside class="sidebar">
<!--<div class="children">
<div class="box border-top">
<?php
if($parent_category = $category->parent) {
while($parent_category->parent) {
$parent_category = $parent_category->parent;
}
}
else {
$parent_category = $category;
}
?>
<hgroup class="title">
<h3>
<a href="<?php echo $parent_category->page_url('/category'); ?>" title="<?php echo h($parent_category->name); ?>"><?php echo h($parent_category->name); ?></a>
</h3>
<?php if($parent_category->short_description): ?>
<h5><?php echo h($parent_category->short_description); ?></h5>
<?php endif; ?>
</hgroup>
<?php $this->render_partial('shop:category_list', array(
'parent_category' => $parent_category,
'show_counts' => true
)); ?>
</div>
</div>-->
<?php echo open_form(array(
'onsubmit' => "
return $(this).getForm().sendRequest('filter_products', {
update: { 'product_list': 'shop:product_list' },
onSuccess: function() {
var prodList = $('#product_list');
prodList.hide();
$('img', prodList).load(function(e) {
prodList.show();
$('ul.isotope').isotope({
// options
itemSelector : '.standard',
layoutMode : 'fitRows'
});
});
$('div#cat_list').remove();
},
onBeforePost: function() {
form = $('form.custom');
query = form.find('input[name=query]').val();
checked = false;
form.find('input[type=checkbox]').each(function(i, v) {
if($(v).is(':checked')) {
checked = true;
}
});
/*
if(checked == false && query == '') {
location.reload();
}
*/
if($('ul#product_list').length >= 1) {
$('ul#product_list').remove();
}
prodList = $('<div id=\'product_list\'></div>');
$('div#insert_after').before(prodList);
if($('h5#results-heading').length <= 0) {
prodList.before('<h5 id=\'results-heading\' class=\'catheading dotted\'>Results</h5>');
}
}
});
",
'class' => 'custom',
'id' => 'cat_search_form'
)); ?>
<hgroup class="title">
<h3>Order</h3>
</hgroup>
<div class="form-group">
<select name="sorting" class="form-control">
<option value="relevance">Most relevant</option>
<option value="updated_at">Latest</option>
<option value="name asc">Name (A to Z)</option>
<option value="name desc">Name (Z to A)</option>
<option value="price asc">Price (Low to High)</option>
<option value="price desc">Price (High to Low)</option>
</select>
</div>
<hgroup class="title">
<h3>Search</h3>
</hgroup>
<div class="form-group">
<input type="text" class="form-control" placeholder="search within <?php echo h($category->name); ?>" name="query" value="">
</div>
<hgroup class="title">
<h3>Interest</h3>
</hgroup>
<?php
$subcats = Shop_Category::create()->find_by_url_name($category->url_name)->list_children('front_end_sort_order');
$Cat = Shop_Category::create()->find_by_url_name($category->url_name);
$Cat->act_as_tree_sql_filter = 'shop_categories.category_is_hidden=1';
$hiddensubcats = $Cat->list_children('front_end_sort_order');
//->list_children('front_end_sort_order');
if( sizeof($subcats) > 1 ): ?>
<?php foreach($subcats as $subcat): ?>
<div class="checkbox">
<label for="<?php echo $subcat->url_name; ?>">
<input id="<?php echo $subcat->url_name; ?>" type="checkbox" name="sub_category[]" value="<?php echo $subcat->id; ?>">
<?php echo $subcat->name; ?>
</label>
<?php if($Cat->parent == false):
$subsubcats = Shop_Category::create()->find_by_url_name($subcat->url_name)->list_children('front_end_sort_order'); ?>
<div class="subcats">
<?php foreach($subsubcats as $subsubcat): ?>
<div class="checkbox">
<label for="<?php echo $subsubcat->url_name; ?>">
<input id="<?php echo $subsubcat->url_name; ?>" type="checkbox" name="sub_category[]" value="<?php echo $subsubcat->id; ?>">
<?php echo $subsubcat->name; ?>
</label>
</div>
<?php endforeach; ?>
</div>
<?php endif; ?>
</div>
<?php endforeach; ?>
<?php endif; ?>
<?php if( sizeof($hiddensubcats) > 1 ): ?>
<button type="button" class="btn btn-more" data-toggle="collapse" data-target="#demo">
More options
</button>
<div id="demo" class="collapse">
<?php foreach($hiddensubcats as $subcat): ?>
<div class="checkbox">
<label for="<?php echo $subcat->url_name; ?>">
<input id="<?php echo $subcat->url_name; ?>" type="checkbox" name="sub_category[]" value="<?php echo $subcat->id; ?>">
<?php echo $subcat->name; ?>
</label>
</div>
<?php endforeach; ?>
</div>
<?php endif; ?>
<input type="hidden" name="main_category" value="<?php echo $category->id; ?>">
<button type="submit" class="btn btn-primary btn-block"><i class="foundicon-search"></i> Filter products</button>
<?php global_content_block('contact-us-banner'); ?>
<?php if(function_exists('list_unique_values')): ?>
<div class="row filter_color">
<div class="twelve columns">
<h6>Color</h6>
<?php
$colors = list_unique_values('Color', $category->id);
foreach($colors as $color):
?>
<label for="color_<?php echo strtolower($color); ?>" data-color="<?php echo strtolower($color); ?>">
<input id="color_<?php echo strtolower($color); ?>" type="checkbox" name="color[]" value="<?php echo $color; ?>">
<?php echo $color; ?>
</label>
<?php endforeach; ?>
</div>
</div>
<?php endif; ?>
<input type="hidden" name="pagination_number" id="pagination_number" value=1 />
<?php echo close_form(); ?>
<!--
<div class="price-filter">
<div class="box border-top">
<hgroup class="title">
<h3>Refine products</h3>
<h5>Filter your products by price</h5>
</hgroup>
<?php
$top_price = ceil( Db_DbHelper::scalar('SELECT price FROM shop_products t1 LEFT JOIN shop_products_categories t2 ON t1.id = t2.shop_product_id WHERE t2.shop_category_id = '.$category->id.' ORDER BY price DESC') / 100 ) * 100;
$obj = Shop_CurrencySettings::get();
$currency = h($obj->sign);
?>
<div id="slider" data-max="<?php echo $top_price; ?>" data-step="5" data-currency="<?php echo $currency; ?>"> </div>
<span id="slider-label">Price range: <strong><?php echo format_currency(0, 0); ?> – <?php echo format_currency($top_price, 0); ?></strong></span>
</div>
</div>
<?php
$obj = new Shop_Product();
$obj->select('count(shop_order_items.id) AS "sold"');
$obj->join('shop_products_categories', 'shop_products.id = shop_products_categories.shop_product_id');
$obj->join('shop_order_items', 'shop_products.id = shop_order_items.shop_product_id');
$obj->join('shop_orders', 'shop_order_items.shop_order_id = shop_orders.id');
$best_selling = $obj->where('shop_products_categories.shop_category_id=? AND shop_orders.payment_processed IS NOT NULL', $category->id)->group('shop_products.id')->order('count(shop_order_items.id) DESC')->limit(3)->find_all();
?>
<?php if($best_selling->count): ?>
<div class="best-selling">
<div class="box border-top">
<hgroup class="title">
<h3>Need inspiration?</h3>
<h5>Just a few of our best sellers</h5>
</hgroup>
<?php $this->render_partial('shop:product_list_small', array(
'products' => $best_selling
)); ?>
</div>
</div>
<?php endif; ?>
-->
</aside>
</div>
<div class="col-sm-9">
<div class="row">
<? if ($category->description): ?>
<div class="box">
<?= $category->description ?>
</div>
<? endif ?>
<div class="col-sm-8">
<?php if($category_url_name == 'education' || $category_url_name == 'individuals' || $category_url_name == 'parishes') {
$gproduct_group = 'latest-' . $category_url_name; ?>
<div class="just-pub">
<?php $just_published = Shop_CustomGroup::create()->find_by_code($gproduct_group); ?>
<?php if($just_published): ?>
<h4 class="dotted">Just Published</h4>
<ul>
<?php $this->render_partial('shop:prodlistadd', array(
'products' => $just_published->list_products(array('sorting' => array('rand()')))->find_all()
)); ?>
</ul>
<?php endif; ?>
</div> <!-- //just-pub -->
<?php } ?>
</div>
<div class="col-sm-4">
<?php if($category_url_name == 'education' || $category_url_name == 'individuals' || $category_url_name == 'parishes') {
$best_group = 'best-' . $category_url_name; ?>
<div class="bestsellers pagecurl">
<h5 class="dotted">Bestsellers</h5>
<?php $best_sellers = Shop_CustomGroup::create()->find_by_code($best_group); ?>
<?php if($best_sellers): ?>
<?php $this->render_partial('shop:product_list_basic', array(
'products' => $best_sellers->list_products(array('sorting' => array('rand()')))->find_all()
)); ?>
<?php else: ?>
<div class="alert alert-warning">
<strong>Please create a product group with api code "new".</strong>
</div>
<?php endif; ?>
</div>
</div>
<?php } ?>
</div>
<div id="insert_after"></div>
<!--<ul class="product-list isotope"></ul>-->
<div id="cat_list">
<?
$page_index = $this->request_param(1, 0);
//$categories = Shop_Category::create()->list_root_children('front_end_sort_order');
if($page_index < 2):
$categories = $category->list_children();
foreach($categories as $cat):
$products = $cat->list_products()->limit(5)->find_all();
if(count($products) > 0){
echo '<h5 id="' . $cat->url_name . '" class="catheading dotted"><a href="category/' . $cat->url_name . '">'. $cat->name . '</a></h5>';
$this->render_partial('shop:product_list', array(
'products'=>$products
));
echo '<a href="category/' . $cat->url_name . '/" class="pull-right">More ' . $cat->name . ' <i class="icon-chevron-sign-right"></i></a>';
}
endforeach; ?>
<? endif ?>
<?
$products = $category->list_products();
$records_per_page = 15;
$pagination_base_url = $category->page_url('category');
echo '<h5 id="' . $category->url_name . '" class="catheading dotted">All items in: '. $category->name . '</h5>';
//zach edit - added 'search' => false - fix search page pagination error
$this->render_partial('shop:product_list', array(
'products'=>$products,
'records_per_page'=>$records_per_page,
'paginate'=>true,
'search' =>false,
'pagination_base_url'=>$pagination_base_url,
'page_index'=>$page_index
));
?>
<!--
<button id="load_more" class="btn btn-block" data-category="<?php echo $category->id; ?>" data-rows="10" data-page="1" data-featured="true">
<span>Load more</span> <i class="icon-spinner icon-spin icon-large"></i>
</button>
-->
</div>
</div>
</div>
</section>
<?php else: ?>
<?php Phpr::$response->redirect(site_url('/')); ?>
<?php endif; ?>', 'CMS page', 'Category') |
/modules/cms/classes/cms_controller.php |
608 |
9 |
Cms_Controller->eval_page_content(()) |
/modules/cms/classes/cms_controller.php |
198 |
8 |
Cms_Controller->open(object(Cms_Page), array(7) [0 => 'bestsellers', 1 => 'category', 2 => 'stephen-cottrell', 3 => 'category', 4 => 'richard-leonard', 5 => 'category', 6 => 'henri-nouwen']) |
/controllers/application.php |
72 |
7 |
Application->On404(()) |
/phproad/modules/phpr/classes/phpr_controller.php |
170 |
6 |
Phpr_Controller->executeAction('On404', array(0)) |
/phproad/modules/phpr/classes/phpr_controller.php |
84 |
5 |
Phpr_Controller->_run('On404', array(0)) |
/phproad/modules/phpr/classes/phpr_response.php |
64 |
4 |
Phpr_Response->open404(()) |
/phproad/modules/phpr/classes/phpr_response.php |
37 |
3 |
Phpr_Response->open('/category/bestsellers/category/stephen-cottrell/category/richard-leonard/category/henri-nouwen') |
/phproad/system/phproad.php |
31 |
2 |
include('/home/garrattpublishin/public_html/phproad/system/phproad.php') |
/boot.php |
113 |
1 |
require_once('/home/garrattpublishin/public_html/boot.php') |
/index.php |
3 |