shop.balmet.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

google_base.twig (10394B)


      1 {{ header }}{{ column_left }}
      2 <div id="content">
      3   <div class="page-header">
      4     <div class="container-fluid">
      5       <div class="pull-right">
      6         <button type="button" id="button-import" data-toggle="tooltip" title="{{ button_import }}" class="btn btn-success"><i class="fa fa fa-upload"></i></button>
      7         <button type="submit" form="form-feed" data-toggle="tooltip" title="{{ button_save }}" class="btn btn-primary"><i class="fa fa-save"></i></button>
      8         <a href="{{ cancel }}" data-toggle="tooltip" title="{{ button_cancel }}" class="btn btn-default"><i class="fa fa-reply"></i></a></div>
      9       <h1>{{ heading_title }}</h1>
     10       <ul class="breadcrumb">
     11         {% for breadcrumb in breadcrumbs %}
     12         <li><a href="{{ breadcrumb.href }}">{{ breadcrumb.text }}</a></li>
     13         {% endfor %}
     14       </ul>
     15     </div>
     16   </div>
     17   <div class="container-fluid">
     18     {% if error_warning %}
     19     <div class="alert alert-danger alert-dismissible"><i class="fa fa-exclamation-circle"></i> {{ error_warning }}
     20       <button type="button" class="close" data-dismiss="alert">&times;</button>
     21     </div>
     22     {% endif %}
     23     <div class="panel panel-default">
     24       <div class="panel-heading">
     25         <h3 class="panel-title"><i class="fa fa-pencil"></i> {{ text_edit }}</h3>
     26       </div>
     27       <div class="panel-body">
     28         <div class="alert alert-info"><i class="fa fa-info-circle"></i> {{ text_import }} <button type="button" class="close" data-dismiss="alert">×</button></div>
     29         <form action="{{ action }}" method="post" enctype="multipart/form-data" id="form-feed" class="form-horizontal">
     30             <div id="category"></div>
     31             <br />
     32             <div class="form-group">
     33               <label class="col-sm-2 control-label" for="input-data-feed">{{ entry_google_category }}</label>
     34               <div class="col-sm-10">
     35                   <input type="text" name="google_base_category" value="" placeholder="{{ entry_google_category }}" id="input-google-category" class="form-control" />
     36                   <input type="hidden" name="google_base_category_id" value="" />
     37                   <div class="input-group">
     38                     <input type="text" name="category" value="" placeholder="{{ entry_category }}" id="input-category" class="form-control" />
     39                     <input type="hidden" name="category_id" value="" />
     40                     <span class="input-group-btn"><button type="button" id="button-category-add" data-toggle="tooltip" title="{{ button_category_add }}" class="btn btn-primary"><i class="fa fa-plus"></i></button></span>
     41                   </div>
     42               </div>
     43             </div>
     44             <div class="form-group">
     45               <label class="col-sm-2 control-label" for="input-data-feed">{{ entry_data_feed }}</label>
     46               <div class="col-sm-10">
     47                 <textarea rows="5" id="input-data-feed" class="form-control" readonly>{{ data_feed }}</textarea>
     48               </div>
     49             </div>
     50             <div class="form-group">
     51               <label class="col-sm-2 control-label" for="input-status">{{ entry_status }}</label>
     52               <div class="col-sm-10">
     53                 <select name="feed_google_base_status" id="input-status" class="form-control">
     54                   {% if feed_google_base_status %}
     55                   <option value="1" selected="selected">{{ text_enabled }}</option>
     56                   <option value="0">{{ text_disabled }}</option>
     57                   {% else %}
     58                   <option value="1">{{ text_enabled }}</option>
     59                   <option value="0" selected="selected">{{ text_disabled }}</option>
     60                   {% endif %}
     61                 </select>
     62               </div>
     63           </div>
     64         </form>
     65       </div>
     66     </div>
     67   </div>
     68   <script type="text/javascript"><!--
     69 // Google Category
     70 $('input[name=\'google_base_category\']').autocomplete({
     71     'source': function(request, response) {
     72       $.ajax({
     73         url: 'index.php?route=extension/feed/google_base/autocomplete&user_token={{ user_token }}&filter_name=' +  encodeURIComponent(request),
     74         dataType: 'json',
     75         success: function(json) {
     76           response($.map(json, function(item) {
     77             return {
     78               label: item['name'],
     79               value: item['google_base_category_id']
     80             }
     81           }));
     82         },
     83         error: function(xhr, ajaxOptions, thrownError) {
     84           alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
     85         }
     86       });
     87     },
     88     'select': function(item) {
     89       $(this).val(item['label']);
     90       $('input[name=\'google_base_category_id\']').val(item['value']);
     91   }
     92 });
     93 
     94 // Category
     95 $('input[name=\'category\']').autocomplete({
     96 	'source': function(request, response) {
     97 		$.ajax({
     98 			url: 'index.php?route=catalog/category/autocomplete&user_token={{ user_token }}&filter_name=' +  encodeURIComponent(request),
     99 			dataType: 'json',
    100 			success: function(json) {
    101 				response($.map(json, function(item) {
    102 					return {
    103 						label: item['name'],
    104 						value: item['category_id']
    105 					}
    106 				}));
    107 			},
    108       error: function(xhr, ajaxOptions, thrownError) {
    109         alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
    110       }
    111     });
    112 	},
    113 	'select': function(item) {
    114       $(this).val(item['label']);
    115       $('input[name="category_id"]').val(item['value']);
    116     }
    117 });
    118 
    119 $('#category').delegate('.pagination a', 'click', function(e) {
    120 	e.preventDefault();
    121 
    122 	$('#category').load(this.href);
    123 });
    124 
    125 $('#category').load('index.php?route=extension/feed/google_base/category&user_token={{ user_token }}');
    126 
    127 $('#button-category-add').on('click', function() {
    128 	$.ajax({
    129 		url: 'index.php?route=extension/feed/google_base/addcategory&user_token={{ user_token }}',
    130 		type: 'post',
    131 		dataType: 'json',
    132 		data: 'google_base_category_id=' + $('input[name=\'google_base_category_id\']').val() + '&category_id=' + $('input[name=\'category_id\']').val(),
    133 		beforeSend: function() {
    134 			$('#button-category-add').button('loading');
    135 		},
    136 		complete: function() {
    137 			$('#button-category-add').button('reset');
    138 		},
    139 		success: function(json) {
    140 			$('.alert-dismissible').remove();
    141 
    142 			if (json['error']) {
    143 				$('#category').before('<div class="alert alert-danger alert-dismissible"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');
    144 			}
    145 
    146 			if (json['success']) {
    147 				$('#category').load('index.php?route=extension/feed/google_base/category&user_token={{ user_token }}');
    148 
    149 				$('#category').before('<div class="alert alert-success alert-dismissible"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');
    150 
    151 				$('input[name=\'category\']').val('');
    152           $('input[name=\'category_id\']').val('');
    153           $('input[name=\'google_base_category\']').val('');
    154           $('input[name=\'google_base_category_id\']').val('');
    155 			}
    156 		},
    157 		error: function(xhr, ajaxOptions, thrownError) {
    158 			alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
    159 		}
    160 	});
    161 });
    162 
    163 $('#category').delegate('.btn-danger', 'click', function() {
    164 	var node = this;
    165 
    166 	$.ajax({
    167 		url: 'index.php?route=extension/feed/google_base/removecategory&user_token={{ user_token }}',
    168 		type: 'post',
    169 		data: 'category_id=' + encodeURIComponent(this.value),
    170 		dataType: 'json',
    171 		crossDomain: true,
    172 		beforeSend: function() {
    173 			$(node).button('loading');
    174 		},
    175 		complete: function() {
    176 			$(node).button('reset');
    177 		},
    178 		success: function(json) {
    179 			$('.alert-dismissible').remove();
    180 
    181 			// Check for errors
    182 			if (json['error']) {
    183 				$('#content > .container-fluid').prepend('<div class="alert alert-danger alert-dismissible"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');
    184 			}
    185 
    186       if (json['success']) {
    187 				$('#category').load('index.php?route=extension/feed/google_base/category&user_token={{ user_token }}');
    188 
    189 				$('#category').before('<div class="alert alert-success alert-dismissible"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');
    190 			}
    191 		},
    192 		error: function(xhr, ajaxOptions, thrownError) {
    193 			alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
    194 		}
    195 	});
    196 });
    197 
    198 $('#button-import').on('click', function() {
    199 	$('#form-upload').remove();
    200 
    201 	$('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>');
    202 
    203 	$('#form-upload input[name=\'file\']').trigger('click');
    204 
    205 	if (typeof timer != 'undefined') {
    206     clearInterval(timer);
    207 	}
    208 
    209 	timer = setInterval(function() {
    210 		if ($('#form-upload input[name=\'file\']').val() != '') {
    211 			clearInterval(timer);
    212 
    213 			$.ajax({
    214 				url: 'index.php?route=extension/feed/google_base/import&user_token={{ user_token }}',
    215 				type: 'post',
    216 				dataType: 'json',
    217 				data: new FormData($('#form-upload')[0]),
    218 				cache: false,
    219 				contentType: false,
    220 				processData: false,
    221 				beforeSend: function() {
    222 					$('#button-import').button('loading');
    223 				},
    224 				complete: function() {
    225 					$('#button-import').button('reset');
    226 				},
    227 				success: function(json) {
    228 					$('.alert-dismissible').remove();
    229 
    230           if (json['error']) {
    231         		$('#content > .container-fluid').prepend('<div class="alert alert-danger alert-dismissible"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');
    232         	}
    233 
    234         	if (json['success']) {
    235         		$('#content > .container-fluid').prepend('<div class="alert alert-success alert-dismissible"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>');
    236         	}
    237 				},
    238 				error: function(xhr, ajaxOptions, thrownError) {
    239 					alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
    240 				}
    241 			});
    242 		}
    243 	}, 500);
    244 });
    245 //--></script>
    246 </div>
    247 {{ footer }}