Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Created on : Sep 22, 2015, 17:00:00 PM
- * Author : Muhammad Ircham
- */
- (function($,window){
- //initialization
- $(function(){
- ORORI.List = {
- /**
- * @return {promise}
- * */
- Defaults: {
- limit : 100
- },
- find: function(url, method, param) {
- var self = this;
- var parameters = $.extend(param, {
- limit: self.Defaults.limit
- }),
- asyncStatus = $.Deferred(),
- asyncData = [];
- ORORI.apiRequest(url, method, parameters, function(rs){
- asyncData.status = status;
- asyncData.data = rs;
- asyncStatus.resolve(asyncData);
- }, function(rs, status) {
- if (typeof (rs.responseJSON) != "undefined" && typeof (rs.responseJSON.error) != "undefined" && rs.responseJSON.error !== null) {
- asyncData.status = status;
- asyncData.error = rs.responseJSON.error.user_message;
- }
- asyncStatus.reject(asyncData);
- });
- return asyncStatus.promise();
- },
- renderList : function(data, selector, paginationClass){
- var self = this,
- html = '',
- i = 0;
- $.each(data.product, function (key, value) {
- });
- $('.tabs').trigger('destroy.loader.orori');
- },
- render : function(selector, paginationClass) {
- var self = this,
- DataAsync = self.find('/frontend/product','GET', self.Defaults);
- $.when(DataAsync)
- .done(function (founds) {
- self.renderList(founds.data, selector, paginationClass);
- })
- .fail(function () {
- // toastr.error('Sorry, .');
- });
- },
- filter : function(option, selector, isReset){
- var self = this,
- type = ($('input[name="type"]').val()) ? $('input[name="type"]').val() : '',
- category = ($('input[name="category"]').val()) ? $('input[name="category"]').val() : '',
- sub_category = ($('input[name="sub_category"]').val()) ? $('input[name="sub_category"]').val() : '',
- priceFrom = 0,
- priceTo = 0,
- options = {
- order_by : 'code, calculatedPrice',
- order_type : 'DESC'
- };
- if ((priceFrom == 0 || priceFrom == '') && (priceTo == 0 || priceTo == '')) {
- var $sliderPriceFrom = $('#filter-price-from' + selector),
- $sliderPriceTo = $('#filter-price-to' + selector);
- options.min_price = $sliderPriceFrom.val() ? extractRangeSliderNumber($sliderPriceFrom.val()) : 0;
- options.max_price = $sliderPriceTo.val() ? extractRangeSliderNumber($sliderPriceTo.val()) : 250000000;
- }
- if(isReset){
- options.min_price = 1000000;
- options.max_price = 250000000;
- }
- if(type) options.type = type;
- if(category) options.category = category;
- if(sub_category) options.sub_category = sub_category;
- $.extend( options, option );
- $.extend( self.Defaults, options );
- },
- init : function (listClass, paginationClass, containerNumber, option) {
- var self = this;
- // Do some setup stuff
- self.filter(option, containerNumber, false);
- self.render(listClass, paginationClass);
- }
- };
- });
- }(jQuery, window));
Advertisement
Add Comment
Please, Sign In to add comment