You can subscribe to this list here.
| 2011 |
Jan
|
Feb
|
Mar
(4) |
Apr
(57) |
May
(31) |
Jun
(21) |
Jul
(11) |
Aug
(23) |
Sep
(22) |
Oct
(36) |
Nov
(62) |
Dec
(85) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2012 |
Jan
(24) |
Feb
(24) |
Mar
(65) |
Apr
(232) |
May
(118) |
Jun
(22) |
Jul
(54) |
Aug
(57) |
Sep
(14) |
Oct
(27) |
Nov
(16) |
Dec
(19) |
| 2013 |
Jan
(16) |
Feb
(12) |
Mar
(3) |
Apr
(17) |
May
(2) |
Jun
(30) |
Jul
(33) |
Aug
(19) |
Sep
(35) |
Oct
(58) |
Nov
(27) |
Dec
(64) |
| 2014 |
Jan
(102) |
Feb
(80) |
Mar
(15) |
Apr
(4) |
May
(3) |
Jun
(3) |
Jul
(5) |
Aug
(11) |
Sep
(15) |
Oct
|
Nov
(3) |
Dec
(5) |
| 2015 |
Jan
(5) |
Feb
(4) |
Mar
(2) |
Apr
(11) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(9) |
Nov
(10) |
Dec
|
| 2016 |
Jan
(3) |
Feb
(2) |
Mar
(18) |
Apr
(13) |
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
(4) |
Oct
|
Nov
|
Dec
|
|
From: <os...@us...> - 2011-07-07 08:05:21
|
Revision: 3769
http://oscss.svn.sourceforge.net/oscss/?rev=3769&view=rev
Author: oscim
Date: 2011-07-07 08:05:14 +0000 (Thu, 07 Jul 2011)
Log Message:
-----------
correction coquille html
correction erreur secu traitement des datas
Modified Paths:
--------------
branches/2.1.0/catalog/ajax_exe.php
branches/2.1.0/catalog/includes/content/shopping_cart.php
branches/2.1.0/catalog/includes/modules/order_total/ot_shipping.php
branches/2.1.0/catalog/includes/triggers/search_suggest.inc
branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/content/shopping_cart.php
branches/2.1.0/catalog/install/includes/content/core.configuration.php
Modified: branches/2.1.0/catalog/ajax_exe.php
===================================================================
--- branches/2.1.0/catalog/ajax_exe.php 2011-07-06 07:51:31 UTC (rev 3768)
+++ branches/2.1.0/catalog/ajax_exe.php 2011-07-07 08:05:14 UTC (rev 3769)
@@ -21,7 +21,8 @@
@brief code is part of execution call trigger by name $action
@param $action string
*/
- $file= $page->getPathTemplate(). DIR_WS_TRIGGERS . $action . '.inc';
+// echo $file= $page->getPathTemplate(). DIR_WS_TRIGGERS . $action . '.inc';
+ $file= $page->fix_file(DIR_WS_TRIGGERS . $action . '.inc');
if( ($r=page::TestFile($file)) && $r !=false ){
require_once($file);
exit;
@@ -31,6 +32,7 @@
@brief code is part of execution call box
@param $_GET['box'] string le nom de la boxe
*/
+ if(!isset($_GET['box'])) exit;
$page->post_init();
$c=$page->oscss_boxes->_add($_GET['box'],'ajax','');
$box_left=$page->oscss_boxes->_call($_GET['box'],'ajax');
Modified: branches/2.1.0/catalog/includes/content/shopping_cart.php
===================================================================
--- branches/2.1.0/catalog/includes/content/shopping_cart.php 2011-07-06 07:51:31 UTC (rev 3768)
+++ branches/2.1.0/catalog/includes/content/shopping_cart.php 2011-07-07 08:05:14 UTC (rev 3769)
@@ -8,7 +8,7 @@
*\author oscim <mail aur...@os...> <www http://www.oscim.fr>
*\encode UTF-8
*\group content
- *\file
+ *\file
*\dir includes/content/
*\brief cart custommers
*/
@@ -43,8 +43,8 @@
<ul>
<li class="cartName"><?php echo $product['name'] ;?></li>
<li class="cartQty"> <?php
- if(_cst_bool('AJAX_CART_MODE')) echo MY_CART_QTY .' '. tep_draw_input_field('cart_quantity[]','cartQty'.$i, $product['quantity'], 'onkeyup="changecartqty('.$i.')"') . tep_draw_hidden_field('products_id[]', $product['id']) ;
- else echo MY_CART_QTY .' '. tep_draw_input_field('cart_quantity[]','cartQty', $product['quantity']) . tep_draw_hidden_field('products_id[]', $product['id']) ;
+ if(_cst_bool('AJAX_CART_MODE')) echo MY_CART_QTY .' '. tep_draw_input_field('cart_quantity[]','cartQty'.$i, $product['quantity'], ' size="2" onkeyup="changecartqty('.$i.')"') . tep_draw_hidden_field('products_id[]', $product['id']) ;
+ else echo MY_CART_QTY .' '. tep_draw_input_field('cart_quantity[]','cartQty', $product['quantity'], 'size="2" ') . tep_draw_hidden_field('products_id[]', $product['id']) ;
?> </li>
<!-- <li id="ajaxcartPriceht<?php echo $i; ?>" class="cartPrice"> <?php //echo $currencies->display_price($product['final_price'], 1, $product['quantity']) ;?> </li> -->
<li id="ajaxcartPrice<?php echo $i; ?>" class="cartPrice"> <?php echo $currencies->format($product['total_line_ttc']) ?> </li>
Modified: branches/2.1.0/catalog/includes/modules/order_total/ot_shipping.php
===================================================================
--- branches/2.1.0/catalog/includes/modules/order_total/ot_shipping.php 2011-07-06 07:51:31 UTC (rev 3768)
+++ branches/2.1.0/catalog/includes/modules/order_total/ot_shipping.php 2011-07-07 08:05:14 UTC (rev 3769)
@@ -78,7 +78,7 @@
function check() {
if (!isset($this->_check)) {
- $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_ORDER_TOTAL_SHIPPING_STATUS'");
+ $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_ORDER_TOTAL_SHIPPING_SORT_ORDER'");
$this->_check = tep_db_num_rows($check_query);
}
Modified: branches/2.1.0/catalog/includes/triggers/search_suggest.inc
===================================================================
--- branches/2.1.0/catalog/includes/triggers/search_suggest.inc 2011-07-06 07:51:31 UTC (rev 3768)
+++ branches/2.1.0/catalog/includes/triggers/search_suggest.inc 2011-07-07 08:05:14 UTC (rev 3769)
@@ -4,17 +4,20 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 24/01/11, 19:24
+ @date 07/07/11, 09:03
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@brief code is part of execution search suggest
*/
- if(!isset($_GET['search'])) exit;
- else $sh=tep_db_input(utf8_encode(strtolower($_GET['search'])));
- $sql = "SELECT pd.products_name, pd.products_id FROM " . TABLE_PRODUCTS . " p, ".TABLE_PRODUCTS_DESCRIPTION." pd ," . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c WHERE p.products_id = pd.products_id and p.products_status = '1' and pd.language_id = '" . (int)$languages_id . "' and ( pd.products_name like '%" . $sh . "%' ) and p2c.products_id=p.products_id and c.categories_id=p2c.categories_id and c.categories_status='1' LIMIT 15";
- $product_query = $DB->query($sql);
- while($product_array = $product_query->fetchAssoc())
- echo '<a href="'.tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $product_array['products_id']).'">'.$product_array['products_name'].'</a>'."\n";
+ if(!isset($_GET['search'])) exit;
+ else $sh=tep_db_prepare_input(utf8_encode(strtolower($_GET['search'])));
+
+ $sql = "SELECT DISTINCT pd.products_name, pd.products_id FROM " . TABLE_PRODUCTS . " p, ".TABLE_PRODUCTS_DESCRIPTION." pd ," . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c WHERE p.products_id = pd.products_id and p.products_status = '1' and pd.language_id = '" . (int)$languages_id . "' and ( pd.products_name like '%" . tep_db_input($sh) . "%' ) and p2c.products_id=p.products_id and c.categories_id=p2c.categories_id and c.categories_status='1' LIMIT 15";
+ $product_query = $DB->query($sql);
+
+ while($product_array = $product_query->fetchAssoc())
+ echo '<a href="'.tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $product_array['products_id']).'">'.$product_array['products_name'].'</a>'."\n";
+
?>
\ No newline at end of file
Modified: branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/content/shopping_cart.php
===================================================================
--- branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/content/shopping_cart.php 2011-07-06 07:51:31 UTC (rev 3768)
+++ branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/content/shopping_cart.php 2011-07-07 08:05:14 UTC (rev 3769)
@@ -58,7 +58,7 @@
</div>
<div class="shop_qte">
<?php if(_cst_bool('AJAX_CART_MODE')) echo ' '. tep_draw_input_field('cart_quantity[]','cartQty'.$i, $product['quantity'], 'size="2" onkeyup="changecartqty('.$i.')"') . tep_draw_hidden_field('products_id[]', $product['id']) ;
- else echo ' '. tep_draw_input_field('cart_quantity[]','cartQty', $product['quantity']) . tep_draw_hidden_field('products_id[]', $product['id']) ;
+ else echo ' '. tep_draw_input_field('cart_quantity[]','cartQty', $product['quantity'], 'size="2" ') . tep_draw_hidden_field('products_id[]', $product['id']) ;
?>
</div>
<div class="shop_total_unitaire">
@@ -102,9 +102,7 @@
<input class="submitBt navBt" type="submit" value="<?php echo IMAGE_BUTTON_UPDATE_CART; ?>" />
<?php
- $back = sizeof($navigation->path)-2;
- if (isset($navigation->path[$back])) echo '<a class="navBt" href="' . tep_href_link($navigation->path[$back]['page'], tep_array_to_string($navigation->path[$back]['get'], array('action')), $navigation->path[$back]['mode']) . '">' . IMAGE_BUTTON_CONTINUE_SHOPPING . '</a>';
- else echo '<a class="navBt" href="javascript:history.go(-1)">' . IMAGE_BUTTON_BACK . '</a>'; ?>
+ echo '<a class="navBt" href="javascript:history.go(-1)">' . IMAGE_BUTTON_BACK . '</a>'; ?>
<?php echo '<a class="navBt" href="' . tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL') . '">' . IMAGE_BUTTON_CHECKOUT . '</a>'; ?>
</div>
<?php } else { ?>
Modified: branches/2.1.0/catalog/install/includes/content/core.configuration.php
===================================================================
--- branches/2.1.0/catalog/install/includes/content/core.configuration.php 2011-07-06 07:51:31 UTC (rev 3768)
+++ branches/2.1.0/catalog/install/includes/content/core.configuration.php 2011-07-07 08:05:14 UTC (rev 3769)
@@ -421,7 +421,7 @@
'' . "\n" .
'# DEB Sans rewrite, placer des fichier du même nom a la racine' . "\n" .
'# DEB Retrocompatibiliter' . "\n" .
- ' RewriteRule ^conditions.php$ content.php?_ID=conditions.php&%{QUERY_STRING}' . "\n" .
+ ' RewriteRule ^conditions.php$ content.php?content=3&%{QUERY_STRING}' . "\n" .
' RewriteRule ^contact.php$ content.php?_ID=contact.php&%{QUERY_STRING}' . "\n" .
' RewriteRule ^cookie_usage.php$ content.php?_ID=cookie_usage.php&%{QUERY_STRING}' . "\n" .
' RewriteRule ^info_shopping_cart.php$ content.php?_ID=info_shopping_cart.php&%{QUERY_STRING}' . "\n" .
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-07-06 07:51:38
|
Revision: 3768
http://oscss.svn.sourceforge.net/oscss/?rev=3768&view=rev
Author: oscim
Date: 2011-07-06 07:51:31 +0000 (Wed, 06 Jul 2011)
Log Message:
-----------
correction coquille
Correction erreur email , prix et arrondis
correction erreur module de payment extension
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/gabarit/orders/display_view.edit.gab
branches/2.1.0/catalog/common/classes/order.php
branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/response.php
branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.php
branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/modules/payment/paypal_ipn/paypal_ipn.php
Added Paths:
-----------
branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.txt
Modified: branches/2.1.0/catalog/admin/includes/gabarit/orders/display_view.edit.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/orders/display_view.edit.gab 2011-07-05 06:37:22 UTC (rev 3767)
+++ branches/2.1.0/catalog/admin/includes/gabarit/orders/display_view.edit.gab 2011-07-06 07:51:31 UTC (rev 3768)
@@ -117,10 +117,8 @@
<?php if(_cst_bool('MODULE_ACCOUNT_RETURN_PRODUCTS_STATUS')): ?>
<td> </td>
<?php endif; ?>
- <td colspan="5" > </td>
- <td class="tright"><?php echo orders::$order->totals[$i]['title'] ?></td>
+ <td colspan="7" class="tright"><?php echo orders::$order->totals[$i]['title'] ?></td>
<td class="tcenter"><?php echo orders::$order->totals[$i]['text'] ?></td>
- <td> </td>
</tr>
<?php } ?>
<!-- Block Total eof-->
Modified: branches/2.1.0/catalog/common/classes/order.php
===================================================================
--- branches/2.1.0/catalog/common/classes/order.php 2011-07-05 06:37:22 UTC (rev 3767)
+++ branches/2.1.0/catalog/common/classes/order.php 2011-07-06 07:51:31 UTC (rev 3768)
@@ -65,7 +65,7 @@
* @param $order_id int
*/
function query($order_id) {
- global $languages_id;
+ global $languages_id,$currencies;
$order_id = tep_db_prepare_input($order_id);
@@ -182,9 +182,10 @@
$shown_price= ($this->products[$index]['final_price'] * $this->products[$index]['qty']);
- $this->products[$index]['total_line'] = $shown_price;
+ $this->products[$index]['final_price_ttc'] = tep_round(tep_add_tax($this->products[$index]['final_price'], $this->products[$index]['tax']),$currencies->currencies[DEFAULT_CURRENCY]['decimal_places']);
+ $this->products[$index]['total_line'] = tep_round($shown_price,$currencies->currencies[DEFAULT_CURRENCY]['decimal_places']);
$this->products[$index]['total_line_taxe'] = tep_calculate_tax($shown_price, $this->products[$index]['tax']);
- $this->products[$index]['total_line_ttc'] = tep_add_tax($this->products[$index]['final_price'], $this->products[$index]['tax']) * $this->products[$index]['qty'];
+ $this->products[$index]['total_line_ttc'] = tep_round(tep_add_tax($this->products[$index]['final_price'], $this->products[$index]['tax']) * $this->products[$index]['qty'],$currencies->currencies[DEFAULT_CURRENCY]['decimal_places']);
$this->info['tax_groups']["{$this->products[$index]['tax']}"] = '1';
Modified: branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/response.php
===================================================================
--- branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/response.php 2011-07-05 06:37:22 UTC (rev 3767)
+++ branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/response.php 2011-07-06 07:51:31 UTC (rev 3768)
@@ -88,7 +88,7 @@
$res=$aca_modules->preventDuplicate(array('pre_order_id'=>$hash['order_id']));
$aca_modules->update_status_order(MODULE_PAYMENT_ATOSSHERLOCKS_ORDER_STATUS_ID_SUCCESS);
-
+ exit;
break;
case '02':
/* Referral, autorization required by phone
Modified: branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.php
===================================================================
--- branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.php 2011-07-05 06:37:22 UTC (rev 3767)
+++ branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.php 2011-07-06 07:51:31 UTC (rev 3768)
@@ -8,28 +8,28 @@
@encode UTF-8
*/
- define('EMAIL_TEXT_SUBJECT_FOR_IPN', 'Commande, suivi payment ');
- define('MODULE_PAYMENT_PAYPAL_IPN_TEXT_TITLE', 'CB (via PayPal)');
- define('MODULE_PAYMENT_PAYPAL_IPN_TEXT_DESCRIPTION', 'CB (via PayPal)');
- define('MODULE_PAYMENT_PAYPAL_IPN_TEXT_SELECTION', '<img src="https://www.paypal.com/en_US/i/logo/PayPal_mark_37x23.gif" align="left" style="margin-right:7px;"> Carte de crédit/débit (via PayPal)');
- define('MODULE_PAYMENT_PAYPAL_IPN_TEXT_LAST_CONFIRM', '<img src="https://www.paypal.com/en_US/i/logo/PayPal_mark_37x23.gif" align="left" style="margin-right:7px;"> Carte de crédit/débit (via PayPal)');
- define('MODULE_PAYMENT_PAYPAL_STANDARD_TEXT_TITLE', 'PayPal systeme de paiement');
- define('MODULE_PAYMENT_PAYPAL_STANDARD_TEXT_PUBLIC_TITLE', 'PayPal systeme de paiement)');
- define('MODULE_PAYMENT_PAYPAL_STANDARD_TEXT_DESCRIPTION', '<img src="images/icon_popup.gif" border="0"> <a href="https://www.paypal.com/mrb/pal=PS2X9Q773CKG4" target="_blank" style="text-decoration: underline; font-weight: bold;">PayPal Site</a> <a href="javascript:toggleDivBlock(\'paypalStdInfo\');">(info)</a><span id="paypalStdInfo" style="display: none;"><br><i>avec ce lien, de nouveaux clients pour un petit bonus</i></span>');
+$lang['email text subject for ipn'] = 'Commande, suivi payment ';
+$lang['module payment paypal ipn text title'] = 'CB (via PayPal)';
+$lang['module payment paypal ipn text description'] = 'CB (via PayPal)';
+$lang['module payment paypal ipn text selection'] = '<img src="https://www.paypal.com/en_US/i/logo/PayPal_mark_37x23.gif" align="left" style="margin-right:7px;"> Carte de crédit/débit (via PayPal)';
+$lang['module payment paypal ipn text last confirm'] = '<img src="https://www.paypal.com/en_US/i/logo/PayPal_mark_37x23.gif" align="left" style="margin-right:7px;"> Carte de crédit/débit (via PayPal)';
+$lang['module payment paypal standard text title'] = 'PayPal systeme de paiement';
+$lang['module payment paypal standard text public title'] = 'PayPal systeme de paiement)';
+$lang['module payment paypal standard text description'] = '<img src="images/icon_popup.gif" border="0"> <a href="https://www.paypal.com/mrb/pal=PS2X9Q773CKG4" target="_blank" style="text-decoration: underline; font-weight: bold;">PayPal Site</a> <a href="javascript:toggleDivBlock(\'paypalStdInfo\';">(info)</a><span id="paypalStdInfo" style="display: none;"><br><i>avec ce lien, de nouveaux clients pour un petit bonus</i></span>';
// Sets the text for the "continue" button on the PayPal Payment Complete Page Maximum of 60 characters!
- define('CONFIRMATION_BUTTON_TEXT', 'Finaliser votre commande');
+$lang['confirmation button text'] = 'Finaliser votre commande';
- define('MODULE_PAYMENT_PAYPAL_TEXT_EMAIL_FOOTER', '');
+$lang['module payment paypal text email footer'] = '';
- define('EMAIL_PAYPAL_PENDING_NOTICE', 'Votre paiement est actuellement en attente. Nous vous enverrons une copie de votre commande dés que le paiement aura été effectué.');
- define('PAYPAL_ADDRESS', 'Adresse Paypal du client');
- define('EMAIL_TEXT_TELEFONNUMMER', 'Telefon Nummer: ');
- define('EMAIL_TEXT_EMAIL', 'Email: ');
- define('EMAIL_TEXT_GRUSS', 'Guten Tag');
- define('EMAIL_TEXT_ANREDE', 'Vielen Dank fur Ihre Bestellung bei');
- define('EMAIL_TEXT_DATE_ORDERED_TIME', '');
+$lang['email paypal pending notice'] = 'Votre paiement est actuellement en attente. Nous vous enverrons une copie de votre commande dés que le paiement aura été effectué.';
+$lang['paypal address'] = 'Adresse Paypal du client';
+$lang['email text telefonnummer'] = 'Telefon Nummer: ';
+$lang['email text email'] = 'Email: ';
+$lang['email text gruss'] = 'Guten Tag';
+$lang['email text anrede'] = 'Vielen Dank fur Ihre Bestellung bei';
+$lang['email text date ordered time'] = '';
/* If you want to include a message with the order email, enter text here: */
/* Use \n for line breaks */
- define('MODULE_PAYMENT_PAYPAL_IPN_TEXT_EMAIL_FOOTER', '');
+$lang['module payment paypal ipn text email footer'] = '';
?>
Added: branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.txt
===================================================================
--- branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.txt (rev 0)
+++ branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/languages/fr_FR/modules/payment/paypal_ipn/paypal_ipn.txt 2011-07-06 07:51:31 UTC (rev 3768)
@@ -0,0 +1,35 @@
+<?php
+/**
+ @licence GPL 2005-2009 The osCSS developers - osCSS Open Source E-commerce
+ @package oscss-2 <www http://www.oscss.org>
+ @version Rc-3
+ @date 27/03/10, 14:32
+ @author oscim <mail aur...@os...> <www http://www.oscim.fr>
+ @encode UTF-8
+*/
+
+$lang['email text subject for ipn'] = 'Commande, suivi payment ';
+$lang['module payment paypal ipn text title'] = 'CB (via PayPal)';
+$lang['module payment paypal ipn text description'] = 'CB (via PayPal)';
+$lang['module payment paypal ipn text selection'] = '<img src="https://www.paypal.com/en_US/i/logo/PayPal_mark_37x23.gif" align="left" style="margin-right:7px;"> Carte de crédit/débit (via PayPal)';
+$lang['module payment paypal ipn text last confirm'] = '<img src="https://www.paypal.com/en_US/i/logo/PayPal_mark_37x23.gif" align="left" style="margin-right:7px;"> Carte de crédit/débit (via PayPal)';
+$lang['module payment paypal standard text title'] = 'PayPal systeme de paiement';
+$lang['module payment paypal standard text public title'] = 'PayPal systeme de paiement)';
+$lang['module payment paypal standard text description'] = '<img src="images/icon_popup.gif" border="0"> <a href="https://www.paypal.com/mrb/pal=PS2X9Q773CKG4" target="_blank" style="text-decoration: underline; font-weight: bold;">PayPal Site</a> <a href="javascript:toggleDivBlock(\'paypalStdInfo\';">(info)</a><span id="paypalStdInfo" style="display: none;"><br><i>avec ce lien, de nouveaux clients pour un petit bonus</i></span>';
+ // Sets the text for the "continue" button on the PayPal Payment Complete Page Maximum of 60 characters!
+$lang['confirmation button text'] = 'Finaliser votre commande';
+
+$lang['module payment paypal text email footer'] = '';
+
+$lang['email paypal pending notice'] = 'Votre paiement est actuellement en attente. Nous vous enverrons une copie de votre commande dés que le paiement aura été effectué.';
+$lang['paypal address'] = 'Adresse Paypal du client';
+$lang['email text telefonnummer'] = 'Telefon Nummer: ';
+$lang['email text email'] = 'Email: ';
+$lang['email text gruss'] = 'Guten Tag';
+$lang['email text anrede'] = 'Vielen Dank fur Ihre Bestellung bei';
+$lang['email text date ordered time'] = '';
+ /* If you want to include a message with the order email, enter text here: */
+ /* Use \n for line breaks */
+$lang['module payment paypal ipn text email footer'] = '';
+
+?>
Modified: branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/modules/payment/paypal_ipn/paypal_ipn.php
===================================================================
--- branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/modules/payment/paypal_ipn/paypal_ipn.php 2011-07-05 06:37:22 UTC (rev 3767)
+++ branches/2.1.0/extensions/PAYPAL_IPN_stable/catalog/includes/modules/payment/paypal_ipn/paypal_ipn.php 2011-07-06 07:51:31 UTC (rev 3768)
@@ -1,10 +1,10 @@
<?php
/**
- @licence GPL 2005-2010 The osCSS developers - osCSS Open Source E-commerce
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 30/10/10, 09:31
+ @date 06/07/11, 09:27
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@@ -192,7 +192,7 @@
$parameters['item_name_' . $item] = $order->products[$i]['name'];
$parameters['item_number_' . $item] = $order->products[$i]['model'];
// BOF Tax pre item fix by AlexStudio
- if(_cst_bool('MOVE_TAX_TO_TOTAL_AMOUNT')) $parameters['amount_' . $item] = number_format(($order->products[$i]['final_price'] + $tax_value) * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
+ if(_cst_bool('MODULE_PAYMENT_PAYPAL_IPN_MOVE_TAX_TO_TOTAL_AMOUNT')) $parameters['amount_' . $item] = number_format(($order->products[$i]['final_price'] + $tax_value) * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
else {
$parameters['amount_' . $item] = number_format($order->products[$i]['final_price'] * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
$parameters['tax_' . $item] = number_format($tax_value * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
@@ -279,7 +279,7 @@
$parameters['quantity_' . $item] = 1;
}
- if(_cst_bool('MOVE_TAX_TO_TOTAL_AMOUNT')) {
+ if(_cst_bool('MODULE_PAYMENT_PAYPAL_IPN_MOVE_TAX_TO_TOTAL_AMOUNT')) {
$parameters['amount'] = number_format(($subtotal + $order->info['tax']) * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
} else {
// default
@@ -290,22 +290,27 @@
$parameters['cmd'] = '_ext-enter';
$parameters['redirect_cmd'] = '_xclick';
$parameters['item_name'] = STORE_NAME;
- if(_cst_bool('MOVE_TAX_TO_TOTAL_AMOUNT')) {
-// $parameters['amount'] = number_format(($subtotal + $order->info['tax']) * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
- $parameters['amount'] = number_format(($subtotal/* + $order->info['tax']*/) * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
+
+
+ if(_cst_bool('MODULE_PAYMENT_PAYPAL_IPN_MOVE_TAX_TO_TOTAL_AMOUNT')) {
+ $parameters['amount'] = number_format(($subtotal) * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
} else {
// default
$parameters['amount'] = number_format($subtotal * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
$parameters['tax'] = number_format($order->info['tax'] * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
}
+
+
if ($order->content_type != 'virtual') {
if (isset($order_total['ot_shipping']))
$parameters['shipping'] = number_format($order_total['ot_shipping'] * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
else $parameters['shipping']='0';
}
+
if (isset($order_total['ot_loworderfee']))
$parameters['handling'] = number_format($order_total['ot_loworderfee'] * $currencies->get_value($my_currency), $currencies->get_decimal_places($my_currency));
else $parameters['handling']=0;
+
}
// BOF billing address
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-07-05 06:37:28
|
Revision: 3767
http://oscss.svn.sourceforge.net/oscss/?rev=3767&view=rev
Author: oscim
Date: 2011-07-05 06:37:22 +0000 (Tue, 05 Jul 2011)
Log Message:
-----------
amelioration detection des class et type par le constructeur public
Modified Paths:
--------------
branches/2.1.0/catalog/includes/classes/page.php
branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/header.php
Modified: branches/2.1.0/catalog/includes/classes/page.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/page.php 2011-07-04 20:10:12 UTC (rev 3766)
+++ branches/2.1.0/catalog/includes/classes/page.php 2011-07-05 06:37:22 UTC (rev 3767)
@@ -280,6 +280,11 @@
$this->page['type']='listing_cat';
}elseif (in_array(substr($this->page['content'],0,6) , array('listin','index_','index.'))) {
$this->page['type']='listing';
+
+ if(isset($this->page['var']['manufacturers']))$this->page['class']='manufactuers';
+ elseif(!empty($this->page['var']['cPath'])) $this->page['class']='categories';
+ else $this->page['class']='listing';
+
}elseif (in_array(substr($this->page['content'],0,7) , array('content')) && isset($_GET['content']) ) {
$this->page['type']='content';
$this->page['class']='single';
@@ -792,6 +797,12 @@
public function the_type(){ return (isset($this->page['type'])? $this->page['type'] : 'none') ; }
/**
+ @fn the_typeClass()
+ \brief retourne le type class de page
+ */
+ public function the_typeClass(){ return (isset($this->page['class'])? $this->page['class'] : 'none') ; }
+
+ /**
@fn oscss_body_id()
@note Get the boxes
*/
Modified: branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/header.php
===================================================================
--- branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/header.php 2011-07-04 20:10:12 UTC (rev 3766)
+++ branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/header.php 2011-07-05 06:37:22 UTC (rev 3767)
@@ -47,7 +47,7 @@
<link rel="alternate" type="application/rss+xml" title="global" href="<?php echo tep_get_httpdir().'rss.php' ?>" />
<link rel="canonical" href="<?php echo CanonicalUrl(); ?>" />
</head>
- <body id="<?php echo page::oscss_body_id() ; ?>" class="<?php echo 'Type_'.$page->the_type(); ?>">
+ <body id="<?php echo page::oscss_body_id() ; ?>" class="<?php echo 'Type_'.$page->the_type(); ?> <?php echo 'Class_'.$page->the_typeClass('class'); ?>">
<?php /** Retour d'erreur checkup sur la boutique */ $this->messageStack->_draw('header'); ?>
<div id="main_container">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-07-04 20:10:19
|
Revision: 3766
http://oscss.svn.sourceforge.net/oscss/?rev=3766&view=rev
Author: oscim
Date: 2011-07-04 20:10:12 +0000 (Mon, 04 Jul 2011)
Log Message:
-----------
Ajout var de configuration cache
Modified Paths:
--------------
branches/2.1.0/catalog/includes/classes/page.php
branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt
branches/2.1.0/catalog/install/oscss_config.sql
Modified: branches/2.1.0/catalog/includes/classes/page.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/page.php 2011-07-04 08:50:18 UTC (rev 3765)
+++ branches/2.1.0/catalog/includes/classes/page.php 2011-07-04 20:10:12 UTC (rev 3766)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 28/01/11, 00:08
+ @date 04/07/11, 00:08
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
\class page
@@ -510,10 +510,18 @@
$this->new_class('oscss_plugins');
$this->new_class('categorie');
//! Class specifique type de page
- if (in_array($this->the_type(),array('listing','product','account','home','content'))){
+ if (in_array($this->the_type(),explode(',',PUBLIC_PAGE_TYPE))){
global $ACA;
- $this->new_class($this->the_type(),true);
- $ACA = $this->return_object($this->the_type());
+ if($this->new_class($this->the_type(),true) !=false) {
+ $this->new_class($this->the_type(),true);
+ $ACA = $this->return_object($this->the_type());
+ }
+ else{
+ new AcaFactory($this->the_type());
+ $ACA =$this->add_object($this->the_type(), new AcaFactory($this->the_type()) );
+ // $this->new_class($this->the_type(),true);
+ $ACA = $this->return_object($this->the_type());
+ }
}
//! Init du theme
$this->oscss_get_gabarit_template();
Modified: branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt
===================================================================
--- branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt 2011-07-04 08:50:18 UTC (rev 3765)
+++ branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt 2011-07-04 20:10:12 UTC (rev 3766)
@@ -30,8 +30,9 @@
$lg['CFG_CLASS_VIRTUAL_TYPE_4_S']= 'configuration type products 4';
$lg['ORPHELIN_COLLECTOR_S']= 'Collecteur d\'orphelin';
$lg['ORPHELIN_COLLECTOR_L']= 'Préciser l\'id de la catégorie dans laquelle les éléments orphelins sont associés';
+$lg['PUBLIC_PAGE_TYPE_S']= 'type page public';
+$lg['PUBLIC_PAGE_TYPE_L']= 'precise les type de page public, cf extension et type extensions';
-
/// 1 store
$lg['ORDERS_NUMBER_PREFIX_S']= 'Préfixe numéro commande';
$lg['ORDERS_NUMBER_PREFIX_L']= 'Indiquer le préfixe des numéros de commande le chiffre precise le nombre de chiffre du numéro; ex: "ym-5"(1005-00001); Laissez vide si vous ne voulez pas de préfixe.';
Modified: branches/2.1.0/catalog/install/oscss_config.sql
===================================================================
--- branches/2.1.0/catalog/install/oscss_config.sql 2011-07-04 08:50:18 UTC (rev 3765)
+++ branches/2.1.0/catalog/install/oscss_config.sql 2011-07-04 20:10:12 UTC (rev 3766)
@@ -171,7 +171,7 @@
insert into osc_cip values (15, 'OT_SUBTOTAL_stable', 1, 'OT_SUBTOTAL_stable', '1.0');
insert into osc_cip values (16, 'OT_TOTAL_stable', 1, 'OT_TOTAL_stable', '1.0');
insert into osc_cip values (17, 'OT_SHIPPING_stable', 1, 'OT_SHIPPING_stable', '1.0');
-insert into osc_cip values (18, 'SVNUPDATE_stable', 1, 'SVNUPDATE_stable', '1.0');
+## insert into osc_cip values (18, 'SVNUPDATE_stable', 1, 'SVNUPDATE_stable', '1.0');
insert into osc_cip values (19, 'COD_stable', 1, 'COD_stable', '1.0');
@@ -188,6 +188,7 @@
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function,configuration_type) values ('CFG_CLASS_VIRTUAL_TYPE_4_S', 'CFG_CLASS_VIRTUAL_TYPE_4', '', 'CFG_CLASS_VIRTUAL_TYPE_L', '0', '0', NOW(), NOW(),NULL, 'tep_cfg_text_auto(', 1);
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function,configuration_type) values ('TYPE_VIRTUAL_PRODUCTS_S', 'TYPE_VIRTUAL_PRODUCTS', '3,4', 'TYPE_VIRTUAL_PRODUCTS_L', '0', '0', NOW(), NOW(),NULL, NULL, 2);
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function,configuration_type) values ('ORPHELIN_COLLECTOR_S', 'ORPHELIN_COLLECTOR', '1', 'ORPHELIN_COLLECTOR_L', '0', '0', NOW(), NOW(),NULL, NULL, 1);
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function,configuration_type) values ('PUBLIC_PAGE_TYPE_S', 'PUBLIC_PAGE_TYPE', 'listing,product,account,home,content', 'PUBLIC_PAGE_TYPE_L', '0', '0', NOW(), NOW(),NULL, NULL, 1);
## 1 store
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-07-04 08:50:25
|
Revision: 3765
http://oscss.svn.sourceforge.net/oscss/?rev=3765&view=rev
Author: oscim
Date: 2011-07-04 08:50:18 +0000 (Mon, 04 Jul 2011)
Log Message:
-----------
Remplacement des class aca du backoffice , par une class AcaFactory normalisant les appels. Cette class n'est ?\195?\160 appel?\195?\169 que dans le cas de class aca generic.
Mise a niveau de l'admin , et nettoyage des elements devenu obsoltes dans les modules de page (categories, customers, cms_content)
Suppression de la class aca.generic
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/appli_top_Test.php
branches/2.1.0/catalog/admin/includes/application_top.php
branches/2.1.0/catalog/admin/includes/classes/aca.php
branches/2.1.0/catalog/admin/includes/content/aca.top.inc
branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php
branches/2.1.0/catalog/admin/includes/inc_base_lib.php
branches/2.1.0/catalog/admin/includes/modules/pages/categories.php
branches/2.1.0/catalog/admin/includes/modules/pages/cms_content.php
branches/2.1.0/catalog/admin/includes/modules/pages/customers.php
Removed Paths:
-------------
branches/2.1.0/catalog/admin/includes/classes/aca.generic.php
Modified: branches/2.1.0/catalog/admin/includes/appli_top_Test.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/appli_top_Test.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/appli_top_Test.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -4,10 +4,10 @@
\portion code Copyright (c) 2002 osCommerce
\package osCSS-2 <www http://www.oscss.org>
\version 2.1.0
- \date 04/11/10, 17:51
+ @date 04/07/11, 10:14
\author oscim <mail aur...@os...> <www http://www.oscim.fr>
\encode UTF-8
- \file
+ \file
\dir admin/includes/
\brief is init file oscss core backoffice for test by phpUnit.
the file is one file loaded
@@ -18,9 +18,9 @@
define('OSCSS_DEBUG', true);
define('OSCSS_SHOW_QUERIES', true);
define('OSCSS_GARBAGE_ERROR', false);
-
-
+
+
//! Start the clock for the page parse time log
define('PAGE_PARSE_START_TIME', microtime());
@@ -36,8 +36,8 @@
// force config in object, by stdclass
$conf = (object)$conf;
-
-
+
+
error_reporting(E_ALL);
@@ -59,7 +59,7 @@
include(DIR_FS_CATALOG.DIR_WS_COMMON_CLASSES. 'email.php');
include(DIR_FS_CATALOG.DIR_WS_COMMON_CLASSES . 'mime.php');
include(DIR_FS_CATALOG.DIR_WS_COMMON_CLASSES . 'Template.php');
-
+
//! var init
$page_admin=(isset($_GET['page_admin']) || !empty($_GET['page_admin']) ) ? tep_sanitize_string($_GET['page_admin']) : 'index';
$action = (isset($_GET['action'])) ? tep_sanitize_string($_GET['action']) : '';
@@ -198,7 +198,7 @@
/// Admin begin
/**
- * TODO: add init session in test
+ * TODO: add init session in test
*/
//if ($current_page != FILENAME_PASSWORD_FORGOTTEN) tep_admin_check_login();
@@ -219,7 +219,8 @@
/// Element modulaire aca
// require ($rpa.DIR_WS_CLASSES.'aca.generic.php');
- $generic_modules = new generic();
+// $generic_modules = new generic();
+ $generic_modules = new AcaFactory('generic');
/// Definition pour gestion affichage
if (isset($_GET['row_by_page'])){
Modified: branches/2.1.0/catalog/admin/includes/application_top.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/application_top.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/application_top.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 29/03/11, 16:38
+ @date 04/07/11, 10:14
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
\file
@@ -227,7 +227,8 @@
/// Element modulaire aca
// require ($rpa.DIR_WS_CLASSES.'aca.generic.php');
- $generic_modules = new generic();
+// $generic_modules = new generic();
+ $generic_modules = new AcaFactory('generic');
/// Definition pour gestion affichage
if (isset($_GET['row_by_page'])){
Deleted: branches/2.1.0/catalog/admin/includes/classes/aca.generic.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/classes/aca.generic.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/classes/aca.generic.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -1,108 +0,0 @@
-<?php if (!defined('HTTP_SERVER')) die('You can not access this file directly!');
-/**
- @licence GPL 2005-2010 The osCSS developers - osCSS Open Source E-commerce
- @package oscss-2 <www http://www.oscss.org>
- @version 2.0.9h
- @date 06/06/10, 09:22
- @author oscim <mail aur...@os...> <www http://www.oscim.fr>
- @encode UTF-8
- @class generic
-
-*/
-
-
-
-class generic
- extends aca
- implements mod_aca {
- var $modules =array();
- var $generic_id;
- var $image_handler;
-
- protected static $_instance;
-
- /**
- class constructor
- */
- function __construct() {
- global $language, $languages_id, $lang,$oscss;
-
- $this->name='generic';
- $this->generic_id='';
- $this->image_handler='';
- foreach(parent::initialise_type('MODULE_GENERIC_INSTALLED_BO','generic') as $class){
-
- $cl[$class]=new $class ();
- $list_mod[$class] = $cl[$class]->sort_order;
-
- asort($list_mod);
- foreach($list_mod as $class=>$s){
- $this->modules[$class] =$cl[$class];
- }
- }
- }
-
- public function ret_modules ($action){ return $this->modules;}
-
- public function display_view (&$contents){ return false;}
-
- /**
- Find which module will take care of saving images
- $handler is optional and can be used to force an image handler
- */
- public function set_image_handler ($handler='') { }
-
-
- /**
- */
- public function after_update ($generic_id){
- $this->generic_id=$generic_id;
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update' )))
- $this->modules[$key]->after_update($this->generic_id);
- }
- $languages = tep_get_languages();
- for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
- $language_id = $languages[$i]['id'];
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update_lang' )))
- $this->modules[$key]->after_update_lang($language_id, $this->generic_id);
- }
- }
- }
-
-
-
- /**
- Load each module parameters from database
- */
- public function load_db_values ($Id) {
- global $language, $languages_id;
- $this->generic_id=$Id;
- foreach ( $this->modules as $key=>$module) {
- if (($module->enabled) and method_exists($module, 'load_db_values' )) $this->modules[$key]->load_db_values($Id);
- }
- return true;
- }
-
- /**
- Load each module parameters from the POST variables
- */
- public function load_post_values ($post) {
- $post = $this->check_post_array ($post);
- $this->generic_id = @$_GET['pID']; // Save the product ID
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module, 'load_post_values' )) and (isset($post[$module->code])))
- $this->modules[$key]->load_post_values($post[$module->code]);
- }
- }
-
-
- public function display_image_preview (){
- // Returns the image path and name to show in the product preview
- return $this->modules[$this->image_handler]->display_image_preview ();
- }
-
-}
-
-?>
\ No newline at end of file
Modified: branches/2.1.0/catalog/admin/includes/classes/aca.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/classes/aca.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/classes/aca.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -5,14 +5,125 @@
@original_author products class for ACA v2 (Advanced Categories Admin) by Rigadin2, www.osc-help.net
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 07/02/2011, 17:47
+ @date 04/07/11, 10:14
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
- @class aca
+ @brief base class for aca extension
*/
+/**
+ @class AcaFactory
+ @brief call generic module, by factory class
+ for call use:
+ new AcaFactory($const,$key);
+*/
+class AcaFactory
+ extends aca
+ implements mod_aca {
+
+ var $modules =array();
+ var $generic_id;
+ var $image_handler;
+
+ protected static $_instance;
+
+ /**
+ @brief class constructor
+ @param $const string le nom de la constante de conf ex
+ @param $key string le dossier de ref , nom de la class produite, et le nom de la constante de conf corresspondante (MODULE_$key_INSTALLED_BO)
+ */
+ function __construct($key,$const='') {
+ global $language, $languages_id, $lang,$oscss;
+
+ // if $const is empty, use generic name based on value in $key
+ if(empty($const)) $const = strtoupper('MODULE_'.$key.'_INSTALLED_BO');
+
+ $this->name=trim($key);
+ $this->generic_id='';
+ $this->image_handler='';
+ foreach(parent::initialise_type($const,$key) as $class){
+
+ $cl[$class]=new $class ();
+ $list_mod[$class] = $cl[$class]->sort_order;
+
+ asort($list_mod);
+ foreach($list_mod as $class=>$s){
+ $this->modules[$class] =$cl[$class];
+ }
+ }
+ }
+
+ public function ret_modules ($action){ return $this->modules;}
+
+ public function display_view (&$contents){ return false;}
+
+ /**
+ Find which module will take care of saving images
+ $handler is optional and can be used to force an image handler
+ */
+ public function set_image_handler ($handler='') { }
+
+
+ /**
+ */
+ public function after_update ($generic_id){
+ $this->generic_id=$generic_id;
+ foreach ($this->modules as $key=>$module) {
+ if (($module->enabled) and (method_exists($module,'after_update' )))
+ $this->modules[$key]->after_update($this->generic_id);
+ }
+ $languages = tep_get_languages();
+ for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
+ $language_id = $languages[$i]['id'];
+ foreach ($this->modules as $key=>$module) {
+ if (($module->enabled) and (method_exists($module,'after_update_lang' )))
+ $this->modules[$key]->after_update_lang($language_id, $this->generic_id);
+ }
+ }
+ }
+
+
+
+ /**
+ Load each module parameters from database
+ */
+ public function load_db_values ($Id) {
+ global $language, $languages_id;
+ $this->generic_id=$Id;
+ foreach ( $this->modules as $key=>$module) {
+ if (($module->enabled) and method_exists($module, 'load_db_values' )) $this->modules[$key]->load_db_values($Id);
+ }
+ return true;
+ }
+
+ /**
+ Load each module parameters from the POST variables
+ */
+ public function load_post_values ($post) {
+ $post = $this->check_post_array ($post);
+ $this->generic_id = @$_GET['pID']; // Save the product ID
+ foreach ($this->modules as $key=>$module) {
+ if (($module->enabled) and (method_exists($module, 'load_post_values' )) and (isset($post[$module->code])))
+ $this->modules[$key]->load_post_values($post[$module->code]);
+ }
+ }
+
+
+ public function display_image_preview (){
+ // Returns the image path and name to show in the product preview
+ return $this->modules[$this->image_handler]->display_image_preview ();
+ }
+
+}
+
+
+
+/**
+ @class aca
+ @brief Abstract class
+*/
Abstract class aca {
/**
Tableau d'objet des module actif
Modified: branches/2.1.0/catalog/admin/includes/content/aca.top.inc
===================================================================
--- branches/2.1.0/catalog/admin/includes/content/aca.top.inc 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/content/aca.top.inc 2011-07-04 08:50:18 UTC (rev 3765)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 24/04/11, 16:39
+ @date 04/07/11, 10:14
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@brief page call for action ajax
@@ -66,8 +66,15 @@
name: xxx
*/
else{
- include (DIR_WS_CLASSES.'aca.'.$actions['action_type'].'.php');
- $aca_modules = new $actions['action_type'];
+ // use specific class , or class by factory
+ if(file_exists(DIR_WS_CLASSES.'aca.'.$actions['action_type'].'.php')){
+ include (DIR_WS_CLASSES.'aca.'.$actions['action_type'].'.php');
+ $aca_modules = new $actions['action_type'];
+ }
+ else
+ $aca_modules = new AcaFactory($actions['action_type']);
+
+
$post_exe=false;
}
/**
Modified: branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -67,6 +67,7 @@
case 'edit':
$cls=strtoupper($_GET['class']);
+ $oscss = oscss_cstr::getInstance();
if(isset($_GET['core']) && !empty($_GET['core'])) $oscss->pile_file_lang(DIR_FS_ADMIN.DIR_WS_LANGUAGES.$language.'/modules/'.$_GET['set'] . '/'.parent::$modules_array[$_GET['set']][$cls]['filelg'].'.txt');
else $oscss->pile_file_lang(DIR_FS_CATALOG.DIR_WS_LANGUAGES.$language.'/modules/'.$_GET['set'] . '/' .parent::$modules_array[$_GET['set']][$cls]['filelg'].'.txt');
Modified: branches/2.1.0/catalog/admin/includes/inc_base_lib.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/inc_base_lib.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/inc_base_lib.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 24/10/10, 17:57
+ @date 04/07/11, 10:14
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@@ -28,7 +28,6 @@
$file[]=DIR_FS_ADMIN.DIR_WS_CLASSES . 'tableBlock.php';
$file[]=$rpa.DIR_WS_CLASSES.'aca.php';
- $file[]=$rpa.DIR_WS_CLASSES.'aca.generic.php';
$file[]=DIR_FS_ADMIN.DIR_WS_CLASSES . 'fileUtility.php';
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/categories.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/categories.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/categories.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 04/04/11, 08:13
+ @date 04/07/11, 10:14
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@brief manage category and module aca for cat
@@ -93,7 +93,12 @@
//! detail item in ajax
define('AJAXSTATMENTDETAIL', 'mod=page&type='.self::$code);
- self::$modules=new categoriesACA();
+ // Use factory class aca
+ //self::$modules=new categoriesACA();
+ /**
+ TODO : remplacer le nom de constante par un MODULE_CATEGORIES_INSTALLED_BO
+ */
+ self::$modules=new AcaFactory('categories','MODULE_ACACAT_INSTALLED_BO');
self::$modules->set_image_handler();
self::$cPath=(isset($_GET['cPath'])? (int)$_GET['cPath'] : 0);
@@ -553,151 +558,4 @@
}
-
-
-class categoriesACA
- extends aca
- implements mod_aca{
- var $modules=array();
- var $categories_id;
- var $current_category_id;
- var $parent_id;
- var $image_handler;
-
- /**
- class constructor
- */
- function __construct($current_category_id=0) {
-
- global $language, $lang,$oscss;
- $this->name='categories';
- $this->categories_id='';
- $this->parent_id='';
- $this->image_handler='';
-
- $this->current_category_id = $current_category_id;
-
- foreach(parent::initialise_type('MODULE_ACACAT_INSTALLED_BO','categories') as $class){
- $cl[$class]=new $class ();
- $list_mod[$class] = $cl[$class]->sort_order;
-
- asort($list_mod);
- foreach($list_mod as $class=>$s){
- $this->modules[$class] =$cl[$class];
- }
- unset($cl);unset($list_mod);
- }
-
- $this->set_image_handler(); // Ask which module takes care of image. Default: stock osc
- }
-
-
-// function get_header_js ($action) {
-// }
-
-// function check_action ($actions){
-// }
-
-// function set_image_handler () {
-// }
-
- function get_insert_table_categories (&$sql_data_array,$languages_id){
- foreach ($this->modules as $key=>$module)
- if ($module->enabled && method_exists($module, 'insert_table_categories' ))
- $this->modules[$key]->insert_table_categories($sql_data_array,$languages_id);
- }
-
- /**
- */
- function get_update_table_categories () {
- $sql_data_array=array ();
- foreach ($this->modules as $key=>$module) {
- if ($module->enabled && method_exists($module, 'update_table_categories' )){
- $sql_module = $this->modules[$key]->update_table_categories($sql_data_array);
- $sql_data_array=array_merge ($sql_data_array, $sql_module);
- }
- }
- return $sql_data_array;
- }
-
- function get_insert_table_categories_description ($sql_data_array,$languages_id) {
- $sql_data_array=array();
- foreach ($this->modules as $key=>$module)
- if ($module->enabled && method_exists($module,'insert_table_categories_description' )) {
- $sql_data= $this->modules[$key]->insert_table_categories_description($sql_data_array, $languages_id);
- $sql_data_array=array_merge($sql_data_array,$sql_data);
- }
- return $sql_data_array;
- }
-
- /**
- */
- function get_update_table_categories_description ($languages_id) {
- $sql_data_array=array ();
- foreach ($this->modules as $key=>$module) {
- if ($module->enabled && method_exists($module,'update_table_categories_description' )) {
- $sql_module = $this->modules[$key]->update_table_categories_description($sql_data_array,$languages_id);
- $sql_data_array=array_merge ($sql_data_array, $sql_module);
- }
- }
- return $sql_data_array;
- }
-
- /**
- */
- function after_update ($categories_id){
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update')))
- $this->modules[$key]->after_update($categories_id);
- }
- $languages = tep_get_languages();
- for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
- $languages_id = $languages[$i]['id'];
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update_lang')))
- $this->modules[$key]->after_update_lang($languages_id, $categories_id);
- }
- }
- }
-
- /**
- */
- function delete_category ($categories_id='') {
- if ($categories_id!='') {
- $this->categories_id = $categories_id;
- foreach ($this->modules as $key=>$module) {
- if (method_exists($module, 'delete_category' ))
- $this->modules[$key]->delete_category($categories_id);
- }
- }
- }
-
- /**
- Load each enabled module parameters from database
- */
- public function load_db_values ($categories_id) {
- $this->categories_id=$categories_id;
- foreach ($this->modules as $key=>$module)
- if (($module->enabled) and (method_exists($module, 'load_db_values' )))
- $this->modules[$key]->load_db_values($categories_id);
- }
-
-
- public function load_post_values($post){}
-
- /**
- Call enabled modules that have something to preview
- */
- public function display_preview($contents, $languages_id){
- foreach ($this->modules as $key=>$module)
- if ($module->enabled && method_exists($module, 'display_preview' ))
- $contents=$this->modules[$key]->display_preview($contents, $languages_id);
- return $contents;
- }
-
-
-
-}
-
-
?>
\ No newline at end of file
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/cms_content.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/cms_content.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/cms_content.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 28/01/11, 23:41
+ @date 04/07/11, 08:55
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@brief multiple class for content
@@ -73,7 +73,10 @@
//! detail item in ajax
if(!defined('AJAXSTATMENTDETAIL'))define('AJAXSTATMENTDETAIL', 'mod=page&type='.self::$code);
- self::$modules=new ACAcontent;
+// self::$modules=new ACAcontent;
+ // Use factory class aca
+ //self::$modules=new ACAcontent();
+ self::$modules=new AcaFactory('content'/*,'MODULE_CONTENT_INSTALLED_BO'*/);
self::$modules->set_image_handler();
self::$languages = tep_get_languages();
@@ -472,183 +475,4 @@
}
-
-
-
-
-
-/**
- @class ACAcontent
-*/
-
-class ACAcontent
- extends aca
- implements mod_aca{
- var $modules=array();
- var $content_id;
- var $image_handler;
-
- /**
- class constructor
- */
- function __construct() {
- global $language, $languages_id, $lang,$oscss;
- $this-> name='content';
- $this-> content_id='';
- $this-> image_handler='';
-
- foreach(parent::initialise_type('MODULE_CONTENT_INSTALLED_BO','content') as $class){
- $cl[$class]=new $class ();
- $list_mod[$class] = $cl[$class]->sort_order;
-
- asort($list_mod);
- foreach($list_mod as $class=>$s){
- $this->modules[$class] =$cl[$class];
- }
- unset($cl);unset($list_mod);
- }
- }
-
- /**
- Find which module will take care of saving images
- $handler is optional and can be used to force an image handler
- */
- public function set_image_handler ($handler='') {
- if ($handler=='') {
- foreach ($this->modules as $key=>$module)
- if (($module->enabled) and (method_exists($module,'get_content_image_handler' )))
- $handler= $this->modules[$key]->get_content_image_handler($handler);
- }
- $this->image_handler = $handler;
- if ($handler!='') $this->modules[$handler]->is_image_handler = true;
- }
-
- /**
- Ask each module what to insert into content table
- */
- public function get_insert_table_content () {
- $sql_data_array=array();
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module, 'insert_table_content' ))) {
- $sql_module= $this->modules[$key]->insert_table_content();
- $sql_data_array=array_merge ($sql_data_array, $sql_module);
- }
- }
- return $sql_data_array;
- }
-
- public function get_update_table_content (){
- $sql_data_array=array ();
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'update_table_content' ))) {
- $sql_data_array= (array)$this->modules[$key]->update_table_content();
-
- }
- }
- return $sql_data_array;
- }
-
- public function get_insert_table_content_description ($language_id) {
- $sql_data_array=array();
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'insert_table_content_description' ))) {
- $sql_module= $this->modules[$key]->insert_table_content_description($language_id);
- $sql_data_array=array_merge ($sql_data_array, $sql_module);
- }
- }
- return $sql_data_array;
- }
-
- public function get_update_table_content_description ($language_id) {
-
- $sql_data_array = array();
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'update_table_content_description' ))) {
- $sql_module= $this->modules[$key]->update_table_content_description($language_id);
- $sql_data_array=array_merge ($sql_data_array, $sql_module);
- }
- }
- return $sql_data_array;
- }
-
-
- /**
- */
- public function after_update ($content_id){
- $this->content_id=$content_id;
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update' )))
- $this->modules[$key]->after_update($this->content_id);
- }
- $languages = tep_get_languages();
- for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
- $language_id = $languages[$i]['id'];
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update_lang' )))
- $this->modules[$key]->after_update_lang($language_id, $this->content_id);
- }
- }
- }
-
-
- /**
- Suppression apres confirmation
- */
- public function delete_product ($content_id){
- foreach ($this->modules as $key=>$module)
- if (($module->enabled) and method_exists($module, 'delete_product' ))
- $this->modules[$key]->delete_product($content_id);
- }
-
-
- /**
- Load each module parameters from database
- */
- public function load_db_values ($content_id) {
- global $language, $languages_id;
- $this->content_id=$content_id;
- foreach ( $this->modules as $key=>$module) {
- if (($module->enabled) and method_exists($module, 'load_db_values' )) $this->modules[$key]->load_db_values($content_id);
- }
- }
-
- /**
- Load each module parameters from the POST variables
- */
- public function load_post_values ($post) {
- $post = $this->check_post_array ($post);
- $this->content_id = @$_GET['pID']; // Save the product ID
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module, 'load_post_values' )) and (isset($post[$module->code])))
- $this->modules[$key]->load_post_values($post[$module->code]);
- }
- }
-
-
- /**
- Tabs in content
- Ask each module about what to dispay in the product editor of each module.
- */
-// function display_edit (&$contents) {
-// }
-
- public function display_image_preview (){
- // Returns the image path and name to show in the product preview
- return $this->modules[$this->image_handler]->display_image_preview ();
- }
-
-
- /**
- Return tableau complet des element à insrére dans la clause sql
- */
- public function shearch_in_product(){
- foreach ($this->modules as $key=>$module)
- if ($module->enabled && method_exists($module, 'shearch_in_product' ))
- $contents[$key]=$this->modules[$key]->shearch_in_product();
- return $contents;
- }
-
-}
-
-
?>
\ No newline at end of file
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/customers.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/customers.php 2011-07-02 08:54:42 UTC (rev 3764)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/customers.php 2011-07-04 08:50:18 UTC (rev 3765)
@@ -5,7 +5,7 @@
@Portioncode products class for ACA v2 (Advanced Categories Admin) by Rigadin2, www.osc-help.net
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 07/02/11, 08:55
+ @date 04/07/11, 08:55
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@class customers
@@ -82,7 +82,9 @@
//! detail item in ajax
if(!defined('AJAXSTATMENTDETAIL'))define('AJAXSTATMENTDETAIL', 'mod=page&type='.self::$code);
- self::$modules=new accountACA;
+ // Use factory class aca
+ //self::$modules=new accountACA();
+ self::$modules=new AcaFactory('account'/*,'MODULE_ACCOUNT_INSTALLED_BO'*/);
self::$modules->set_image_handler();
self::$languages = tep_get_languages();
@@ -799,141 +801,4 @@
}
-
-
-
-
-class accountACA
- extends aca
- implements mod_aca{
- var $modules=array();
- var $account_id;
- var $image_handler;
-
- /**
- class constructor
- */
- function __construct() {
- global $language, $lang,$oscss;
- $this-> name='account';
- $this-> account_id='';
- $this-> image_handler='';
-
- foreach(parent::initialise_type('MODULE_ACCOUNT_INSTALLED_BO','account') as $class){
- $cl[$class]=new $class ();
- $list_mod[$class] = $cl[$class]->sort_order;
-
- asort($list_mod);
- foreach($list_mod as $class=>$s){
- $this->modules[$class] =$cl[$class];
- }
- unset($cl);unset($list_mod);
- }
- }
-
-
- function after_update ($account_id){
- $this->account_id=$account_id;
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update' )))
- $this->modules[$key]->after_update($this->account_id);
- }
- $languages = tep_get_languages();
- for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
- $language_id = $languages[$i]['id'];
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module,'after_update_lang' )))
- $this->modules[$key]->after_update_lang($language_id, $this->account_id);
- }
- }
- }
-
- /**
- Load each module parameters from database
- */
- function load_db_values ($account_id) {
- $this->account_id=$account_id;
- if (is_array($this->modules))
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and method_exists($module, 'load_db_values' )) $this->modules[$key]->load_db_values($account_id);
- }
- }
-
- function load_post_values ($post) {
- // Load each module parameters from the HTTP POST variables
- $post = $this->check_post_array ($post); // Put some non-array variables into array
- $this->account_id = @$_GET['pID']; // Save the product ID
-
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module, 'load_post_values' )) and (isset($post[$module->code])))
- $this->modules[$key]->load_post_values($post[$module->code]);
-
- elseif (($module->enabled) and (method_exists($module, 'load_post_values' )))
- $this->modules[$key]->load_post_values($post);
- }
- }
-
-// function repost_values (){
-// }
-
-
- function display_preview($languages){
- // Collect datas for product preview display
- $contents = array();
- foreach ($this->modules as $key=>$module) {
- if (($module->enabled) and (method_exists($module, 'display_preview' ))) {
- $this->modules[$key]->display_preview($contents, $languages);
- }
- }
- return $contents;
- }
-
-// function display_image_preview (){
-// }
-
- /**
- Affichage en mode liste, detail, colonne droite
- Ask each product module about what to dispay in the listing left column.
- */
- public function display_right_column ($contents, $account_id) {
- global $language;
- if (is_array($this->modules))
- foreach ($this->modules as $key=>$module) {
- if ($module->enabled && method_exists($module, 'display_right_column' )) {
- $this->modules[$key]->load_db_values($account_id);
- $contents=$this->modules[$key]->display_right_column($contents, $account_id);
- }
- }
- return $contents;
- }
-
-// public function display_ColumnRowAction($id){
-// $st='';
-// foreach ($this->modules as $key=>$module)
-// if (($module->enabled) and (method_exists($module,'display_ColumnRowAction' )))
-// $st .=$this->modules[$key]->display_ColumnRowAction($id);
-// return $st;
-// }
-
- /**
- Suppression apres confirmation
- */
- /**
- * \fn deleteconfirm_account ($id)
- * \brief delete account user for id
- * loop module account
- * @param $id integer account id customer
- * @return no
- */
- public function deleteconfirm_account ($id){
- foreach ($this->modules as $key=>$module)
- if (($module->enabled) and method_exists($module, 'deleteconfirm_account' ))
- $this->modules[$key]->deleteconfirm_account($id);
- }
-
-
-}
-
-
-
?>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-07-02 08:54:49
|
Revision: 3764
http://oscss.svn.sourceforge.net/oscss/?rev=3764&view=rev
Author: oscim
Date: 2011-07-02 08:54:42 +0000 (Sat, 02 Jul 2011)
Log Message:
-----------
correction erreur
mise a niveau moduel atos php 5.3
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/classes/oscss_cstr.php
branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php
branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sherlocks
branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/atossherlocks.php
Added Paths:
-----------
branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sogenactif
branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.txt
Removed Paths:
-------------
branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.php
Modified: branches/2.1.0/catalog/admin/includes/classes/oscss_cstr.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/classes/oscss_cstr.php 2011-06-30 08:18:20 UTC (rev 3763)
+++ branches/2.1.0/catalog/admin/includes/classes/oscss_cstr.php 2011-07-02 08:54:42 UTC (rev 3764)
@@ -177,8 +177,9 @@
*/
public function pile_file_lang($path_file){
global $lang;
- if(substr($path_file,0,strlen(DIR_FS_ADMIN)) !=DIR_FS_ADMIN) $path_file= DIR_FS_ADMIN.$path_file;
+ if(substr($path_file,0,strlen(DIR_FS_ADMIN)) !=DIR_FS_ADMIN && substr($path_file,0,strlen(DIR_FS_CATALOG)) !=DIR_FS_CATALOG ) $path_file= DIR_FS_ADMIN.$path_file;
+
if(!in_array($path_file,$this->PileFileLang))
if(self::TestFile($path_file)) include_once($path_file);
Modified: branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php 2011-06-30 08:18:20 UTC (rev 3763)
+++ branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php 2011-07-02 08:54:42 UTC (rev 3764)
@@ -227,7 +227,7 @@
$ref_shop .= $file.'/';
$ref_admin .= $file.'/';
$file .=$ref_ext;
- $filelg = $file.'/';
+ $filelg = substr($file,0,-4).'/';
}
//! verif file in ext php
Modified: branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sherlocks
===================================================================
--- branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sherlocks 2011-06-30 08:18:20 UTC (rev 3763)
+++ branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sherlocks 2011-07-02 08:54:42 UTC (rev 3764)
@@ -2,15 +2,15 @@
#
# Pathfile
#
-# Liste fichiers parametres utilis\xE9s par le module de paiement
+# Liste fichiers parametres utilises par le module de paiement
#
-# Modifie pour osCSS Attention fichier en iso8859-1 !!!
+# Modifie pour osCSS
#
#########################################################################
# ------------------------------------------------------------------------
-# Chemin vers le r\xE9pertoire des logos depuis le web alias
-# Exemple pour le r\xE9pertoire www.merchant.com/cyberplus/payment/logo/
+# Chemin vers le repertoire des logos depuis le web alias
+# Exemple pour le repertoire www.merchant.com/cyberplus/payment/logo/
# indiquer:
# ------------------------------------------------------------------------
#
@@ -24,11 +24,11 @@
#
F_CERTIFICATE!/home/atos/certif!
#
-# Fichier param\xE8tre commercant
+# Fichier parametre commercant
#
F_PARAM!/home/atos/parmcom!
#
-# Fichier des param\xE8tres communs
+# Fichier des parametres communs
#
F_DEFAULT!/home/atos/parmcom.sherlocks!
#
Added: branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sogenactif
===================================================================
--- branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sogenactif (rev 0)
+++ branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/atos/pathfile.parmcom.sogenactif 2011-07-02 08:54:42 UTC (rev 3764)
@@ -0,0 +1,46 @@
+#########################################################################
+#
+# Pathfile
+#
+# Liste fichiers parametres utilises par le module de paiement
+#
+#########################################################################
+#
+#
+#-------------------------------------------------------------------------
+# Activation (YES) / Désactivation (NO) du mode DEBUG
+#-------------------------------------------------------------------------
+#
+DEBUG!NO!
+# ------------------------------------------------------------------------
+# Chemin vers le repertoire des logos depuis le web alias
+# Exemple pour le repertoire www.merchant.com/cyberplus/payment/logo/
+# indiquer:
+# ------------------------------------------------------------------------
+#
+D_LOGO!images/atos/!
+#
+#------------------------------------------------------------------------
+# Fichiers parametres lies a l'api sherlocks paiement
+#------------------------------------------------------------------------
+#
+#
+# type du certificat
+#
+F_CTYPE!php!
+#
+# Certificat du commercant
+#
+F_CERTIFICATE!/home/atos/certif!
+#
+# Fichier parametre commercant
+#
+F_PARAM!/home/atos/parmcom!
+#
+# Fichier des parametres communs
+#
+F_DEFAULT!/home/atos/parmcom.sogenactif!
+#
+# --------------------------------------------------------------------------
+# end of file
+# --------------------------------------------------------------------------
Deleted: branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.php
===================================================================
--- branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.php 2011-06-30 08:18:20 UTC (rev 3763)
+++ branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.php 2011-07-02 08:54:42 UTC (rev 3764)
@@ -1,62 +0,0 @@
-<?php
-/*
- CyberPlus Paiement ATOS/SIPS for Banque Populaire
- (http://www.atos-group.com/sips/)
-
- This module has been developed to fit latest osCommerce product requirement
- by e-network (http://www.e-network.fr/).
-
- It is compatible with version 2.2 MS1 or higher of the osCommerce
- product.
-
- You MUST have the ATOS/SIPS API version 5.00 or higher.
- This API has been released on september 2002.
-
- Originally written by D. Nazim (a.k.a. vanadium2 <van...@ya...>).
-
- Modified and enhanced to fit new purchase process of the osCommerce and
- new ATOS/SIPS binaries by S. Guiboud-Ribaud <de...@e-...>.
-
- Copyright (c) 2003-2005, e-network
-
- Release under the GNU General Public License.
-*/
-
- define('MODULE_PAYMENT_ATOS_TEXT_TITLE', 'Carte de Crédit');
-
- define('MODULE_PAYMENT_ATOS_TEXT_TITLE_DEMOMODE', 'Ce mode de paiement est en démonstration. Il sera bientôt disponible et vous pourrez effectuer vos paiements en toute sécurité par carte bancaire. Vous pouvez essayer cette démonstration, mais pour effectuer réellement votre transaction, il vous faudra utiliser un autre mode de paiement');
-
- define('MODULE_PAYMENT_ATOS_TEXT_DESCRIPTION', 'Carte de Crédit / SIPS-ATOS');
- define('MODULE_PAYMENT_ATOS_TEXT_EMAIL_FOOTER', '');
- define('MODULE_PAYMENT_ATOS_TEXT_ERROR_MESSAGE', 'Erreur de traitement. Essayer à nouveau.');
-
- define('MODULE_PAYMENT_ATOS_CALL_REQUEST_ERROR', 'Une erreur inattendue est arrivée au cours de la demande.<br>Veuillez choisir un autre moyen de paiement.<br>');
-
- define('MODULE_PAYMENT_ATOS_PAYMENT_MEANS_CB', 'Carte Bleue');
- define('MODULE_PAYMENT_ATOS_PAYMENT_MEANS_VISA', 'VISA');
- define('MODULE_PAYMENT_ATOS_PAYMENT_MEANS_AMEX', 'American Express');
- define('MODULE_PAYMENT_ATOS_PAYMENT_MEANS_MASTERCARD', 'Eurocard/Mastercard');
-
- define('MODULE_PAYMENT_ATOS_ERROR_02', 'Referral, authorization required by phone');
- define('MODULE_PAYMENT_ATOS_ERROR_03', 'Merchand id invalid : contact ATOS support');
- define('MODULE_PAYMENT_ATOS_ERROR_05', 'Transaction cancelled. No detail about security.');
- define('MODULE_PAYMENT_ATOS_ERROR_12', 'Invalid amount');
- define('MODULE_PAYMENT_ATOS_ERROR_13', 'Invalid transaction, fields invalid: (used of AMEX, without any AMEX contract)');
- define('MODULE_PAYMENT_ATOS_ERROR_17', 'Cancelled by customer');
- define('MODULE_PAYMENT_ATOS_ERROR_30', 'Format error: contact ATOS hotline for more details');
- define('MODULE_PAYMENT_ATOS_ERROR_63', 'HIGH PROBLEM OF SECURITY: must log out the customer and remove its session id');
- define('MODULE_PAYMENT_ATOS_ERROR_75', 'More than 3 tries failed');
- define('MODULE_PAYMENT_ATOS_ERROR_90', 'Service unavailable');
- define('MODULE_PAYMENT_ATOS_ERROR_94', 'Transaction already played');
- define('MODULE_PAYMENT_ATOS_ERROR_INVALID_CODE', 'Invalid error code');
-
- define('MODULE_PAYMENT_ATOS_CERTIFICATE_NAME_CYBERPLUS', 'Test CyberPlus (Banque Populaire)');
- define('MODULE_PAYMENT_ATOS_CERTIFICATE_NAME_ETRANSACTION', 'Test E-Transactions (Crédit Agricole)');
- define('MODULE_PAYMENT_ATOS_CERTIFICATE_NAME_MERCANET', 'Test Mercanet (BNP Paribas)');
- define('MODULE_PAYMENT_ATOS_CERTIFICATE_NAME_SOGENACTIF', 'Test Sogénactif (Société Général)');
- define('MODULE_PAYMENT_ATOS_CERTIFICATE_NAME_SCELLIUS', 'Test Scellius (La Poste)');
- define('MODULE_PAYMENT_ATOS_CERTIFICATE_NAME_SHERLOCKS', 'Test Sherlocks (Crédit Lyonnais)');
-
- define('MODULE_PAYMENT_ATOS_EXTRA_FIELD', 'Paiement en Connexion Sécurisée') ;
-
-?>
Added: branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.txt
===================================================================
--- branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.txt (rev 0)
+++ branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/languages/fr_FR/modules/payment/atossherlocks/atossherlocks.txt 2011-07-02 08:54:42 UTC (rev 3764)
@@ -0,0 +1,62 @@
+<?php
+/**
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
+ @portion code Copyright (c) 2002 osCommerce
+ @package osCSS-2 <www http://www.oscss.org>
+ @version 2.1.0
+ @date 30/06/11, 10:22
+ @author oscim <mail aur...@os...> <www http://www.oscim.fr>
+ @encode UTF-8
+
+ CyberPlus Paiement ATOS/SIPS for Banque Populaire
+ (http://www.atos-group.com/sips/)
+ This module has been developed to fit latest osCommerce product requirement
+ by e-network (http://www.e-network.fr/).
+ It is compatible with version 2.2 MS1 or higher of the osCommerce
+ product.
+ You MUST have the ATOS/SIPS API version 5.00 or higher.
+ This API has been released on september 2002.
+ Originally written by D. Nazim (a.k.a. vanadium2 <van...@ya...>).
+ Modified and enhanced to fit new purchase process of the osCommerce and
+ new ATOS/SIPS binaries by S. Guiboud-Ribaud <de...@e-...>.
+ Copyright (c) 2003-2005, e-network
+ Release under the GNU General Public License.
+*/
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_TITLE'] = 'Carte de Crédit';
+
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_TITLE_DEMOMODE'] = 'Ce mode de paiement est en démonstration. Il sera bientôt disponible et vous pourrez effectuer vos paiements en toute sécurité par carte bancaire. Vous pouvez essayer cette démonstration, mais pour effectuer réellement votre transaction, il vous faudra utiliser un autre mode de paiement';
+
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_DESCRIPTION'] = 'Carte de Crédit / SIPS-ATOS';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_EMAIL_FOOTER'] = '';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_ERROR_MESSAGE'] = 'Erreur de traitement. Essayer à nouveau.';
+
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_CALL_REQUEST_ERROR'] = 'Une erreur inattendue est arrivée au cours de la demande.<br>Veuillez choisir un autre moyen de paiement.<br>';
+
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_PAYMENT_MEANS_CB'] = 'Carte Bleue';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_PAYMENT_MEANS_VISA'] = 'VISA';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_PAYMENT_MEANS_AMEX'] = 'American Express';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_PAYMENT_MEANS_MASTERCARD'] = 'Eurocard/Mastercard';
+
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_02'] = 'Referral, authorization required by phone';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_03'] = 'Merchand id invalid : contact ATOS support';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_05'] = 'Transaction cancelled. No detail about security.';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_12'] = 'Invalid amount';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_13'] = 'Invalid transaction, fields invalid: (used of AMEX, without any AMEX contract)';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_17'] = 'Cancelled by customer';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_30'] = 'Format error: contact ATOS hotline for more details';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_63'] = 'HIGH PROBLEM OF SECURITY: must log out the customer and remove its session id';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_75'] = 'More than 3 tries failed';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_90'] = 'Service unavailable';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_94'] = 'Transaction already played';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_ERROR_INVALID_CODE'] = 'Invalid error code';
+
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_CYBERPLUS'] = 'Test CyberPlus (Banque Populaire)';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_ETRANSACTION'] = 'Test E-Transactions (Crédit Agricole)';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_MERCANET'] = 'Test Mercanet (BNP Paribas)';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SOGENACTIF'] = 'Test Sogénactif (Société Général)';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SCELLIUS'] = 'Test Scellius (La Poste)';
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SHERLOCKS'] = 'Test Sherlocks (Crédit Lyonnais)';
+
+$lang['MODULE_PAYMENT_ATOSSHERLOCKS_EXTRA_FIELD'] = 'Paiement en Connexion Sécurisée';
+
+?>
\ No newline at end of file
Modified: branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/atossherlocks.php
===================================================================
--- branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/atossherlocks.php 2011-06-30 08:18:20 UTC (rev 3763)
+++ branches/2.1.0/extensions/ATOSSHERLOCKS_stable/catalog/includes/modules/payment/atossherlocks/atossherlocks.php 2011-07-02 08:54:42 UTC (rev 3764)
@@ -49,7 +49,8 @@
Release under the GNU General Public License.
*/
- define('DIR_FS_ATOS', DIR_FS_CATALOG . DIR_WS_MODULES. 'payment/atossherlocks/');
+// define('DIR_FS_ATOS', DIR_FS_CATALOG . DIR_WS_MODULES. 'payment/atossherlocks/');
+define('DIR_FS_ATOS', DIR_FS_CATALOG . 'atos/');
class atossherlocks {
@@ -133,11 +134,11 @@
function __construct() {
global $order;
- $this->description = MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_DESCRIPTION;
+ $this->description = __('MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_DESCRIPTION');
$this->enabled = true ;
- $this->title = MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_TITLE;
- $this->email_footer = MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_EMAIL_FOOTER;
- $this->sort_order = MODULE_PAYMENT_ATOSSHERLOCKS_SORT_ORDER;
+ $this->title = __('MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_TITLE');
+ $this->email_footer = __('MODULE_PAYMENT_ATOSSHERLOCKS_TEXT_EMAIL_FOOTER');
+ $this->sort_order = (defined('MODULE_PAYMENT_ATOSSHERLOCKS_SORT_ORDER')? MODULE_PAYMENT_ATOSSHERLOCKS_SORT_ORDER : 0);
// Optional : payment icon
// $this->icon = DIR_WS_IMAGES . 'atos/carte.gif';
@@ -251,7 +252,7 @@
if ($sips['error']) {
$this->error = 1;
- $this->message = MODULE_PAYMENT_ATOSSHERLOCKS_CALL_REQUEST_ERROR . ': ' . $sips['command'] . '<br>' . $sips['error'];
+ $this->message = __('MODULE_PAYMENT_ATOSSHERLOCKS_CALL_REQUEST_ERROR') . ': ' . $sips['command'] . '<br>' . $sips['error'];
} else
{
$regs = array();
@@ -266,7 +267,7 @@
} else
{
$this->error = 1;
- $this->message = MODULE_PAYMENT_ATOSSHERLOCKS_CALL_REQUEST_ERROR;
+ $this->message = __('MODULE_PAYMENT_ATOSSHERLOCKS_CALL_REQUEST_ERROR');
}
}
@@ -355,7 +356,7 @@
$constant = 'MODULE_PAYMENT_ATOSSHERLOCKS_PAYMENT_MEANS_' . $response['payment_means'];
define($constant, $response['payment_means']);
$order->info['cc_type'] = constant($constant);
- $cc = split('\.', $response['card_number']);
+ $cc = explode('.', $response['card_number']); //split('\.', $response['card_number']);
$order->info['cc_number'] = $cc[0] . ' #### #### ##' . $cc[1];
$aca_modules = new checkout_process();
@@ -607,7 +608,8 @@
// exit;
$sips_result = exec("$command") ;
-
+// var_dump($sips_result);
+// exit;
if ( ! tep_not_null($sips_result) ) // Mistake in configuration
{
$this->sendNotification('ATOS API Error', $sips_result, 'API error in file ' . __FILE__ . ' at line: ' . __LINE__ . 'binary: ' . MODULE_PAYMENT_ATOSSHERLOCKS_BIN_REQUEST . '\n');
@@ -618,7 +620,7 @@
}
$sips = array();
- $sips_values = split ("!", $sips_result);
+ $sips_values = explode("!", $sips_result); // ("!", $sips_result);
$sips['code'] = $sips_values[1];
$sips['error'] = $sips_values[2];
$sips['message'] = $sips_values[3];
@@ -673,7 +675,7 @@
}
$hash = array ();
- $sips_resp = split ( "!", $sips_resp );
+ $sips_resp = explode( "!", $sips_resp ); //split ( "!", $sips_resp );
list (,
$hash['code'],
$hash['error'],
@@ -716,67 +718,75 @@
}
- // ----------------------------------------------------------------
- // _getPathFileName()
- //
- // Make the pathfile if it does not exists.
- // Return the pathfile to be used when calling one of the ATOS
- // external applications.
- function _getPathFileName() {
- if (MODULE_PAYMENT_ATOSSHERLOCKS_PATHFILE)
- return MODULE_PAYMENT_ATOSSHERLOCKS_PATHFILE;
- $pathfile = $this->_getExternalFileName('pathfile.' . MODULE_PAYMENT_ATOSSHERLOCKS_PARMCOM_FILE);
+ /**
+ @fn _getPathFileName()
+ @brief Make the pathfile if it does not exists.
+ Return the pathfile to be used when calling one of the ATOS external applications.
+ */
+ function _getPathFileName() {
+ if (MODULE_PAYMENT_ATOSSHERLOCKS_PATHFILE)
+ return MODULE_PAYMENT_ATOSSHERLOCKS_PATHFILE;
- if (!file_exists($pathfile)) {
- ob_start();
- echo "#########################################################################\n";
- echo "#\n";
- echo "# Pathfile \n";
- echo "#\n";
- echo "# Liste fichiers parametres utilisés par le module de paiement\n";
- echo "#\n";
- echo "#########################################################################\n";
- echo "\n";
- echo "# ------------------------------------------------------------------------\n";
- echo "# Chemin vers le répertoire des logos depuis le web alias \n";
- echo "# Exemple pour le répertoire www.merchant.com/cyberplus/payment/logo/\n";
- echo "# indiquer:\n";
- echo "# ------------------------------------------------------------------------\n";
- echo "#\n";
- echo "D_LOGO!", DIR_WS_IMAGES, "atos/!\n";
- echo "#\n";
- echo "#------------------------------------------------------------------------\n";
- echo "# Fichiers parametres lies a l'api sherlocks paiement \n";
- echo "#------------------------------------------------------------------------\n";
- echo "#\n";
- echo "# Certificat du commercant\n";
- echo "#\n";
- echo "F_CERTIFICATE!", $this->_getExternalFileName('certif'), "!\n";
- echo "#\n";
- echo "# Fichier paramètre commercant\n";
- echo "#\n";
- echo "F_PARAM!", $this->_getExternalFileName('parmcom'), "!\n";
- echo "#\n";
- echo "# Fichier des paramètres communs\n";
- echo "#\n";
- echo "F_DEFAULT!", $this->_getExternalFileName(MODULE_PAYMENT_ATOSSHERLOCKS_PARMCOM_FILE), "!\n";
- echo "#\n";
- echo "# --------------------------------------------------------------------------\n";
- echo "# end of file\n";
- echo "# --------------------------------------------------------------------------\n";
- $pathfile_content = ob_get_contents();
- ob_end_clean();
+ $pathfile = $this->_getExternalFileName('pathfile.' . MODULE_PAYMENT_ATOSSHERLOCKS_PARMCOM_FILE);
- if ($fp = fopen($pathfile, 'w')) {
- fputs($fp, $pathfile_content);
- fclose($fp);
- }
- }
- return $pathfile;
+ if (!file_exists($pathfile)) {
+ ob_start();
+ echo "#########################################################################\n";
+ echo "#\n";
+ echo "# Pathfile \n";
+ echo "#\n";
+ echo "# Liste fichiers parametres utilises par le module de paiement\n";
+ echo "#\n";
+ echo "#########################################################################\n";
+ echo "\n";
+ echo "# ------------------------------------------------------------------------\n";
+ echo "# Chemin vers le repertoire des logos depuis le web alias \n";
+ echo "# Exemple pour le repertoire www.merchant.com/cyberplus/payment/logo/\n";
+ echo "# indiquer:\n";
+ echo "# ------------------------------------------------------------------------\n";
+ echo "#\n";
+ echo "D_LOGO!", DIR_WS_IMAGES, "atos/!\n";
+ echo "#\n";
+ echo "#------------------------------------------------------------------------\n";
+ echo "# Fichiers parametres lies a l'api sherlocks paiement \n";
+ echo "#------------------------------------------------------------------------\n";
+ echo "#\n";
+ echo "#\n";
+
+// echo "# type du certificat\n";
+// echo "#\n";
+// echo "F_CTYPE!php!\n";
+// echo "#\n";
+
+ echo "# Certificat du commercant\n";
+ echo "#\n";
+ echo "F_CERTIFICATE!", $this->_getExternalFileName('certif'), "!\n";
+ echo "#\n";
+ echo "# Fichier paramètre commercant\n";
+ echo "#\n";
+ echo "F_PARAM!", $this->_getExternalFileName('parmcom'), "!\n";
+ echo "#\n";
+ echo "# Fichier des paramètres communs\n";
+ echo "#\n";
+ echo "F_DEFAULT!", $this->_getExternalFileName(MODULE_PAYMENT_ATOSSHERLOCKS_PARMCOM_FILE), "!\n";
+ echo "#\n";
+ echo "# --------------------------------------------------------------------------\n";
+ echo "# end of file\n";
+ echo "# --------------------------------------------------------------------------\n";
+ $pathfile_content = ob_get_contents();
+ ob_end_clean();
+
+ if ($fp = fopen($pathfile, 'w')) {
+ fputs($fp, $pathfile_content);
+ fclose($fp);
+ }
}
+ return $pathfile;
+ }
+
/**
@fn sendNotification($subject, $sips = '', $message = '')
@brief send mail debug or error in procecss
@@ -791,7 +801,7 @@
$string .= '<font color="#ff0000"><b>';
$string .= ($message ? nl2br($message) . '<br>' : '');
$string .= 'Error occurs in ' . $GLOBALS['PHP_SELF'];
-$string .= $subject . $message ;
+ $string .= $subject . $message ;
$string .= '</font><br>';
$string .= '<table border="0" cellspacing="0" cellpadding="3" width="100%">';
@@ -836,42 +846,42 @@
array(
'id' => '013044876511111',
'parmcom' => 'parmcom.e-transactions',
- 'text' => MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_ETRANSACTION,
+ 'text' => __('MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_ETRANSACTION'),
'test' => true
);
$ATOS_PREDEFINED_CERTIFICATES['014213245611111'] =
array(
'id' => '014213245611111',
'parmcom' => 'parmcom.sogenactif',
- 'text' => MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SOGENACTIF,
+ 'text' => __('MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SOGENACTIF'),
'test' => true
);
$ATOS_PREDEFINED_CERTIFICATES['038862749811111'] =
array(
'id' => '038862749811111',
'parmcom' => 'parmcom.cyberplus',
- 'text' => MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_CYBERPLUS,
+ 'text' => __('MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_CYBERPLUS'),
'test' => true
);
$ATOS_PREDEFINED_CERTIFICATES['082584341411111'] =
array(
'id' => '082584341411111',
'parmcom' => 'parmcom.mercanet',
- 'text' => MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_MERCANET,
+ 'text' => __('MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_MERCANET'),
'test' => true
);
$ATOS_PREDEFINED_CERTIFICATES['014141675911111'] =
array(
'id' => '014141675911111',
'parmcom' => 'parmcom.scellius',
- 'text' => MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SCELLIUS,
+ 'text' => __('MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SCELLIUS'),
'test' => true
);
$ATOS_PREDEFINED_CERTIFICATES['014295303911111'] =
array(
'id' => '014295303911111',
'parmcom' => 'parmcom.sherlocks',
- 'text' => MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SHERLOCKS,
+ 'text' => __('MODULE_PAYMENT_ATOSSHERLOCKS_CERTIFICATE_NAME_SHERLOCKS'),
'test' => true
);
}
@@ -887,7 +897,7 @@
static function GetCertificateInfo($id) {
$certificates = self::GetPredefinedCertificates();
- if ($certificates[$id])
+ if (isset($certificates[$id]))
return $certificates[$id];
return array(
@@ -901,13 +911,17 @@
/**
@fn GetInstalledCertificates()
@brief Get the list of installed certificates
+ Support certificate type none or php
*/
static function GetInstalledCertificates() {
$certificates = array();
if ($dir = @dir(DIR_FS_ATOS)) {
while ($file = $dir->read()) {
- $data = split('\.', $file);
- $n = sizeof($data) - 1;
+ $data = explode('.', $file);
+
+ if(strlen($data[count($data) - 1]) ==3) $n = sizeof($data) - 2;
+ else $n = sizeof($data) - 1;
+
if ($data[0] == 'certif')
$certificates[] = self::GetCertificateInfo($data[$n]);
}
@@ -941,7 +955,7 @@
$parmcom_files = array();
if ($dir = @dir(DIR_FS_ATOS)) {
while ($file = $dir->read()) {
- $data = split('\.', $file);
+ $data = explode('.', $file);
if (($data[0] == 'parmcom') && !file_exists(DIR_FS_ATOS . 'certif.fr.' . $data[1]))
$parmcom_files[] = array(
'id' => $file,
@@ -1006,32 +1020,31 @@
@param $iplist
*/
static function IsAllowedIP($ip, $iplist) {
- $allowed = false;
- $ip_addr = decbin(ip2long($ip));
+ $allowed = false;
+ $ip_addr = decbin(ip2long($ip));
- // Split IP's from configuration field
- //
- $ips= preg_split('/[,\s]+/', $iplist) ;
+ // Split IP's from configuration field
+ //
+ $ips= preg_split('/[,\s]+/', $iplist) ;
- foreach ($ips as $ip) {
- $network = explode("/", $ip);
+ foreach ($ips as $ip) {
+ $network = explode("/", $ip);
- $net_addr = decbin(ip2long($network[0]));
- $prefix = $network[1];
+ $net_addr = decbin(ip2long($network[0]));
+ $prefix = $network[1];
- if ( ! $prefix && $ip_addr === $net_addr )
- {
- // only compare raw adresses (no subnet mask)
- $allowed = true ;
- break;
- }
- elseif (substr($net_addr, 0, $prefix) === substr($ip_addr, 0, $prefix) && $prefix ) {
- // compare address in subnet range
- $allowed = true ;
- break;
- }
+ if ( ! $prefix && $ip_addr === $net_addr ){
+ // only compare raw adresses (no subnet mask)
+ $allowed = true ;
+ break;
}
- return $allowed;
+ elseif (substr($net_addr, 0, $prefix) === substr($ip_addr, 0, $prefix) && $prefix ) {
+ // compare address in subnet range
+ $allowed = true ;
+ break;
+ }
+ }
+ return $allowed;
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-30 08:18:26
|
Revision: 3763
http://oscss.svn.sourceforge.net/oscss/?rev=3763&view=rev
Author: oscim
Date: 2011-06-30 08:18:20 +0000 (Thu, 30 Jun 2011)
Log Message:
-----------
coquille load class for config module
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php
Modified: branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php 2011-06-29 14:46:38 UTC (rev 3762)
+++ branches/2.1.0/catalog/admin/includes/exts/package/packageUtility.php 2011-06-30 08:18:20 UTC (rev 3763)
@@ -68,19 +68,12 @@
$cls=strtoupper($_GET['class']);
-// if(!isset($_GET['core']))
-// @include_once(DIR_FS_CATALOG_LANGUAGES . $language . '/modules/' . $_GET['set'] . '/' . parent::$modules_array[$_GET['set']][$cls]['file']);
-// elseif(!@include_once(DIR_FS_ADMIN.DIR_WS_LANGUAGES . $language . '/modules/' . $_GET['set'] . '/' . parent::$modules_array[$_GET['set']][$cls]['file']))
-// @include_once(DIR_FS_CATALOG_LANGUAGES . $language . '/modules/' . $_GET['set'] . '/' . parent::$modules_array[$_GET['set']][$cls]['file']);
-
- $oscss=oscss_cstr::getInstance();
- if(isset($_GET['core'])) $oscss->pile_file_lang(DIR_FS_ADMIN.DIR_WS_LANGUAGES.$language.'/modules/'.$_GET['set'] . '/'.parent::$modules_array[$_GET['set']][$cls]['filelg'].'.txt');
+ if(isset($_GET['core']) && !empty($_GET['core'])) $oscss->pile_file_lang(DIR_FS_ADMIN.DIR_WS_LANGUAGES.$language.'/modules/'.$_GET['set'] . '/'.parent::$modules_array[$_GET['set']][$cls]['filelg'].'.txt');
else $oscss->pile_file_lang(DIR_FS_CATALOG.DIR_WS_LANGUAGES.$language.'/modules/'.$_GET['set'] . '/' .parent::$modules_array[$_GET['set']][$cls]['filelg'].'.txt');
- if(!isset($_GET['core'])) include_once(parent::$modules_array[$_GET['set']][$cls]['path'].parent::$modules_array[$_GET['set']][$cls]['file']);
- else include_once(parent::$modules_array[$_GET['set']][$cls]['path_BO'].parent::$modules_array[$_GET['set']][$cls]['file']);
+ if(isset($_GET['core']) && !empty($_GET['core']) ) include_once(parent::$modules_array[$_GET['set']][$cls]['path_BO'].parent::$modules_array[$_GET['set']][$cls]['file']);
+ else include_once(parent::$modules_array[$_GET['set']][$cls]['path'].parent::$modules_array[$_GET['set']][$cls]['file']);
-
$module = new $_GET['class'];
$module_info = array('code' => $module->code,
'title' => $module->title,
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-29 14:46:44
|
Revision: 3762
http://oscss.svn.sourceforge.net/oscss/?rev=3762&view=rev
Author: oscim
Date: 2011-06-29 14:46:38 +0000 (Wed, 29 Jun 2011)
Log Message:
-----------
correction de securit?\195?\169
Modified Paths:
--------------
branches/2.1.0/catalog/includes/classes/page.php
branches/2.1.0/catalog/install/includes/content/core.configuration.php
Modified: branches/2.1.0/catalog/includes/classes/page.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/page.php 2011-06-29 12:54:38 UTC (rev 3761)
+++ branches/2.1.0/catalog/includes/classes/page.php 2011-06-29 14:46:38 UTC (rev 3762)
@@ -700,7 +700,8 @@
public function oscss_content() {
$filename = DIR_WS_TEMPLATES . $this->page['template'] . '/includes/content/'. $this->page['content'];
if (self::TestFile($filename)) $this->page['path_content'] = (DIR_WS_TEMPLATES . $this->page['template'] . '/includes/content/'. $this->page['content']);
- else $this->page['path_content'] = (DIR_WS_INCLUDES.'content/' . $this->page['content']);
+ elseif (self::TestFile(DIR_WS_INCLUDES.'content/' . $this->page['content'])) $this->page['path_content'] = (DIR_WS_INCLUDES.'content/' . $this->page['content']);
+ else $this->page['path_content'] = (DIR_WS_INCLUDES.'content/404.php' );
return($this->page['path_content']);
}
Modified: branches/2.1.0/catalog/install/includes/content/core.configuration.php
===================================================================
--- branches/2.1.0/catalog/install/includes/content/core.configuration.php 2011-06-29 12:54:38 UTC (rev 3761)
+++ branches/2.1.0/catalog/install/includes/content/core.configuration.php 2011-06-29 14:46:38 UTC (rev 3762)
@@ -356,6 +356,13 @@
' RewriteRule (.*popup_image\.ph.*)$ $1 [L]' . "\n" .
' RewriteRule (.*login\.ph.*)$ $1 [L]' . "\n" .
' RewriteRule ([0-9A-Za-z_&=-]*)(.php)?(.*)$ index.php?page_admin=$1&%{QUERY_STRING} [L]' . "\n" .
+
+
+ ' ErrorDocument 401 /' . "\n" .
+ ' ErrorDocument 402 /' . "\n" .
+ ' ErrorDocument 403 /' . "\n" .
+ ' ErrorDocument 404 /' . "\n" .
+ ' ErrorDocument 500 /' . "\n" .
'</IfModule>' . "\n";
$fp = fopen($this->fs_document_root .$this->ws_admin_rand.'/.htaccess', 'w');
@@ -472,6 +479,12 @@
' RewriteRule ^d/(.*)/(.*).html$ $1.php?divers=$1.php&%{QUERY_STRING} [L]' . "\n" .
' RewriteRule ^l/(.*)/(.*).html$ $1.php?lID=$1&%{QUERY_STRING} [L]' . "\n" .
' RewriteRule ^u/(.*)/(.*).html$ index.php?customers_id=$1&%{QUERY_STRING} [L]' . "\n" .
+
+ ' ErrorDocument 401 /' . "\n" .
+ ' ErrorDocument 402 /' . "\n" .
+ ' ErrorDocument 403 /' . "\n" .
+ ' ErrorDocument 404 /' . "\n" .
+ ' ErrorDocument 500 /' . "\n" .
'</IfModule>' . "\n";
$fp = fopen($this->fs_document_root . '.htaccess', 'w');
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ay...@us...> - 2011-06-29 12:54:44
|
Revision: 3761
http://oscss.svn.sourceforge.net/oscss/?rev=3761&view=rev
Author: ayatus
Date: 2011-06-29 12:54:38 +0000 (Wed, 29 Jun 2011)
Log Message:
-----------
abondon du substr
cf http://forums.oscss.org/2-bug-fr/canonical-url-t1975.html
Modified Paths:
--------------
branches/2.1.0/catalog/includes/functions/html_output.php
Modified: branches/2.1.0/catalog/includes/functions/html_output.php
===================================================================
--- branches/2.1.0/catalog/includes/functions/html_output.php 2011-06-28 15:15:27 UTC (rev 3760)
+++ branches/2.1.0/catalog/includes/functions/html_output.php 2011-06-29 12:54:38 UTC (rev 3761)
@@ -241,7 +241,7 @@
*/
function CanonicalUrl() {
global $request_type;
- $domain = substr((($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER), 0, -1);
+ $domain = ($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER;
$string = $_SERVER['REQUEST_URI'];
$search = '/\&osCsid.*|\?osCsid.*/';
$replace = '';
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-28 15:15:33
|
Revision: 3760
http://oscss.svn.sourceforge.net/oscss/?rev=3760&view=rev
Author: oscim
Date: 2011-06-28 15:15:27 +0000 (Tue, 28 Jun 2011)
Log Message:
-----------
refonte partiel de l'editin des param,qui etait bugg?\195?\169 et non fonctionnel .
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/classes/configUtility.php
Modified: branches/2.1.0/catalog/admin/includes/classes/configUtility.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/classes/configUtility.php 2011-06-28 12:42:29 UTC (rev 3759)
+++ branches/2.1.0/catalog/admin/includes/classes/configUtility.php 2011-06-28 15:15:27 UTC (rev 3760)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 23/04/11, 09:55
+ @date 28/06/11, 09:55
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@brief class librairie for config action
@@ -56,7 +56,7 @@
$sortie .=sprintf( ($use_format !=false && isset($use_format['block'])? $use_format['block'] : '<p class="block_input button_nav">%s</p><br />' ) , $keys);
}
- return $keys;
+ return $sortie;
}
/**
@@ -70,16 +70,25 @@
TODO update method for accept call static method and init class by new or getInstance if exits
*/
public static function CallExecConfigLine($_function, $key, $value){
+
if (tep_not_null($_function)) {
if (preg_match('/->/', $_function)) {
$class_method = explode('->', $_function);
if (!is_object(${$class_method[0]})) {
${$class_method[0]} = new $class_method[0]();
}
- return tep_call_function($class_method[1], $value, ${$class_method[0]});
- } else {
- return tep_call_function($_function, $value);
+ eval('$keys = ' . $_function . "'" . $value . "', '" . $key . "');");
}
+ elseif (preg_match('/::/', $_function)) {
+ $_function=substr($_function,0, strpos($_function,'(') );
+ $class_method = explode('::', $_function);
+
+ $keys= call_user_func(array($class_method[0], $class_method[1]), $value, $key);
+ }
+ else {
+ eval('$keys = ' . $_function . "'" . $value . "', '" . $key . "');");
+ }
+ return $keys;
}
return tep_draw_input_field('configuration[' . $key . ']', "configuration$key", $value);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-28 12:42:37
|
Revision: 3759
http://oscss.svn.sourceforge.net/oscss/?rev=3759&view=rev
Author: oscim
Date: 2011-06-28 12:42:29 +0000 (Tue, 28 Jun 2011)
Log Message:
-----------
correction coquille
correction erreur notice
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/newsletters.txt
branches/2.1.0/catalog/admin/includes/modules/newsletters/new_products.php
branches/2.1.0/catalog/admin/includes/modules/newsletters/newsletter.php
branches/2.1.0/catalog/admin/includes/modules/pages/newsletters.php
branches/2.1.0/catalog/includes/classes/driver.product.php
branches/2.1.0/catalog/includes/classes/pad_base.php
branches/2.1.0/catalog/includes/languages/fr_FR/product_info.php
branches/2.1.0/catalog/includes/languages/fr_FR.php
branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/plugins/product/slimbox/includes_header.php
branches/2.1.0/catalog/newsletters.php
Added Paths:
-----------
branches/2.1.0/catalog/includes/classes/pad_base_multi.php
Modified: branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/newsletters.txt
===================================================================
--- branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/newsletters.txt 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/newsletters.txt 2011-06-28 12:42:29 UTC (rev 3759)
@@ -91,5 +91,5 @@
/* Generic in mail */
-$lang['text view online <a href="%s" >click here</a>']="Si vous ne visualisez pas correctement cet Email <a href=\"%s\" >Cliquez ici</a>";
+$lang['text view online %s']="Si vous ne visualisez pas correctement cet Email <a href=\"%s\" >Cliquez ici</a>";
?>
\ No newline at end of file
Modified: branches/2.1.0/catalog/admin/includes/modules/newsletters/new_products.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/newsletters/new_products.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/admin/includes/modules/newsletters/new_products.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -8,7 +8,7 @@
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
*/
-error_reporting(E_ALL);
+
class new_products
extends NewslettersChargeur
implements InterfaceNewsletters {
@@ -58,7 +58,7 @@
$date=$_query->fetchAssoc();
- $_query=$DB->query("SELECT DISTINCT p.*, pd.* FROM ".TABLE_PRODUCTS." p,".TABLE_PRODUCTS_DESCRIPTION." pd WHERE p.products_id=pd.products_id AND language_id='".$languages_id."' AND products_date_added > '".$date['date_sent']."' ");
+ $_query=$DB->query("SELECT DISTINCT p.*, pd.* FROM ".TABLE_PRODUCTS." p,".TABLE_PRODUCTS_DESCRIPTION." pd WHERE p.products_id=pd.products_id AND language_id='".$languages_id."' AND products_date_added > '".$date['date_sent']."' LIMIT 5");
return $res=$_query->fetchAllAssoc();
}
@@ -158,8 +158,8 @@
$myarray = array(
'email_use_html'=>_cst_bool('EMAIL_USE_HTML'),
'email_use_logo'=>NewslettersUtility::UseModele(parent::$CurrentMod->modele_id),
- 'email_use_link_online'=> sprintf(__('text view online <a href="%s" >click here</a>') , tep_catalog_href_link('newsletters.php','newsID='.parent::$CurrentMod->modele_id.'&cID='.$mail['id'].'&hash='.md5($mail['id'].$mail['email'].parent::$CurrentMod->modele_id).'&mode=view')),
- 'tpl_link_trace'=>'<img src="'.HTTP_SERVER.DIR_WS_CATALOG.'n-'.parent::$CurrentMod->modele_id.'-'.$mail['id'].'.jpg" width="1" height="1">',
+ 'email_use_link_online'=> sprintf(__('text view online <a href="%s" >click here</a>') , tep_catalog_href_link('newsletters.php','newsID='.$newsletter_id.'&cID='.$mail['id'].'&hash='.md5($mail['id'].$mail['email'].$newsletter_id,'NONSSL', true).'&mode=view')),
+ 'tpl_link_trace'=>'<img src="'.HTTP_SERVER.DIR_WS_CATALOG.'n-'.$newsletter_id.'-'.$mail['id'].'.jpg" width="1" height="1">',
'message'=> NewslettersUtility::ApplModele($this->content, parent::$CurrentMod->modele_id),
);
Modified: branches/2.1.0/catalog/admin/includes/modules/newsletters/newsletter.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/newsletters/newsletter.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/admin/includes/modules/newsletters/newsletter.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -108,8 +108,11 @@
$myarray = array(
'email_use_html'=>_cst_bool('EMAIL_USE_HTML'),
'email_use_logo'=>NewslettersUtility::UseModele(parent::$CurrentMod->modele_id),
- 'email_use_link_online'=> sprintf(__('text view online <a href="%s" >click here</a>') , tep_catalog_href_link('newsletters.php','newsID='.parent::$CurrentMod->modele_id.'&cID='.$mail['id'].'&hash='.md5($mail['id'].$mail['email'].parent::$CurrentMod->modele_id).'&mode=view')),
- 'tpl_link_trace'=>'<img src="'.HTTP_SERVER.DIR_WS_CATALOG.'n-'.parent::$CurrentMod->modele_id.'-'.$mail['id'].'.jpg" width="1" height="1">',
+ 'email_use_link_online'=>
+ sprintf(__('text view online %s') ,
+ tep_catalog_href_link('newsletters.php','newsID='.$newsletter_id.'&cID='.$mail['id'].'&hash='.md5($mail['id'].$mail['email'].$newsletter_id).'&mode=view','NONSSL' ,true)
+ ),
+ 'tpl_link_trace'=>'<img src="'.HTTP_SERVER.DIR_WS_CATALOG.'n-'.$newsletter_id.'-'.$mail['id'].'.jpg" width="1" height="1">',
'message'=> NewslettersUtility::ApplModele($this->content, parent::$CurrentMod->modele_id),
);
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/newsletters.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/newsletters.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/newsletters.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -234,7 +234,7 @@
self::$nID=(int)$_GET['nID'];
self::$nInfo=self::load_db_values(self::$nID);
NewslettersChargeur::load_module(self::$nID);
- self::$preview=NewslettersChargeur::$module->get_content(NewslettersChargeur::$module->content);
+ self::$preview=self::$preview=NewslettersChargeur::$module->content; //NewslettersChargeur::$module->get_content(NewslettersChargeur::$module->content);
break;
case 'confirm_sendtest':
Modified: branches/2.1.0/catalog/includes/classes/driver.product.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/driver.product.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/includes/classes/driver.product.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -571,7 +571,7 @@
$stock=$stock_query->fetchAssoc();
unset($attr_list);
- self::$array_data[$products_id]->products_attribute_stock[$uprid] = (int)$stock['quantity'];
+ @self::$array_data[$products_id]->products_attribute_stock[$uprid] = (int)$stock['quantity'];
return $stock['quantity'];
}
return self::$array_data[$products_id]->products_attribute_stock[$uprid] = 0;
Modified: branches/2.1.0/catalog/includes/classes/pad_base.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/pad_base.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/includes/classes/pad_base.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -4,7 +4,7 @@
\portion code Copyright (c) 2002 osCommerce
\package osCSS-2 <www http://www.oscss.org>
\version 2.1.0
- \date 29/11/10, 11:33
+ @date 23/06/11, 15:31
\author oscim <mail aur...@os...> <www http://www.oscim.fr>
\encode UTF-8
\file pad_base.php
@@ -63,12 +63,12 @@
* \brief process calcul attribute for product
*/
class pad_base {
- var $products_id;
- var $products_tax_class_id;
- var $show_out_of_stock;
- var $mark_out_of_stock;
- var $out_of_stock_msgline;
- var $no_add_out_of_stock;
+ public $products_id;
+ public $products_tax_class_id;
+ public $show_out_of_stock;
+ public $mark_out_of_stock;
+ public $out_of_stock_msgline;
+ public $no_add_out_of_stock;
/**
@@ -77,7 +77,7 @@
* @param $class_master object , permet de remplacer les appel par defaut de la class, par celle precisé. les methodes doivent être public
* @returns: nothing
*/
- function pad_base($products_id=0, $class_master='') {
+ function __construct($products_id=0, $class_master='') {
$this->products_id = $products_id;
if ($this->products_id != 0) {
$product_obj=product::get_item((int)$products_id );
@@ -96,7 +96,7 @@
* @param $prefix string Prefix for the osCommerce DB constants
* @returns: nothing
*/
- private function _SetConfigurationProperties($prefix) {
+ protected function _SetConfigurationProperties($prefix) {
$this->show_out_of_stock = _cst_bool($prefix . 'SHOW_OUT_OF_STOCK');
$this->mark_out_of_stock = tep_cst_define($prefix . 'MARK_OUT_OF_STOCK');
$this->out_of_stock_msgline = _cst_bool($prefix . 'OUT_OF_STOCK_MSGLINE');
@@ -114,7 +114,7 @@
* \brief Methode draw des js dans les block header. Necessite d'être appelé en premier
Prend en charge el chargement prealable à la page, et repartis les scripts
*/
- function draw_js() {
+ public function draw_js() {
//load db
$this->the_attributes = $this->_build_attributes_array(true, true);
if(count($this->the_attributes)==0) return;
@@ -143,7 +143,7 @@
attribute.
@returns: string: HTML for displaying the product attributes
*/
- function draw() {
+ public function draw() {
$attributes=$this->the_attributes;
if (sizeof($attributes)==0) return false;
$out= '<h4>'.TEXT_PRODUCT_OPTIONS.'</h4>'.
@@ -161,7 +161,7 @@
Intended for class internal use only.
@returns: string: HTML for start of table
*/
- private function _draw_table_start() {
+ protected function _draw_table_start() {
return '<ul class="production_option list">';
}
@@ -172,7 +172,7 @@
Intended for class internal use only.
@returns: string: HTML for end of table
*/
- private function _draw_table_end() {
+ protected function _draw_table_end() {
return '</ul>';
}
@@ -182,7 +182,7 @@
* @param $attrib array tableau attribute
* @returns: HTML for displaying the product attributes
*/
- private function _draw_attributes($attrib) {
+ protected function _draw_attributes($attrib) {
$out='';
$o=0;
$mode_img=array();
@@ -243,7 +243,7 @@
Set to zero if the product id did not contain
this option.
*/
- private function _build_attributes_array($build_stocked, $build_nonstocked) {
+ protected function _build_attributes_array($build_stocked, $build_nonstocked) {
global $languages_id,$currencies,$cart,$page;
if (!($build_stocked | $build_nonstocked)) return null;
@@ -334,7 +334,7 @@
$array array
$js string
*/
- private function _draw_type_att($array,$js){
+ protected function _draw_type_att($array,$js){
$field ='';
//! utilise la function de la class appelante, en rempacement de celle ci
@@ -404,7 +404,7 @@
see $combinations and $selected_combination parameters above
no actual function return value.
*/
- private function _build_attributes_combinations($attributes, $showoos, $markoos, &$combinations, &$selected_combination, $oidindex=0, $comb=array(), $id="", $text='', $isselected=true) {
+ protected function _build_attributes_combinations($attributes, $showoos, $markoos, &$combinations, &$selected_combination, $oidindex=0, $comb=array(), $id="", $text='', $isselected=true) {
global $cart;
foreach ($attributes[$oidindex]['ovals'] as $attrib) {
@@ -459,7 +459,7 @@
The string returned would be
{1:{5:{4:1,8:1}, 10:{4:1}}, 3:{5:{8:1}}}
*/
- private function _draw_js_stock_array($combinations) {
+ protected function _draw_js_stock_array($combinations) {
// print_r($combinations);
if (!((isset($combinations)) && (is_array($combinations)) && (sizeof($combinations) > 0))){
return '{}';
@@ -580,7 +580,7 @@
* \brief Remplacement de l'image principale du produits
* @param $attributes array
*/
- private function _draw_upimage_master($attributes) {
+ protected function _draw_upimage_master($attributes) {
$i=$this->up_master;
$out="<script type=\"text/javascript\"><!--\n";
$out.="function up_master_image(idn,id_value){\n";
@@ -605,7 +605,7 @@
* \brief Remplacement de l'image principale du produits
* @param $attributes array
*/
- private function _draw_price_master($attributes) {
+ protected function _draw_price_master($attributes) {
global $osCSS_Cache;
$i=$this->up_master;
if ($osCSS_Cache->read('_draw_price_master-'.$this->products_id.'-ctr_js', 60) ) {
@@ -661,7 +661,7 @@
* \fn _js_draw_textoption()
* \brief Calcul nombre caratere restant / specifique option text champs dipso pour user
*/
- private function _js_draw_textoption(){
+ protected function _js_draw_textoption(){
global $osCSS_Cache;
if ($osCSS_Cache->read('__js_draw_textoption-'.$this->products_id.'-ctr_js', 60) ) {
$out = $osCSS_Cache->getCache();
Added: branches/2.1.0/catalog/includes/classes/pad_base_multi.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/pad_base_multi.php (rev 0)
+++ branches/2.1.0/catalog/includes/classes/pad_base_multi.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -0,0 +1,293 @@
+<?php if (!defined('HTTP_SERVER')) die('You can not access this file directly!');
+/**
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
+ @portion code Copyright (c) 2002 osCommerce
+ @package osCSS-2 <www http://www.oscss.org>
+ @version 2.1.0
+ @date 23/06/11, 15:31
+ @author oscim <mail aur...@os...> <www http://www.oscim.fr>
+ @encode UTF-8
+ @class pad_base_multi
+ @brief extends class pad_base, but for used in listing product,
+ and the product_quantity id css id :
+ - product_quantity_xx
+ - xx is the products id
+*/
+
+/*
+ * \class pad_base
+ * \brief process calcul attribute for product
+*/
+class pad_base_multi
+ extends pad_base
+ {
+ var $products_id;
+ var $products_tax_class_id;
+ var $show_out_of_stock;
+ var $mark_out_of_stock;
+ var $out_of_stock_msgline;
+ var $no_add_out_of_stock;
+
+
+
+
+
+ /**
+ * \fn _draw_attributes($attrib)
+ * \brief Boucle pour la mise en html des attribute
+ * @param $attrib array tableau attribute
+ * @returns: HTML for displaying the product attributes
+ */
+ protected function _draw_attributes($attrib) {
+ $out='';
+ $o=0;
+ $mode_img=array();
+
+ foreach($attrib as $item) {
+ //! option non obligatoire
+ if($item['omode']==0) $item['default']='';
+
+ //! gestion stock
+ $stocked=($item['ostock']==0)? false : true;
+
+ //! boucle adapt sortie
+ for ($a=0, $s=sizeof($item['ovals']); $a<$s; $a++) {
+ $mode_img[]=$mod=(!empty($item['ovals'][$a]['thumbnail'])? true : false);
+ $item['ovals'][$a]['text']=($mod)? tep_image($item['ovals'][$a]['thumbnail'], $item['ovals'][$a]['text']):$item['ovals'][$a]['text'];
+ $mode_url[]=(!empty($item['ovals'][$a]['url'])? true : false);
+ }
+
+ //! js exe inline
+ $js =" onchange=\" ";
+// $js.=(in_array(true,$mode_url)) ? " up_master_image_".$this->products_id."(this.value); " : "";
+ $js.=(in_array(true,$mode_url)) ? " up_master_image_".$this->products_id."(".$item['oid'].",this.value); " : "";
+ $js.=($this->actual_price_pull_down) ? " up_master_price_".$this->products_id."(".$item['oid'].",this.value); " : "";
+ if($stocked) $js.=($this->stock_check && $this->out_of_stock_msgline) ? " stkmsg_".$this->products_id."(this.form); " : "";
+ $js.=" \" ";
+
+
+ $out.='<li class="product_option_item">'.
+ '<span class="item_heading"><strong>'.$item['oname'].':</strong></span>'.
+ '<span class="item_comment">'.$item['ocomment'].'</span>'.
+ '<span class="item_value">'.$this->_draw_type_att($item, $js).'</span>'.
+ "</li>\n";
+
+ $this->up_master=$o;
+ $o++;
+ }
+ return $out.$this->_draw_out_of_stock_message_js($attrib);
+ }
+
+
+
+
+ /**
+ * \fn _draw_out_of_stock_message_js($attributes)
+ * \brief
+ draw Javascript to display out of stock message for out of stock attribute combinations
+ @param array $attributes Array of attributes for the product. Format is as returned by
+ _build_attributes_array.
+ @returns: string: Javascript to display out of stock message for out of stock attribute combinations
+ */
+ function _draw_out_of_stock_message_js($attributes) {
+ $out='';
+
+ $out.="<li><span id=\"oosmsg_".$this->products_id."\" class=errorBox></span>\n";
+// print_r($attributes);
+
+ if (($this->out_of_stock_msgline | $this->no_add_out_of_stock)) {
+
+ $combinations = array();
+ $selected_combination = 0;
+ $this->_build_attributes_combinations($attributes, $this->show_out_of_stock, 'None', $combinations, $selected_combination);
+
+ $out.="<script type=\"text/javascript\"><!--\n";
+ $out.=" function check_test_".$this->products_id."(input) {\n \n ";
+ $out.=" if(input.type =='select-one'){ ";
+ $out.=" var selected_value = input.selectedIndex; \n ";
+ $out.=" return input[selected_value].value; \n ";
+ $out.=" } else { \n ";
+ $out.=" for (var i=0; i<input.length;i++) { \n";
+ $out.=" if (input[i].checked || input[selected_value]) return input[i].value; \n";
+ $out.=" } \n";
+ $out.=" } \n";
+ $out.=" } \n";
+ $out.=" function chkstk_".$this->products_id."(frm) {\n";
+
+ // build javascript array of in stock combinations
+ $out.=" var stk=".$this->_draw_js_stock_array($combinations).";\n";
+ $out.=" var instk=false;\n";
+ $out.=" if(frm ==null) return ''; \n";
+
+ // build javascript if statement to test level by level for existance
+ $out.=' var qty = document.getElementById("products_quantity_'.$this->products_id.'").value ; ';
+ for ($i=0; $i<sizeof($attributes); $i++) {
+ $out.=' var input'.$i." = frm.elements['id[".$attributes[$i]['oid']."]']; \n";
+ $out.=" var val".$i." =check_test_".$this->products_id."(input".$i."); ";
+ }
+ $out.="\n".'if( stk';
+ for ($i=0; $i<sizeof($attributes); $i++) {
+ $out.="[val".$i."]";
+ }
+ $out.=' >= qty ) return true; '."\n";
+ $out.='else return false;';
+ $out.=" }\n";
+
+
+
+ if ($this->out_of_stock_msgline) {
+ // set/reset out of stock message based on selection
+ $out.=" function stkmsg_".$this->products_id."(frm) {\n";
+ $out.=" var instk=chkstk_".$this->products_id."(frm);\n";
+ $out.=" var span=document.getElementById(\"oosmsg_".$this->products_id."\");\n";
+ $out.=" while (span.childNodes[0])\n";
+ $out.=" span.removeChild(span.childNodes[0]);\n";
+ $out.=" if (!instk)\n";
+ $out.=" span.appendChild(document.createTextNode(\"".addslashes(TEXT_OUT_OF_STOCK_MESSAGE)."\"));\n";
+ $out.=" else\n";
+ $out.=" span.appendChild(document.createTextNode(\" \"));\n";
+ $out.=" }\n";
+ //initialize out of stock message
+// $out.=" stkmsg(document.forms.cart_quantity);\n";
+ }
+
+ if ($this->no_add_out_of_stock) {
+ // js to not allow add to cart if selection is out of stock
+ $out.=" function chksel_".$this->products_id."() {\n";
+ $out.=" var instk=chkstk_".$this->products_id."(document.forms.cart_quantity_".$this->products_id.");\n";
+ $out.=" if (!instk) alert('".TEXT_OUT_OF_STOCK_MESSAGE."');\n";
+ $out.=" return instk;\n";
+ $out.=" }\n";
+// $out.=" document.id_" . (int)$this->products_id . ".onsubmit=chksel;\n";
+ $out.=" document.forms.cart_quantity_".$this->products_id.".onsubmit=chksel_".$this->products_id.";\n";
+ }
+ $out.="//--></script>\n";
+ }
+ $out.="</li>\n";
+ return $out;
+ }
+
+ /**
+ * \fn
+ * \brief Remplacement de l'image principale du produits
+ * @param $attributes array
+ */
+ protected function _draw_upimage_master($attributes) {
+ $i=$this->up_master;
+ $out="<script type=\"text/javascript\"><!--\n";
+ $out.="function up_master_image_".$this->products_id."(idn,id_value){\n";
+ $tableau_JS="Tableau";
+ $out.= sprintf("%s = new Array();\n",$tableau_JS);
+ foreach($attributes[$i]['ovals'] as $keyItems => $valueItems) {
+ foreach($valueItems as $keyItem => $valueItem) {
+ if($keyItem=='id') $id=$valueItem;
+ elseif($keyItem=='url')
+ $out.= sprintf("%s[%s] = %s;\n",$tableau_JS, $id,
+ ( is_string($valueItem)||empty($valueItem) ) ? "\"".addslashes($valueItem)."\"" : $valueItem);
+ }
+ }
+ $out.=" change_image_master_".$this->products_id."('".HTTP_SERVER.DIR_WS_CATALOG.DIR_WS_IMAGES."'+".$tableau_JS."[id_value]) ;\n ";
+ $out.="}\n";
+ $out.="//--></script>\n";
+ return $out;
+ }
+
+ /**
+ * \fn _draw_price_master($attributes)
+ * \brief Remplacement de l'image principale du produits
+ * @param $attributes array
+ */
+ protected function _draw_price_master($attributes) {
+ global $osCSS_Cache;
+ $i=$this->up_master;
+ if ($osCSS_Cache->read('_draw_price_master-'.$this->products_id.'-ctr_js', 60) ) {
+ $out = $osCSS_Cache->getCache();
+ } else {
+ $out="<script type=\"text/javascript\"><!--\n";
+
+ $out.="function up_master_price(idn,id_value){\n";
+ $out.=" var master2 = document.getElementById('price_master');\n";
+ $tableau_JS="Tableau2";
+ $out.= sprintf("%s = new Array();\n",$tableau_JS);
+ for($i=0, $m=count($attributes); $i< $m; $i++){
+ $out.= sprintf("%s[%s]= new Array();\n",$tableau_JS, $i);
+ foreach($attributes[$i]['ovals'] as $keyItems => $valueItems) {
+ $out.= sprintf("%s[%s][%s]= new Array();\n",$tableau_JS,$i, $keyItems);
+ foreach($valueItems as $keyItem => $valueItem) {
+ $out.= sprintf("%s[%s][%s]['%s'] =%s;\n",$tableau_JS, $i, $keyItems, $keyItem,
+ ( is_string($valueItem)||empty($valueItem) ) ? "\"".addslashes($valueItem)."\"" : $valueItem);
+ }
+ }
+ }
+// $out.=" var pile_price = parseFloat(".$tableau_JS."[idn][i]['adjust']);\n";
+// $out.=" var pile_prefix=".$tableau_JS."[idn][i]['prefix'] ;\n";
+ $out.=" idn= (idn-1) ;\n";
+ $out.=" tab = ".$tableau_JS."[idn] ;\n";
+ $out.=" var actuel = parseFloat(master2.innerHTML) ;\n";
+// $out.=" if ( pile_price != actuel ){;\n";
+// $out.=" if(pile_prefix == '-' ) actuel = parseFloat(master2.innerHTML)+ parseFloat(pile_price) ;\n";
+// $out.=" else actuel = parseFloat(master2.innerHTML)-parseFloat(pile_price) ;\n";
+// $out.=" }else actuel = parseFloat(master2.innerHTML);\n";
+ $out.=" actuel = parseFloat(master2.innerHTML);\n";
+ $out.=" for(i=0; i<tab.length; i++) { \n
+ if(i==0)actuel = parseFloat(".$tableau_JS."[idn][i]['original_price']) ; \n
+ if(".$tableau_JS."[idn][i]['id']==id_value ){\n
+ if(".$tableau_JS."[idn][i]['prefix'] == '+' ) master2.innerHTML=actuel+ parseFloat(".$tableau_JS."[idn][i]['adjust']) ;\n
+ else master2.innerHTML= actuel - ".$tableau_JS."[idn][i]['adjust'] ;\n
+ pile_price = ".$tableau_JS."[idn][i]['adjust'] ;\n
+ pile_prefix = ".$tableau_JS."[idn][i]['prefix'] ;\n
+ }\n
+ } \n";
+ $out.="}\n";
+ $out.="//--></script>\n";
+
+ $osCSS_Cache->writeBuffer($out);
+ }
+
+ return $out;
+ }
+
+
+
+ /**
+ * \fn _js_draw_textoption()
+ * \brief Calcul nombre caratere restant / specifique option text champs dipso pour user
+ */
+ protected function _js_draw_textoption(){
+ global $osCSS_Cache;
+ if ($osCSS_Cache->read('__js_draw_textoption-'.$this->products_id.'-ctr_js', 60) ) {
+ $out = $osCSS_Cache->getCache();
+ } else {
+
+ $out ="<script language=\"javascript\"><!--\n";
+ $out.=" // BOF Product Type Feature\n";
+ $out.=" function textCounter(field,counter,maxlimit,linecounter) {\n";
+ $out.=" // text width//\n";
+ $out.=" var fieldWidth = parseInt(field.offsetWidth);\n";
+ $out.=" var charcnt = field.value.length;\n";
+ $out.=" // trim the extra text\n";
+ $out.=" if (charcnt > maxlimit) {\n";
+ $out.=" field.value = field.value.substring(0, maxlimit);\n";
+ $out.=" } else {\n";
+ $out.=" // progress bar percentage\n";
+ $out.=" var percentage = parseInt(100 - (( maxlimit - charcnt) * 100)/maxlimit) ;\n";
+ $out.=" document.getElementById(counter).style.width = parseInt((fieldWidth*percentage)/100)+\"px\";\n";
+ $out.=" document.getElementById(counter).innerHTML=\"Limit: \"+percentage+\"%\"\n";
+ $out.=" // color correction on style from CCFFF -> CC0000\n";
+ $out.=" setcolor(document.getElementById(counter),percentage,\"background-color\");\n";
+ $out.=" }\n";
+ $out.=" }\n";
+ $out.=" function setcolor(obj,percentage,prop){\n";
+ $out.=" obj.style[prop] = \"rgb(80%,\"+(100-percentage)+\"%,\"+(100-percentage)+\"%)\";\n";
+ $out.=" }\n";
+ $out.=" // EOF Product Type Feature\n";
+ $out.=" //-->\n";
+ $out.="</script>\n";
+
+ $osCSS_Cache->writeBuffer($out);
+ }
+
+ return $out;
+ }
+}
+?>
\ No newline at end of file
Modified: branches/2.1.0/catalog/includes/languages/fr_FR/product_info.php
===================================================================
--- branches/2.1.0/catalog/includes/languages/fr_FR/product_info.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/includes/languages/fr_FR/product_info.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -20,10 +20,7 @@
/// option via miltiple_dopdown_productlist
define('TXT_IN_SELECT_CHOOSE', 'Choissiez');
define('TXT_IN_SELECT_CHOOSE_END', '...');
-/// texte hors stock
-define('TEXT_OUT_OF_STOCK_MESSAGE', 'Hors stock');
-/// titre option dispo
-define('TEXT_PRODUCT_OPTIONS', 'Options disponibles');
+
/// agrandissment image title survol
define('TEXT_CLICK_TO_ENLARGE', 'Cliquer pour agrandir');
/// lien vers page produit fabricant
Modified: branches/2.1.0/catalog/includes/languages/fr_FR.php
===================================================================
--- branches/2.1.0/catalog/includes/languages/fr_FR.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/includes/languages/fr_FR.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -385,6 +385,12 @@
define('HEADING_CHILD_CAT', 'Sous categorie(s)');
define('ENTRY_NAME_CHECK_ERROR', 'Vous devez preciser votre nom');
+
+/// texte hors stock
+define('TEXT_OUT_OF_STOCK_MESSAGE', 'Hors stock');
+/// titre option dispo
+define('TEXT_PRODUCT_OPTIONS', 'Options disponibles');
+
/*
The following copyright announcement can only be
appropriately modified or removed if the layout of
Modified: branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/plugins/product/slimbox/includes_header.php
===================================================================
--- branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/plugins/product/slimbox/includes_header.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/install/data/templates/appareil_photo/electronix/includes/plugins/product/slimbox/includes_header.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -29,10 +29,10 @@
$img_gd=(isset($product_info['products_image_xl']))? $product_info['products_image_xl']: $product_info['products_image'];
$m =''."\n";
- $m .='<p><a class="'.$class.'" rel="'.$class.'" href="' .tep_image(DIR_WS_IMAGES . $img_gd, $product_info['products_name'], $page->_conf_value('POPUP_IMAGE_WIDTH'), $page->_conf_value('POPUP_IMAGE_HEIGHT'), "", true) . '" title="' . addslashes($product_info['products_name']) . '" >' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), $img_w, $img_h,' id="image_master" ') . '</a></p>'."\n";
+ $m .='<p><a class="'.$class.'" rel="'.$class.'" href="' .tep_image(DIR_WS_IMAGES . $img_gd, $product_info['products_name'], $page->_conf_value('POPUP_IMAGE_WIDTH'), $page->_conf_value('POPUP_IMAGE_HEIGHT'), "", true) . '" title="' . addslashes($product_info['products_name']) . '" >' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), $img_w, $img_h,' id="image_master" ','simple') . '</a></p>'."\n";
$m .=''."\n";
$m .='<noscript>'."\n";
- $m .='<p><a class="'.$class.'" href="' .tep_image(DIR_WS_IMAGES . $img_gd, $product_info['products_name'], $page->_conf_value('POPUP_IMAGE_WIDTH'), $page->_conf_value('POPUP_IMAGE_HEIGHT'), "", true) . '">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], $img_w, $img_h,' id="image_master" ') . '</a><br /><a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '">' . TEXT_CLICK_TO_ENLARGE . '</a></p>'."\n";
+ $m .='<p><a class="'.$class.'" href="' .tep_image(DIR_WS_IMAGES . $img_gd, $product_info['products_name'], $page->_conf_value('POPUP_IMAGE_WIDTH'), $page->_conf_value('POPUP_IMAGE_HEIGHT'), "", true) . '">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], $img_w, $img_h,' id="image_master" ','simple') . '</a><br /><a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '">' . TEXT_CLICK_TO_ENLARGE . '</a></p>'."\n";
$m .='</noscript>'."\n";
return $m;
Modified: branches/2.1.0/catalog/newsletters.php
===================================================================
--- branches/2.1.0/catalog/newsletters.php 2011-06-23 09:58:13 UTC (rev 3758)
+++ branches/2.1.0/catalog/newsletters.php 2011-06-28 12:42:29 UTC (rev 3759)
@@ -11,7 +11,7 @@
*\brief Page de login
*/
require('includes/application_top.php');
-error_reporting(E_ALL);
+// error_reporting(E_ALL);
$page->init(basename(__FILE__),$language);
// if(!isset($_GET['newsID'])) tep_redirect(tep_href_link(FILENAME_DEFAULT, '', 'SSL'));
@@ -68,9 +68,9 @@
$page->post_init();
+// var_dump($module);
-
switch($mode){
/**
@@ -99,9 +99,9 @@
$module['content']=str_replace(NewslettersUtility::$replace, array($user['customers_id'],$user['customers_gender'],$user['customers_firstname'],$user['customers_lastname'],$user['customers_email_address'],'','',$user['customers_shopping_points']) ,$module['content']);
-var_dump($module);
+
/// force link by redirect shop
- $module['content']= preg_replace('~href[\s]*=[\s]*"~', 'href="'.HTTP_SERVER.DIR_WS_HTTP_CATALOG.'news.php?i='.$newsid.'&c='.$user['customers_email_address'].'&u=$1',$module['content']);
+// $module['content']= preg_replace('~href[\s]*=[\s]*"~', 'href="'.HTTP_SERVER.DIR_WS_HTTP_CATALOG.'news.php?i='.$newsid.'&c='.$user['customers_email_address'].'&u=$1',$module['content']);
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/xhtml1-loose.dtd">'.
'<html>'.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-23 09:58:19
|
Revision: 3758
http://oscss.svn.sourceforge.net/oscss/?rev=3758&view=rev
Author: oscim
Date: 2011-06-23 09:58:13 +0000 (Thu, 23 Jun 2011)
Log Message:
-----------
correction ereur de notice
Modified Paths:
--------------
branches/2.1.0/catalog/includes/classes/pad_base.php
Modified: branches/2.1.0/catalog/includes/classes/pad_base.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/pad_base.php 2011-06-16 14:04:30 UTC (rev 3757)
+++ branches/2.1.0/catalog/includes/classes/pad_base.php 2011-06-23 09:58:13 UTC (rev 3758)
@@ -275,7 +275,7 @@
/** url /option value */
if (_test_bool($products_options_name['products_options_images_enabled'])){
$products_options_array[sizeof($products_options_array)-1]['url']=$products_options['products_options_values_url'];
- if(!in_array($products_options['products_options_values_url'] ,$page->product->pile_img)) $page->product->pile_img[]=$products_options['products_options_values_url'];
+ if(isset($page->product) && !in_array($products_options['products_options_values_url'] ,$page->product->pile_img)) $page->product->pile_img[]=$products_options['products_options_values_url'];
}
/** Price / option value */
if ($products_options['options_values_price'] != '0') {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-16 14:04:41
|
Revision: 3757
http://oscss.svn.sourceforge.net/oscss/?rev=3757&view=rev
Author: oscim
Date: 2011-06-16 14:04:30 +0000 (Thu, 16 Jun 2011)
Log Message:
-----------
coquille appel du gabarit, erreur sur le nom
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/modules/pages/package.php
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/package.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/package.php 2011-06-16 09:50:52 UTC (rev 3756)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/package.php 2011-06-16 14:04:30 UTC (rev 3757)
@@ -509,7 +509,7 @@
$obj=self::load_db_values((string)$id);
self::$list=$obj[0];
self::$Rightlist=$obj[0]->item;
- return MGabCont::CallGab('inline','display_view',__CLASS__);
+ return MGabCont::CallGab(self::$type_data.'.inline','display_view',__CLASS__);
}
/** Interface module */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ay...@us...> - 2011-06-16 09:51:03
|
Revision: 3756
http://oscss.svn.sourceforge.net/oscss/?rev=3756&view=rev
Author: ayatus
Date: 2011-06-16 09:50:52 +0000 (Thu, 16 Jun 2011)
Log Message:
-----------
Harmonisation des tep_cfg_select_option => passage en minuscule des valeurs true et false
Modified Paths:
--------------
branches/2.1.0/catalog/install/oscss_config.sql
Modified: branches/2.1.0/catalog/install/oscss_config.sql
===================================================================
--- branches/2.1.0/catalog/install/oscss_config.sql 2011-06-15 14:52:30 UTC (rev 3755)
+++ branches/2.1.0/catalog/install/oscss_config.sql 2011-06-16 09:50:52 UTC (rev 3756)
@@ -1,7 +1,7 @@
#+###################################-+
#| osCSS Open Source E-commerce |
#+###################################-+
-#| Copyright (c) 2005-2010 The osCSS developers |
+#| Copyright (c) 2005-2011 The osCSS developers |
#| |
#| http://www.oscss.org |
#| http://www.oscim.net |
@@ -305,12 +305,12 @@
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, configuration_type) values ('STOCK_MARK_PRODUCT_NO_STOCK_S', 'STOCK_MARK_PRODUCT_NO_STOCK', '*cmd*', 'STOCK_MARK_PRODUCT_NO_STOCK_L', '9', '4', NOW(), NOW(), 3);
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) values ('STOCK_REORDER_LEVEL_S', 'STOCK_REORDER_LEVEL', '5', 'STOCK_REORDER_LEVEL_L', '9', '5', NOW(), NOW());
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_PLUGIN_S', 'PRODINFO_ATTRIBUTE_PLUGIN', 'base', 'PRODINFO_ATTRIBUTE_PLUGIN_L', '9', '6', NULL,NOW(), NULL, 'tep_cfg_pull_down_class_files(\'pad_\',');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_SHOW_OUT_OF_STOCK_S', 'PRODINFO_ATTRIBUTE_SHOW_OUT_OF_STOCK', 'True', 'PRODINFO_ATTRIBUTE_SHOW_OUT_OF_STOCK_L', '9', '7', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_MARK_OUT_OF_STOCK_S', 'PRODINFO_ATTRIBUTE_MARK_OUT_OF_STOCK', 'Right', 'PRODINFO_ATTRIBUTE_MARK_OUT_OF_STOCK_L', '9', '8', NULL,NOW(), NULL, 'tep_cfg_select_option(array(\'None\', \'Right\', \'Left\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_OUT_OF_STOCK_MSGLINE_S', 'PRODINFO_ATTRIBUTE_OUT_OF_STOCK_MSGLINE', 'True', 'PRODINFO_ATTRIBUTE_OUT_OF_STOCK_MSGLINE_L', '9', '9', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_ACTUAL_PRICE_PULL_DOWN_S', 'PRODINFO_ATTRIBUTE_ACTUAL_PRICE_PULL_DOWN', 'False', 'PRODINFO_ATTRIBUTE_ACTUAL_PRICE_PULL_DOWN_L', '9', '10',NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_DISPLAY_STOCK_LIST_S', 'PRODINFO_ATTRIBUTE_DISPLAY_STOCK_LIST', 'True', 'PRODINFO_ATTRIBUTE_DISPLAY_STOCK_LIST_L', '9', '11', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_NO_ADD_OUT_OF_STOCK_S', 'PRODINFO_ATTRIBUTE_NO_ADD_OUT_OF_STOCK', 'True', 'PRODINFO_ATTRIBUTE_NO_ADD_OUT_OF_STOCK_L', '9', '0', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_SHOW_OUT_OF_STOCK_S', 'PRODINFO_ATTRIBUTE_SHOW_OUT_OF_STOCK', 'true', 'PRODINFO_ATTRIBUTE_SHOW_OUT_OF_STOCK_L', '9', '7', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_MARK_OUT_OF_STOCK_S', 'PRODINFO_ATTRIBUTE_MARK_OUT_OF_STOCK', 'right', 'PRODINFO_ATTRIBUTE_MARK_OUT_OF_STOCK_L', '9', '8', NULL,NOW(), NULL, 'tep_cfg_select_option(array(\'none\', \'right\', \'Left\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_OUT_OF_STOCK_MSGLINE_S', 'PRODINFO_ATTRIBUTE_OUT_OF_STOCK_MSGLINE', 'true', 'PRODINFO_ATTRIBUTE_OUT_OF_STOCK_MSGLINE_L', '9', '9', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_ACTUAL_PRICE_PULL_DOWN_S', 'PRODINFO_ATTRIBUTE_ACTUAL_PRICE_PULL_DOWN', 'false', 'PRODINFO_ATTRIBUTE_ACTUAL_PRICE_PULL_DOWN_L', '9', '10',NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_DISPLAY_STOCK_LIST_S', 'PRODINFO_ATTRIBUTE_DISPLAY_STOCK_LIST', 'true', 'PRODINFO_ATTRIBUTE_DISPLAY_STOCK_LIST_L', '9', '11', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('PRODINFO_ATTRIBUTE_NO_ADD_OUT_OF_STOCK_S', 'PRODINFO_ATTRIBUTE_NO_ADD_OUT_OF_STOCK', 'true', 'PRODINFO_ATTRIBUTE_NO_ADD_OUT_OF_STOCK_L', '9', '0', NULL,NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
## 10 log
@@ -365,28 +365,28 @@
## 15 sessions
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('SESSION_LIFE_ADMIN_S', 'SESSION_LIFE_ADMIN', '25', 'SESSION_LIFE_ADMIN_L.', '15', '1', NOW(), NOW(), NULL, 'tep_cfg_pull_down_num_list(15,60,5,',1);
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('SESSION_LIFE_PUBLIC_S', 'SESSION_LIFE_PUBLIC', '25', 'SESSION_LIFE_PUBLIC_L', '15', '2', NOW(), NOW(), NULL, 'tep_cfg_pull_down_num_list(15,60,5,',3);
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_FORCE_COOKIE_USE_S', 'SESSION_FORCE_COOKIE_USE', 'True', 'SESSION_FORCE_COOKIE_USE_L', '15', '3', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_CHECK_SSL_SESSION_ID_S', 'SESSION_CHECK_SSL_SESSION_ID', 'False', 'SESSION_CHECK_SSL_SESSION_ID_L', '15', '4', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_CHECK_USER_AGENT_S', 'SESSION_CHECK_USER_AGENT', 'False', 'SESSION_CHECK_USER_AGENT_L', '15', '5', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ( 'SESSION_CHECK_IP_ADDRESS_S', 'SESSION_CHECK_IP_ADDRESS', 'False', 'SESSION_CHECK_IP_ADDRESS_L', '15', '6', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_BLOCK_SPIDERS_S', 'SESSION_BLOCK_SPIDERS', 'False', 'SESSION_BLOCK_SPIDERS_L', '15', '7', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_RECREATE_S', 'SESSION_RECREATE', 'False', 'SESSION_RECREATE_L', '15', '8', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_FORCE_COOKIE_USE_S', 'SESSION_FORCE_COOKIE_USE', 'true', 'SESSION_FORCE_COOKIE_USE_L', '15', '3', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_CHECK_SSL_SESSION_ID_S', 'SESSION_CHECK_SSL_SESSION_ID', 'false', 'SESSION_CHECK_SSL_SESSION_ID_L', '15', '4', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_CHECK_USER_AGENT_S', 'SESSION_CHECK_USER_AGENT', 'false', 'SESSION_CHECK_USER_AGENT_L', '15', '5', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ( 'SESSION_CHECK_IP_ADDRESS_S', 'SESSION_CHECK_IP_ADDRESS', 'false', 'SESSION_CHECK_IP_ADDRESS_L', '15', '6', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_BLOCK_SPIDERS_S', 'SESSION_BLOCK_SPIDERS', 'false', 'SESSION_BLOCK_SPIDERS_L', '15', '7', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SESSION_RECREATE_S', 'SESSION_RECREATE', 'false', 'SESSION_RECREATE_L', '15', '8', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
## 16 seo
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('SEO_ENABLED_S', 'SEO_ENABLED', 'true', 'SEO_ENABLED_L', '16', '0', NULL, NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),');
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_ADD_CPATH_TO_PRODUCT_URLS_S', 'SEO_ADD_CPATH_TO_PRODUCT_URLS', 'true', 'SEO_ADD_CPATH_TO_PRODUCT_URLS_L', 16, 1, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_ADD_CAT_PARENT_S', 'SEO_ADD_CAT_PARENT', 'true', 'SEO_ADD_CAT_PARENT_L', 16, 2, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_ADD_CPATH_TO_PRODUCT_URLS_S', 'SEO_ADD_CPATH_TO_PRODUCT_URLS', 'true', 'SEO_ADD_CPATH_TO_PRODUCT_URLS_L', 16, 1, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_ADD_CAT_PARENT_S', 'SEO_ADD_CAT_PARENT', 'true', 'SEO_ADD_CAT_PARENT_L', 16, 2, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_URLS_FILTER_SHORT_WORDS_S', 'SEO_URLS_FILTER_SHORT_WORDS', '3', 'SEO_URLS_FILTER_SHORT_WORDS_L', 16, 3, NOW(), NOW(), NULL, NULL, 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_URLS_USE_W3C_VALID_S', 'SEO_URLS_USE_W3C_VALID', 'true', 'SEO_URLS_USE_W3C_VALID_L', 16, 4, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_GLOBAL_S', 'USE_SEO_CACHE_GLOBAL', 'true', 'USE_SEO_CACHE_GLOBAL_L', 16, 5, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
-INSERT INTO osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ('USE_SEO_CACHE_PRODUCTS_S', 'USE_SEO_CACHE_PRODUCTS', 'true', 'USE_SEO_CACHE_PRODUCTS_L', 16, 6, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_CATEGORIES_S', 'USE_SEO_CACHE_CATEGORIES', 'true', 'USE_SEO_CACHE_CATEGORIES_L', 16, 7, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_TOPICS_S', 'USE_SEO_CACHE_TOPICS', 'true', 'USE_SEO_CACHE_TOPICS_L', 16, 8, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_LINKS_S', 'USE_SEO_CACHE_LINKS', 'true', 'USE_SEO_CACHE_LINKS_L', 16, 9, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_URLS_USE_W3C_VALID_S', 'SEO_URLS_USE_W3C_VALID', 'true', 'SEO_URLS_USE_W3C_VALID_L', 16, 4, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_GLOBAL_S', 'USE_SEO_CACHE_GLOBAL', 'true', 'USE_SEO_CACHE_GLOBAL_L', 16, 5, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
+INSERT INTO osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ('USE_SEO_CACHE_PRODUCTS_S', 'USE_SEO_CACHE_PRODUCTS', 'true', 'USE_SEO_CACHE_PRODUCTS_L', 16, 6, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_CATEGORIES_S', 'USE_SEO_CACHE_CATEGORIES', 'true', 'USE_SEO_CACHE_CATEGORIES_L', 16, 7, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_TOPICS_S', 'USE_SEO_CACHE_TOPICS', 'true', 'USE_SEO_CACHE_TOPICS_L', 16, 8, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'USE_SEO_CACHE_LINKS_S', 'USE_SEO_CACHE_LINKS', 'true', 'USE_SEO_CACHE_LINKS_L', 16, 9, NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_REWRITE_TYPE_S', 'SEO_REWRITE_TYPE', 'Rewrite', 'SEO_REWRITE_TYPE_L', 16, 10, NOW(), NOW(), NULL, 'tep_cfg_select_option_bis(array(''no-rewrite''=>''Pas de rewriting, le htaccess n est pas necessaire'',''Rewrite''=>'' URL: titre-p-12.html'',''Rewrite-mode2''=>'' URL: p/12/titre.html''),', 2);
INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_CHAR_CONVERT_SET_S', 'SEO_CHAR_CONVERT_SET', 'é=>e,è=>e,à=>a,ù=>u,ë=>e,ï=>i,ê=>e,ô=>o,ö=>o,û=>u,â=>a,ñ=>n,ä=>ae,Ä=>Ae,ü=>ue,Ü=>Ue,ö=>oe,Ö=>Oe,ß=>ss', 'SEO_CHAR_CONVERT_SET_L', 16, 11, NOW(), NOW(), NULL, NULL, 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_REMOVE_ALL_SPEC_CHARS_S', 'SEO_REMOVE_ALL_SPEC_CHARS', 'true', 'SEO_REMOVE_ALL_SPEC_CHARS_L', 16, 12, '2010-06-14 14:15:38', '2010-06-14 14:15:38', NULL, 'tep_cfg_select_option(array(''true'', ''false''),', 2);
-INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_URLS_CACHE_RESET_S', 'SEO_URLS_CACHE_RESET', 'false', 'SEO_URLS_CACHE_RESET_L', 16, 13, NOW(), NOW(), 'tep_reset_cache_data_seo_urls', 'tep_cfg_select_option(array(''reset'', ''false''),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_REMOVE_ALL_SPEC_CHARS_S', 'SEO_REMOVE_ALL_SPEC_CHARS', 'true', 'SEO_REMOVE_ALL_SPEC_CHARS_L', 16, 12, '2010-06-14 14:15:38', '2010-06-14 14:15:38', NULL, 'tep_cfg_select_option(array(\'true\', \'false\'),', 2);
+INSERT INTO osc_configuration ( configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) VALUES ( 'SEO_URLS_CACHE_RESET_S', 'SEO_URLS_CACHE_RESET', 'false', 'SEO_URLS_CACHE_RESET_L', 16, 13, NOW(), NOW(), 'tep_reset_cache_data_seo_urls', 'tep_cfg_select_option(array(\'reset\', \'false\'),', 2);
@@ -447,9 +447,9 @@
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALLOW_FILES_RESTORE_S', 'ALLOW_FILES_RESTORE', 'false', 'ALLOW_FILES_RESTORE_L', '24', '4', NOW(), NOW(),'','tep_cfg_select_option(array(\'true\', \'false\'),', '1');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALLOW_SQL_RESTORE_S', 'ALLOW_SQL_RESTORE', 'false', 'ALLOW_SQL_RESTORE_L', '24', '5', NOW(), NOW(), '','tep_cfg_select_option(array(\'true\', \'false\'),', '1');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALLOW_OVERWRITE_MODIFIED_S', 'ALLOW_OVERWRITE_MODIFIED', 'true', 'ALLOW_OVERWRITE_MODIFIED_L', '24', '6', NOW(), NOW(), '','tep_cfg_select_option(array(\'true\', \'false\'),', '1');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALWAYS_DISPLAY_REMOVE_BUTTON_S', 'ALWAYS_DISPLAY_REMOVE_BUTTON', 'false', 'ALWAYS_DISPLAY_REMOVE_BUTTON_L', '24', '7', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ','1');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALWAYS_DISPLAY_INSTALL_BUTTON_S', 'ALWAYS_DISPLAY_INSTALL_BUTTON', 'false', 'ALWAYS_DISPLAY_INSTALL_BUTTON_L', '24', '8', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ', '1');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('USE_LOG_SYSTEM_S', 'USE_LOG_SYSTEM', 'false', 'USE_LOG_SYSTEM_L', '24', '11', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ', '1');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALWAYS_DISPLAY_REMOVE_BUTTON_S', 'ALWAYS_DISPLAY_REMOVE_BUTTON', 'false', 'ALWAYS_DISPLAY_REMOVE_BUTTON_L', '24', '7', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'), ','1');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALWAYS_DISPLAY_INSTALL_BUTTON_S', 'ALWAYS_DISPLAY_INSTALL_BUTTON', 'false', 'ALWAYS_DISPLAY_INSTALL_BUTTON_L', '24', '8', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'), ', '1');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('USE_LOG_SYSTEM_S', 'USE_LOG_SYSTEM', 'false', 'USE_LOG_SYSTEM_L', '24', '11', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(\'true\', \'false\'), ', '1');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('MAX_UPLOADED_FILESIZE_S', 'MAX_UPLOADED_FILESIZE', '524288', 'MAX_UPLOADED_FILESIZE_L', '24', '12', NOW(), NOW(), NULL, NULL, '1');
@@ -461,7 +461,7 @@
## 27 general appearance
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('SHOW_COUNTS_S', 'SHOW_COUNTS', 'false', 'SHOW_COUNTS_L', '27', '0', NULL, NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),', '3');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('NOT_RECUP_CASSE_IN_TXT_CATEGORIES_S', 'NOT_RECUP_CASSE_IN_TXT_CATEGORIES', 'false', 'NOT_RECUP_CASSE_IN_TXT_CATEGORIES_L', '27', '1', NULL, NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'True\', \'False\'),');
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified,date_added, use_function, set_function) values ('NOT_RECUP_CASSE_IN_TXT_CATEGORIES_S', 'NOT_RECUP_CASSE_IN_TXT_CATEGORIES', 'false', 'NOT_RECUP_CASSE_IN_TXT_CATEGORIES_L', '27', '1', NULL, NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
## 28 customer account
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('ACCOUNT_GENDER_S', 'ACCOUNT_GENDER', 'true', 'ACCOUNT_GENDER_L', '28', '0', NULL, NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),');
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-15 14:52:36
|
Revision: 3755
http://oscss.svn.sourceforge.net/oscss/?rev=3755&view=rev
Author: oscim
Date: 2011-06-15 14:52:30 +0000 (Wed, 15 Jun 2011)
Log Message:
-----------
correction coquille
modif valeur d'install par defaut panier loggu?\195?\169
Modified Paths:
--------------
branches/2.1.0/catalog/includes/classes/driver.content.php
branches/2.1.0/catalog/install/oscss_config.sql
Modified: branches/2.1.0/catalog/includes/classes/driver.content.php
===================================================================
--- branches/2.1.0/catalog/includes/classes/driver.content.php 2011-06-14 12:35:17 UTC (rev 3754)
+++ branches/2.1.0/catalog/includes/classes/driver.content.php 2011-06-15 14:52:30 UTC (rev 3755)
@@ -389,7 +389,7 @@
global $language, $page;
$this->name=__CLASS__;
$this->modules=array();
-
+ $list_mod=array();
foreach(parent::initialise_type('MODULE_CONTENT_INSTALLED',$this->name) as $class){
$cl[$class]=new $class ();
$list_mod[$class] = $cl[$class]->sort_order;
Modified: branches/2.1.0/catalog/install/oscss_config.sql
===================================================================
--- branches/2.1.0/catalog/install/oscss_config.sql 2011-06-14 12:35:17 UTC (rev 3754)
+++ branches/2.1.0/catalog/install/oscss_config.sql 2011-06-15 14:52:30 UTC (rev 3755)
@@ -331,7 +331,7 @@
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('DISPLAY_CART_S', 'DISPLAY_CART', 'true', 'DISPLAY_CART_L', '11', '14', NULL, NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),',3);
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function) values ('WHOS_ONLINE_ACTIVE_S', 'WHOS_ONLINE_ACTIVE', 'true', 'WHOS_ONLINE_ACTIVE_L', '11', '5', NOW(), NOW(),NULL, 'tep_cfg_select_option(array(\'true\', \'auto\',\'false\'),');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('LOGIN_SET_SNAPSHOT_S', 'LOGIN_SET_SNAPSHOT', 'true', 'LOGIN_SET_SNAPSHOT_L', '11', '6', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),',3);
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('NO_SHOPPING_CART_FOR_GUEST_S', 'NO_SHOPPING_CART_FOR_GUEST', 'false', 'NO_SHOPPING_CART_FOR_GUEST_L', '11', '6', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),',3);
+insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('NO_SHOPPING_CART_FOR_GUEST_S', 'NO_SHOPPING_CART_FOR_GUEST', 'true', 'NO_SHOPPING_CART_FOR_GUEST_L', '11', '6', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),',3);
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function, configuration_type) values ('ACCOUNT_FORCE_ACTIV_MAIL_S', 'ACCOUNT_FORCE_ACTIV_MAIL', 'false', 'ACCOUNT_FORCE_ACTIV_MAIL_L', '11', '6', NOW(), NOW(), 'tep_value_for_humain', 'tep_cfg_select_option(array(\'true\', \'false\'),',3);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ay...@us...> - 2011-06-14 12:35:23
|
Revision: 3754
http://oscss.svn.sourceforge.net/oscss/?rev=3754&view=rev
Author: ayatus
Date: 2011-06-14 12:35:17 +0000 (Tue, 14 Jun 2011)
Log Message:
-----------
Remplacement capture d'?\195?\169cran template admin
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/template/defaut/theme.xml
branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml
Added Paths:
-----------
branches/2.1.0/catalog/admin/includes/template/defaut/default.png
branches/2.1.0/catalog/admin/includes/template/oscss/oscss.png
Removed Paths:
-------------
branches/2.1.0/catalog/admin/includes/template/defaut/screenshot-1.jpg
branches/2.1.0/catalog/admin/includes/template/oscss/screenshot-1.jpg
Added: branches/2.1.0/catalog/admin/includes/template/defaut/default.png
===================================================================
(Binary files differ)
Property changes on: branches/2.1.0/catalog/admin/includes/template/defaut/default.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Deleted: branches/2.1.0/catalog/admin/includes/template/defaut/screenshot-1.jpg
===================================================================
(Binary files differ)
Modified: branches/2.1.0/catalog/admin/includes/template/defaut/theme.xml
===================================================================
--- branches/2.1.0/catalog/admin/includes/template/defaut/theme.xml 2011-06-14 12:16:24 UTC (rev 3753)
+++ branches/2.1.0/catalog/admin/includes/template/defaut/theme.xml 2011-06-14 12:35:17 UTC (rev 3754)
@@ -1,10 +1,10 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<template>
<name>default</name>
<version>1</version>
<author>oscss</author>
<desc>...</desc>
- <thumb>screenshot-1.jpg</thumb>
+ <thumb>default.png</thumb>
<ui_theme_admin>overcast</ui_theme_admin>
<ui_theme_vendor>black-tie</ui_theme_vendor>
</template>
Added: branches/2.1.0/catalog/admin/includes/template/oscss/oscss.png
===================================================================
(Binary files differ)
Property changes on: branches/2.1.0/catalog/admin/includes/template/oscss/oscss.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Deleted: branches/2.1.0/catalog/admin/includes/template/oscss/screenshot-1.jpg
===================================================================
(Binary files differ)
Modified: branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml
===================================================================
--- branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml 2011-06-14 12:16:24 UTC (rev 3753)
+++ branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml 2011-06-14 12:35:17 UTC (rev 3754)
@@ -1,10 +1,10 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<template>
<name>oscss</name>
<version>1</version>
<author>oscss</author>
<desc>...</desc>
- <thumb>screenshot-1.jpg</thumb>
+ <thumb>oscss.png</thumb>
<ui_theme_admin>smoothness</ui_theme_admin>
<ui_theme_vendor>black-tie</ui_theme_vendor>
</template>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ay...@us...> - 2011-06-14 12:16:31
|
Revision: 3753
http://oscss.svn.sourceforge.net/oscss/?rev=3753&view=rev
Author: ayatus
Date: 2011-06-14 12:16:24 +0000 (Tue, 14 Jun 2011)
Log Message:
-----------
Utilisation de SimpleXml pour la description des templates admin.
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab
branches/2.1.0/catalog/admin/includes/gabarit/cfg_29.listing.gab
branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/configuration/cfg_29.txt
branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php
branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php
branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml
Modified: branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab 2011-06-13 16:56:12 UTC (rev 3752)
+++ branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab 2011-06-14 12:16:24 UTC (rev 3753)
@@ -9,7 +9,6 @@
@encode UTF-8
@brief content admin account detail
*/
-global $current_theme;
?>
<h3><?php echo __('heading title'); ?></h3>
<div class="block_form">
@@ -48,20 +47,17 @@
</div>
</div>
- <div id="tabs-2" class="tabPage">
+ <div id="tabs-2" class="tabPage">
<?php echo tep_draw_form('menutheme', adminAccount::FILENAME, '', 'get', ' ') ?>
<fieldset class="block_field">
<legend><?php echo __('choix du theme de votre environement');?></legend>
- <ul class="block_input">
- <?php foreach(oscss_list_templates_admin() as $theme) :?>
- <?php if($current_theme == $theme['id']): ?>
- <li style="border-bottom:2px solid black" class="inline"><a href="<?php echo DIR_WS_INCLUDES.'template/'.$theme['id'].'/screenshot-1.jpg" class="fancy" rel="template" title="'.$theme['text'].'" >'. tep_image(DIR_WS_INCLUDES . "template/".$theme['id'].'/screenshot-1.jpg',$theme['text'], 150); ?></a><br/><input type="radio" name="menu_theme" value="<?php echo $theme['id'] ?>" checked="checked"/> <?php echo $theme['text']; ?> </li>
- <?php else: ?>
- <li class="inline"><a href="<?php echo DIR_WS_INCLUDES.'template/'.$theme['id'].'/screenshot-1.jpg" class="fancy" rel="template" title="'.$theme['id'].'" >'. tep_image(DIR_WS_INCLUDES . "template/".$theme['id'].'/screenshot-1.jpg',$theme['text'], 150); ?></a><br/><input type="radio" name="menu_theme" value="<?php echo $theme['id'] ?>" onchange="this.form.submit();" /> <?php echo $theme['text']; ?> </li>
- <?php endif; ?>
+ <?php foreach(adminAccount::theme_xml('') as $theme) :?>
+ <ul class="inline">
+ <li style="display:block"><?php echo unhtmlentities($theme->picture) ?></li>
+ <li><?php echo unhtmlentities($theme->statut) ?></li>
+ <li><?php echo unhtmlentities($theme->id) ?></li>
+ </ul>
<?php endforeach; ?>
- </ul>
-
</fieldset>
</form>
<div class="separator"></div>
Modified: branches/2.1.0/catalog/admin/includes/gabarit/cfg_29.listing.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/cfg_29.listing.gab 2011-06-13 16:56:12 UTC (rev 3752)
+++ branches/2.1.0/catalog/admin/includes/gabarit/cfg_29.listing.gab 2011-06-14 12:16:24 UTC (rev 3753)
@@ -17,6 +17,7 @@
<thead>
<tr>
<th class="tcenter"><?php echo __('table heading name') ?></th>
+ <th class="tcenter"><?php echo __('table heading version') ?></th>
<th class="tcenter"><?php echo __('table heading author') ?></th>
<th class="tcenter"><?php echo __('table heading desc') ?></th>
<th class="tcenter"><?php echo __('table heading preview') ?></th>
@@ -27,6 +28,7 @@
<?php foreach (cfg_29::$list as $theme): ?>
<tr>
+ <td class="tcenter"><?php echo $theme->id ?></td>
<td class="tcenter"><?php echo $theme->version ?></td>
<td class="tcenter"><?php echo $theme->author ?></td>
<td class="tcenter"><?php echo $theme->desc ?></td>
Modified: branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/configuration/cfg_29.txt
===================================================================
--- branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/configuration/cfg_29.txt 2011-06-13 16:56:12 UTC (rev 3752)
+++ branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/configuration/cfg_29.txt 2011-06-14 12:16:24 UTC (rev 3753)
@@ -10,7 +10,7 @@
$lang['template public']= 'Gestionnaire de templates';
//$lang['heading options title']= 'Options du template';
$lang['table heading name']= 'Nom';
-//$lang['table heading version']= 'Version';
+ $lang['table heading version']= 'Version';
$lang['table heading author']= 'Auteur';
$lang['table heading desc']= 'Description';
$lang['table heading preview']= 'Aperçu';
Modified: branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php 2011-06-13 16:56:12 UTC (rev 3752)
+++ branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php 2011-06-14 12:16:24 UTC (rev 3753)
@@ -93,7 +93,7 @@
$template_infos = @simplexml_load_file($file);
if (!empty($template_infos->thumb) && file_exists(DIR_FS_TEMPLATES.$theme.'/'.$template_infos->thumb)) {
- $picture = '<a href="'. DIR_WS_TEMPLATES.$theme.'/'.$template_infos->thumb.'" class="fancy" rel="template" title="'.$theme.' / '.$template_infos->desc.' (v'.$template_infos->version.') by '.$template_infos->author.'" >'.tep_image(DIR_WS_TEMPLATES.$theme . '/' . $template_infos->thumb, $theme, SMALL_IMAGE_WIDTH).'</a>';
+ $picture = '<a href="'. DIR_WS_TEMPLATES.$theme.'/'.$template_infos->thumb.'" class="fancy" rel="template" title="'.$theme.' / '.$template_infos->desc.' ('.__('version').' : '.$template_infos->version.') '.__('by ').$template_infos->author.'" >'.tep_image(DIR_WS_TEMPLATES.$theme . '/' . $template_infos->thumb, $theme, SMALL_IMAGE_WIDTH).'</a>';
} else $picture = __('text no preview');
if ($theme == TEMPLATE_NAME ) {
@@ -106,8 +106,8 @@
} else $statut = '<a href="'.tep_href_link( FILENAME_CONFIGURATION , tep_get_all_get_params(array('action','forceview','theme')). 'action=set&theme='.$theme ).'" >' . tep_image(DIR_WS_ICONS . 'icon_status_green_light.gif', IMAGE_ICON_STATUS_GREEN_LIGHT) . '</a>';
$array=array(
- 'version'=>$theme,
- 'id'=>$template_infos->version,
+ 'id'=>$theme,
+ 'version'=>$template_infos->version,
'author'=>tep_output_string_protected($template_infos->author, true, false),
'desc'=>tep_output_string_protected($template_infos->desc, true, false),
'picture'=>tep_output_string_protected($picture, true, false),
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php 2011-06-13 16:56:12 UTC (rev 3752)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php 2011-06-14 12:16:24 UTC (rev 3753)
@@ -208,8 +208,37 @@
}
}
+ public static function theme_xml($Id){
+ global $current_theme;
+ $liste=array();
+ foreach(oscss_list_templates_admin() as $theme){
+ if ( file_exists(DIR_FS_ADMIN . DIR_WS_INCLUDES.'template/' . $theme['id'] .'/theme.xml') ) {
+ $file = DIR_FS_ADMIN . DIR_WS_INCLUDES.'template/' . $theme['id'] .'/theme.xml' ;
+ $template_infos = @simplexml_load_file($file);
+ if (!empty($template_infos->thumb) && file_exists(DIR_FS_ADMIN . DIR_WS_INCLUDES.'template/'.$theme['id'].'/'.$template_infos->thumb)) {
+ $picture = '<a href="'. DIR_WS_INCLUDES.'template/'.$theme['id'].'/'.$template_infos->thumb.'" class="fancy" rel="template" title="'.$template_infos->name.' / '.$template_infos->desc.' ('.__('version').' : '.$template_infos->version.') '.__('by ').$template_infos->author.'" >'.tep_image(DIR_WS_INCLUDES.'template/'.$theme['id'] . '/' . $template_infos->thumb, $template_infos->name, 150).'</a>';
+ } else $picture = __('text no preview');
+ if ($theme['id'] == $current_theme) $statut = '<input type="radio" name="menu_theme" value="'.$theme['id'].'" checked="checked"/>';
+ else $statut = '<input type="radio" name="menu_theme" value="'.$theme['id'].'" onchange="this.form.submit();"/>';
+
+ $array=array(
+ 'id'=>$theme['id'],
+ 'version'=>tep_output_string_protected($template_infos->version, true, false),
+ 'author'=>tep_output_string_protected($template_infos->author, true, false),
+ 'desc'=>tep_output_string_protected($template_infos->desc, true, false),
+ 'picture'=>tep_output_string_protected($picture, true, false),
+ 'statut'=>tep_output_string_protected($statut, true, false),
+ );
+ $liste[]= new objectInfo($array);
+ }
+ }
+ //var_dump ($current_theme);
+ return $liste;
+ }
+
+
/** Interface module */
function check() { return false; }
Modified: branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml
===================================================================
--- branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml 2011-06-13 16:56:12 UTC (rev 3752)
+++ branches/2.1.0/catalog/admin/includes/template/oscss/theme.xml 2011-06-14 12:16:24 UTC (rev 3753)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<template>
- <name>default</name>
+ <name>oscss</name>
<version>1</version>
<author>oscss</author>
<desc>...</desc>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ay...@us...> - 2011-06-13 16:56:19
|
Revision: 3752
http://oscss.svn.sourceforge.net/oscss/?rev=3752&view=rev
Author: ayatus
Date: 2011-06-13 16:56:12 +0000 (Mon, 13 Jun 2011)
Log Message:
-----------
Utilisation de Fancy Box pour la pr?\195?\169sentation des vignettes de template dans l'admin.
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab
branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php
branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php
Modified: branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab 2011-06-09 06:11:01 UTC (rev 3751)
+++ branches/2.1.0/catalog/admin/includes/gabarit/adminAccount.page.gab 2011-06-13 16:56:12 UTC (rev 3752)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 10/04/11, 17:58
+ @date 13/06/11, 18:20
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@brief content admin account detail
@@ -24,59 +24,59 @@
<div id="tabs-1" class="tabPage">
<div >
- <?php
- if ((adminAccount::$myAccount->admin_lognum <= 1) ) printf(__('text info intro default first time'), adminAccount::$myAccount->admin_firstname);
+ <?php
+ if ((adminAccount::$myAccount->admin_lognum <= 1) ) printf(__('text info intro default first time'), adminAccount::$myAccount->admin_firstname);
- /* Liens d'initalisation du menu */
- echo '<br /><br />'.__('init menu admin').' <a class="button" href="'.tep_href_link(FILENAME_ADMIN_ACCOUNT,'action=init_menu').'">'.__('image init menu').'</a><br /><br />';
- ?>
+ /* Liens d'initalisation du menu */
+ echo '<br /><br />'.__('init menu admin').' <a class="button" href="'.tep_href_link(FILENAME_ADMIN_ACCOUNT,'action=init_menu').'">'.__('image init menu').'</a><br /><br />';
+ ?>
- <h4><?php echo __(' Choix du la langue votre environement');?></h4>
- <?php echo tep_draw_form('languages', adminAccount::FILENAME, '', 'get') ?>
- <p><?php echo tep_draw_pull_down_menu('language', language::ArrayPullDown(false, false), language::LangueSelected(), 'onchange="this.form.submit();"')?></p>
- </form>
+ <h4><?php echo __(' Choix du la langue votre environement');?></h4>
+ <?php echo tep_draw_form('languages', adminAccount::FILENAME, '', 'get') ?>
+ <p><?php echo tep_draw_pull_down_menu('language', language::ArrayPullDown(false, false), language::LangueSelected(), 'onchange="this.form.submit();"')?></p>
+ </form>
- <h4><?php echo __('text heading cookie');?></h4>
- <p><?php echo __('text detail cookie');?></p>
+ <h4><?php echo __('text heading cookie');?></h4>
+ <p><?php echo __('text detail cookie');?></p>
- <?php echo tep_draw_form('cookie_correps', adminAccount::FILENAME, 'action=cookie', 'post') ?>
- <p><?php echo tep_image_submit('', ((adminAccount::$myAccount->cookieCorress)? __('cookie inactive') : __('cookie active')) ) ?></p>
- </form>
+ <?php echo tep_draw_form('cookie_correps', adminAccount::FILENAME, 'action=cookie', 'post') ?>
+ <p><?php echo tep_image_submit('', ((adminAccount::$myAccount->cookieCorress)? __('cookie inactive') : __('cookie active')) ) ?></p>
+ </form>
- <div class="separator"></div>
+ <div class="separator"></div>
</div>
</div>
<div id="tabs-2" class="tabPage">
- <?php echo tep_draw_form('menutheme', adminAccount::FILENAME, '', 'get', ' ') ?>
- <fieldset class="block_field">
- <legend><?php echo __('choix du theme de votre environement');?></legend>
- <ul class="block_input">
- <?php foreach(oscss_list_templates_admin() as $theme) :?>
- <?php if($current_theme == $theme['id']): ?>
- <li style="border-bottom:2px solid black" class="inline"><?php echo tep_image(DIR_WS_INCLUDES . "template/".$theme['id'].'/screenshot-1.jpg',$theme['text'], 150); ?><br/><input type="radio" name="menu_theme" value="<?php echo $theme['id'] ?>" checked="checked"/> <?php echo $theme['text']; ?> </li>
- <?php else: ?>
- <li class="inline"><?php echo tep_image(DIR_WS_INCLUDES . "template/".$theme['id'].'/screenshot-1.jpg',$theme['text'], 150); ?><br/><input type="radio" name="menu_theme" value="<?php echo $theme['id'] ?>" onchange="this.form.submit();" /> <?php echo $theme['text']; ?> </li>
- <?php endif; ?>
- <?php endforeach; ?>
- </ul>
+ <?php echo tep_draw_form('menutheme', adminAccount::FILENAME, '', 'get', ' ') ?>
+ <fieldset class="block_field">
+ <legend><?php echo __('choix du theme de votre environement');?></legend>
+ <ul class="block_input">
+ <?php foreach(oscss_list_templates_admin() as $theme) :?>
+ <?php if($current_theme == $theme['id']): ?>
+ <li style="border-bottom:2px solid black" class="inline"><a href="<?php echo DIR_WS_INCLUDES.'template/'.$theme['id'].'/screenshot-1.jpg" class="fancy" rel="template" title="'.$theme['text'].'" >'. tep_image(DIR_WS_INCLUDES . "template/".$theme['id'].'/screenshot-1.jpg',$theme['text'], 150); ?></a><br/><input type="radio" name="menu_theme" value="<?php echo $theme['id'] ?>" checked="checked"/> <?php echo $theme['text']; ?> </li>
+ <?php else: ?>
+ <li class="inline"><a href="<?php echo DIR_WS_INCLUDES.'template/'.$theme['id'].'/screenshot-1.jpg" class="fancy" rel="template" title="'.$theme['id'].'" >'. tep_image(DIR_WS_INCLUDES . "template/".$theme['id'].'/screenshot-1.jpg',$theme['text'], 150); ?></a><br/><input type="radio" name="menu_theme" value="<?php echo $theme['id'] ?>" onchange="this.form.submit();" /> <?php echo $theme['text']; ?> </li>
+ <?php endif; ?>
+ <?php endforeach; ?>
+ </ul>
- </fieldset>
- </form>
+ </fieldset>
+ </form>
<div class="separator"></div>
</div>
<div id="tabs-8" class="tabPage">
<div class="block_field">
- <h4><?php echo __('heading tools links user') ?></h4>
+ <h4><?php echo __('heading tools links user') ?></h4>
- <p class="block_input"><?php echo __('rss tools links user'); ?></p>
- <ul class="block_input">
- <?php foreach(scan(DIR_WS_INCLUDES.'rss/') as $item): if(substr($item, -3) =='php') : ?>
- <li><a href="<?php echo tep_href_link('rss.php','box='.substr($item,0, -4)) ; ?>"> <?php echo tep_href_link('rss.php','box='.substr($item,0, -4)) ?></a></li>
- <?php endif; endforeach; ?>
- </ul>
- <div class="separator"></div>
+ <p class="block_input"><?php echo __('rss tools links user'); ?></p>
+ <ul class="block_input">
+ <?php foreach(scan(DIR_WS_INCLUDES.'rss/') as $item): if(substr($item, -3) =='php') : ?>
+ <li><a href="<?php echo tep_href_link('rss.php','box='.substr($item,0, -4)) ; ?>"> <?php echo tep_href_link('rss.php','box='.substr($item,0, -4)) ?></a></li>
+ <?php endif; endforeach; ?>
+ </ul>
+ <div class="separator"></div>
</div>
</div>
Modified: branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php 2011-06-09 06:11:01 UTC (rev 3751)
+++ branches/2.1.0/catalog/admin/includes/modules/configuration/cfg_29.php 2011-06-13 16:56:12 UTC (rev 3752)
@@ -1,10 +1,10 @@
<?php
/**
- @licence GPL 2005-2010 The osCSS developers - osCSS Open Source E-commerce
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
- @version 2.0.9
- @date 23/06/10, 17:33
+ @version 2.1.0
+ @date 13/06/11, 18:20
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@class cfg_29
@@ -43,41 +43,41 @@
if (tep_not_null($action)) {
switch ($action) {
- case 'set':
- if (isset($_GET['theme'])) {
- $template = tep_db_prepare_input($_GET['theme']);
+ case 'set':
+ if (isset($_GET['theme'])) {
+ $template = tep_db_prepare_input($_GET['theme']);
- // on verifie qu'il ya bien un fichier template.php
- if (!file_exists(DIR_FS_TEMPLATES . $template .'/template.php') ) {
- $messageStack->add_session(__('error files doesnt exist'), 'error');
- }else {
- $template_query = $DB->query("UPDATE ".TABLE_CONFIGURATION ." set configuration_value = '".$template."' where configuration_key = 'TEMPLATE_NAME'");
- $messageStack->add_session(__('succes new template activated'), 'success');
- }
- //! reset cache sys public
- osCSS_Cache::clear('plugins');
- osCSS_Cache::clear('Global');
- osCSS_Cache::clear('fo_lang');
- }
- tep_redirect(tep_href_link(FILENAME_CONFIGURATION, tep_get_all_get_params(array('action'), false) ));
- break;
- case 'insert':
- if ($new_template = new upload('new_template', DIR_FS_TEMPLATES)) {
- tep_zip_extractto(DIR_FS_TEMPLATES.$new_template->filename,DIR_FS_TEMPLATES);
- tep_remove(DIR_FS_TEMPLATES.$new_template->filename);
- }
- tep_redirect(tep_href_link(FILENAME_CONFIGURATION, tep_get_all_get_params(array('action'), false) ));
- break;
- case 'cfg':
- //! reset conf des plugin
- ResetConfigKey('PLUGIN_ACCOUNT_INSTALLED');
- ResetConfigKey('PLUGIN_GENERIC_INSTALLED');
- ResetConfigKey('PLUGIN_HOME_INSTALLED');
- ResetConfigKey('PLUGIN_LISTING_INSTALLED');
- ResetConfigKey('PLUGIN_PRODUCT_INSTALLED');
+ // on verifie qu'il ya bien un fichier template.php
+ if (!file_exists(DIR_FS_TEMPLATES . $template .'/template.php') ) {
+ $messageStack->add_session(__('error files doesnt exist'), 'error');
+ }else {
+ $template_query = $DB->query("UPDATE ".TABLE_CONFIGURATION ." set configuration_value = '".$template."' where configuration_key = 'TEMPLATE_NAME'");
+ $messageStack->add_session(__('succes new template activated'), 'success');
+ }
+ //! reset cache sys public
+ osCSS_Cache::clear('plugins');
+ osCSS_Cache::clear('Global');
+ osCSS_Cache::clear('fo_lang');
+ }
+ tep_redirect(tep_href_link(FILENAME_CONFIGURATION, tep_get_all_get_params(array('action'), false) ));
+ break;
+ case 'insert':
+ if ($new_template = new upload('new_template', DIR_FS_TEMPLATES)) {
+ tep_zip_extractto(DIR_FS_TEMPLATES.$new_template->filename,DIR_FS_TEMPLATES);
+ tep_remove(DIR_FS_TEMPLATES.$new_template->filename);
+ }
+ tep_redirect(tep_href_link(FILENAME_CONFIGURATION, tep_get_all_get_params(array('action'), false) ));
+ break;
+ case 'cfg':
+ //! reset conf des plugin
+ ResetConfigKey('PLUGIN_ACCOUNT_INSTALLED');
+ ResetConfigKey('PLUGIN_GENERIC_INSTALLED');
+ ResetConfigKey('PLUGIN_HOME_INSTALLED');
+ ResetConfigKey('PLUGIN_LISTING_INSTALLED');
+ ResetConfigKey('PLUGIN_PRODUCT_INSTALLED');
- $this->config_template($_GET['theme']);
- break;
+ $this->config_template($_GET['theme']);
+ break;
}
}
}
@@ -93,27 +93,27 @@
$template_infos = @simplexml_load_file($file);
if (!empty($template_infos->thumb) && file_exists(DIR_FS_TEMPLATES.$theme.'/'.$template_infos->thumb)) {
- $picture = '<a href="'. DIR_WS_TEMPLATES.$theme.'/'.$template_infos->thumb.'" class="fancy" rel="template" title="'.$theme.' / '.$template_infos->desc.' (v'.$template_infos->version.') by '.$template_infos->author.'" ><img src="'.DIR_WS_TEMPLATES.$theme . '/' . $template_infos->thumb.'" width="60" alt="'.$theme.'" /></a>';
+ $picture = '<a href="'. DIR_WS_TEMPLATES.$theme.'/'.$template_infos->thumb.'" class="fancy" rel="template" title="'.$theme.' / '.$template_infos->desc.' (v'.$template_infos->version.') by '.$template_infos->author.'" >'.tep_image(DIR_WS_TEMPLATES.$theme . '/' . $template_infos->thumb, $theme, SMALL_IMAGE_WIDTH).'</a>';
} else $picture = __('text no preview');
if ($theme == TEMPLATE_NAME ) {
$statut = tep_image(DIR_WS_ICONS . 'icon_status_green.gif', IMAGE_ICON_STATUS_GREEN);
if ( file_exists(DIR_FS_TEMPLATES . $theme .'/cfg/configuration.php') )
- $statut .= ' <a href="'.tep_href_link(FILENAME_CONFIGURATION , tep_get_all_get_params(array('action','forceview','theme')) .'forceview&action=cfg&theme='.$theme ).'" class="fancy iframe" title="'.__('configuration automatique').'">' . tep_image(DIR_WS_ICONS . 'icon_info.gif') . '</a>';
+ $statut .= ' <a href="'.tep_href_link(FILENAME_CONFIGURATION , tep_get_all_get_params(array('action','forceview','theme')) .'forceview&action=cfg&theme='.$theme ).'" class="fancy iframe" title="'.__('configuration automatique').'">' . tep_image(DIR_WS_ICONS . 'icon_info.gif') . '</a>';
- $statut .= ' <a href="'.tep_href_link(FILENAME_PLUGINS ).'">' .__('plugins du theme'). '</a>';
+ $statut .= ' <a href="'.tep_href_link(FILENAME_PLUGINS ).'">' .__('plugins du theme'). '</a>';
} else $statut = '<a href="'.tep_href_link( FILENAME_CONFIGURATION , tep_get_all_get_params(array('action','forceview','theme')). 'action=set&theme='.$theme ).'" >' . tep_image(DIR_WS_ICONS . 'icon_status_green_light.gif', IMAGE_ICON_STATUS_GREEN_LIGHT) . '</a>';
- $array=array(
- 'version'=>$theme,
- 'id'=>$template_infos->version,
- 'author'=>tep_output_string_protected($template_infos->author, true, false),
- 'desc'=>tep_output_string_protected($template_infos->desc, true, false),
- 'picture'=>tep_output_string_protected($picture, true, false),
- 'statut'=>tep_output_string_protected($statut, true, false),
- );
- $liste[]= new objectInfo($array);
+ $array=array(
+ 'version'=>$theme,
+ 'id'=>$template_infos->version,
+ 'author'=>tep_output_string_protected($template_infos->author, true, false),
+ 'desc'=>tep_output_string_protected($template_infos->desc, true, false),
+ 'picture'=>tep_output_string_protected($picture, true, false),
+ 'statut'=>tep_output_string_protected($statut, true, false),
+ );
+ $liste[]= new objectInfo($array);
}
}
return $liste;
@@ -124,12 +124,13 @@
*/
public static function draw_header(){
tep_include_file ("includes/javascript/jquery.mousewheel-3.0.2.pack.js",true);
- print '<script type="text/javascript"><!--'."\n".
- '$(function() {'."\n".
- '$("a.fancy").fancybox({\'hideOnContentClick\': true, \'overlayOpacity\': 0.6, \'titlePosition\': \'inside\'});'."\n".
- '});'."\n".
- '// --></script>'."\n";
-
+ ?>
+<script type="text/javascript"><!--
+ $(function() {
+ $("a.fancy").fancybox({'hideOnContentClick': true, 'overlayOpacity': 0.6, 'titlePosition': 'inside'});
+ });
+// --></script>
+ <?php ;
}
/**
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php 2011-06-09 06:11:01 UTC (rev 3751)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/adminAccount.php 2011-06-13 16:56:12 UTC (rev 3752)
@@ -4,7 +4,7 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 10/04/11, 18:01
+ @date 13/06/11, 18:20
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@class adminAccount
@@ -65,78 +65,86 @@
switch(self::$action){
case 'check_password':
- $check_pass_query = $DB->query("select admin_password as confirm_password from " . TABLE_ADMIN . " where admin_id = '" . $_POST['id_info'] . "'");
- $check_pass = $check_pass_query->fetchAssoc();
+ $check_pass_query = $DB->query("select admin_password as confirm_password from " . TABLE_ADMIN . " where admin_id = '" . $_POST['id_info'] . "'");
+ $check_pass = $check_pass_query->fetchAssoc();
- // Check that password is good
- if (!tep_validate_password($_POST['password_confirmation'], $check_pass['confirm_password'])) {
- tep_redirect(tep_href_link(self::FILENAME, 'action=check_account&error=password'));
- } else {
- //$confirm = 'confirm_account';
- tep_session_register('confirm_account');
- tep_redirect(tep_href_link(self::FILENAME, 'action=edit_member'));
- }
+ // Check that password is good
+ if (!tep_validate_password($_POST['password_confirmation'], $check_pass['confirm_password'])) {
+ tep_redirect(tep_href_link(self::FILENAME, 'action=check_account&error=password'));
+ } else {
+ //$confirm = 'confirm_account';
+ tep_session_register('confirm_account');
+ tep_redirect(tep_href_link(self::FILENAME, 'action=edit_member'));
+ }
break;
case 'edit_member':
- parent::$url_redirect=self::FILENAME;
+ parent::$url_redirect=self::FILENAME;
break;
case 'member_edit':
- parent::$url_redirect=self::FILENAME;
- parent::check_action(self::$action);
+ parent::$url_redirect=self::FILENAME;
+ parent::check_action(self::$action);
break;
case 'update_password':
- $pass0= tep_db_prepare_input($_POST['password_']);
- $pass1= tep_db_prepare_input($_POST['password_confirmation']);
+ $pass0= tep_db_prepare_input($_POST['password_']);
+ $pass1= tep_db_prepare_input($_POST['password_confirmation']);
- if(strcmp($pass0,$pass1)==0){
- $DB->query("update " . TABLE_ADMIN . " set admin_password='".tep_encrypt_password($pass0)."' where admin_id = '" . $_POST['id_info'] . "'");
+ if(strcmp($pass0,$pass1)==0){
+ $DB->query("update " . TABLE_ADMIN . " set admin_password='".tep_encrypt_password($pass0)."' where admin_id = '" . $_POST['id_info'] . "'");
- $_query = $DB->query("select * from " . TABLE_ADMIN . " where admin_id = '" . $_POST['id_info'] . "'");
- $res = $_query->fetchAssoc();
+ $_query = $DB->query("select * from " . TABLE_ADMIN . " where admin_id = '" . $_POST['id_info'] . "'");
+ $res = $_query->fetchAssoc();
$myarray = array(
'email_use_html'=>(bool)_cst_bool('EMAIL_USE_HTML'),
'links'=>HTTP_SERVER . DIR_WS_ADMIN,
'admin_firstname'=>$res['admin_firstname'],
'admin_email_address'=>$res['admin_email_address'],
- 'url_openid'=>$res['url_openid'],
+ 'url_openid'=>$res['url_openid'],
'hiddenPassword'=>$pass0,
'message'=>''
);
$message_final=tep_post_prepare_email('admin_members.tpl',$language,$myarray);
tep_mail($_POST['admin_firstname'] . ' ' . $res['admin_lastname'], $res['admin_email_address'],__('email text subject'), $message_final);
- $messageStack->add_session(__('new password update'), 'success');
- tep_redirect(tep_href_link(self::FILENAME));
- }
- else {
- $messageStack->add_session(__('new password not equal'), 'error');
- tep_redirect(tep_href_link(self::FILENAME, 'action=update_pass'));
- }
+ $messageStack->add_session(__('new password update'), 'success');
+ tep_redirect(tep_href_link(self::FILENAME));
+ }
+ else {
+ $messageStack->add_session(__('new password not equal'), 'error');
+ tep_redirect(tep_href_link(self::FILENAME, 'action=update_pass'));
+ }
break;
case 'init_menu':
- $menu=menu::resetInstance();
- $menu->cstr_return(array('for_user'=>'1'));
- tep_redirect(tep_href_link(self::FILENAME));
+ $menu=menu::resetInstance();
+ $menu->cstr_return(array('for_user'=>'1'));
+ tep_redirect(tep_href_link(self::FILENAME));
break;
case 'cookie':
- if(isset($_COOKIE['oscss_admin']) && $_COOKIE['oscss_admin']=== $_SESSION['login_id'] )
- setcookie('oscss_admin', '' ,-9999, DIR_WS_CATALOG);
- else
- setcookie('oscss_admin', $_SESSION['login_id'] ,0, DIR_WS_CATALOG);
+ if(isset($_COOKIE['oscss_admin']) && $_COOKIE['oscss_admin']=== $_SESSION['login_id'] )
+ setcookie('oscss_admin', '' ,-9999, DIR_WS_CATALOG);
+ else
+ setcookie('oscss_admin', $_SESSION['login_id'] ,0, DIR_WS_CATALOG);
- tep_redirect(tep_href_link(self::FILENAME));
+ tep_redirect(tep_href_link(self::FILENAME));
break;
default:
- self::$myAccount=parent::load_db_values($_SESSION['login_id']);
- self::$myAccount->cookieCorress = ((isset($_COOKIE['oscss_admin']) && $_COOKIE['oscss_admin']=== $_SESSION['login_id'] )? true : false);
+ self::$myAccount=parent::load_db_values($_SESSION['login_id']);
+ self::$myAccount->cookieCorress = ((isset($_COOKIE['oscss_admin']) && $_COOKIE['oscss_admin']=== $_SESSION['login_id'] )? true : false);
}
}
public function get_header(){
+ tep_include_file ("includes/javascript/jquery.mousewheel-3.0.2.pack.js",true);
+ ?>
+<script type="text/javascript"><!--
+ $(function() {
+ $("a.fancy").fancybox({'hideOnContentClick': true, 'overlayOpacity': 0.6, 'titlePosition': 'inside'});
+ });
+// --></script>
+ <?php ;
parent::get_header(self::$action);
}
@@ -151,7 +159,7 @@
public function display_view(){
switch(self::$action){
default:
- return tep_get_include_contents(__CLASS__.'.page');
+ return tep_get_include_contents(__CLASS__.'.page');
}
}
@@ -161,37 +169,37 @@
switch(self::$action){
case 'check_account':
- $heading[] = array('text' => __('text info heading default') );
- $contents = array('form' => tep_draw_form('edit', self::FILENAME, 'action=check_password', 'post'));
- $contents[] = array('text' => '<label for="password_confirmation">' . __('text info intro confirm password') . '</label>' . tep_draw_password_field('password_confirmation') . tep_draw_hidden_field('id_info', '', self::$myAccount->admin_id) );
- $contents[] = array('class' => 'button_nav', 'text' => tep_image_submit('button_delete.gif', __('image valider')) . ' <a class="button" href="' . tep_href_link(self::FILENAME) . '">' . IMAGE_CANCEL . '</a>');
+ $heading[] = array('text' => __('text info heading default') );
+ $contents = array('form' => tep_draw_form('edit', self::FILENAME, 'action=check_password', 'post'));
+ $contents[] = array('text' => '<label for="password_confirmation">' . __('text info intro confirm password') . '</label>' . tep_draw_password_field('password_confirmation') . tep_draw_hidden_field('id_info', '', self::$myAccount->admin_id) );
+ $contents[] = array('class' => 'button_nav', 'text' => tep_image_submit('button_delete.gif', __('image valider')) . ' <a class="button" href="' . tep_href_link(self::FILENAME) . '">' . IMAGE_CANCEL . '</a>');
break;
case 'update_pass':
- $heading[] = array('text' => __('text info heading default') );
- $contents = array('form' => tep_draw_form('edit', self::FILENAME, 'action=update_password', 'post'));
- $contents[] = array('text' => '<label for="password_confirmation">' . __('text info intro new password') . '</label>' .
- tep_draw_password_field('password_') .
- tep_draw_password_field('password_confirmation') .
- tep_draw_hidden_field('id_info', '', self::$myAccount->admin_id)
- );
- $contents[] = array('class' => 'button_nav', 'text' => tep_image_submit('button_delete.gif', __('image valider')) . ' <a class="button" href="' . tep_href_link(self::FILENAME) . '">' . IMAGE_CANCEL . '</a>');
+ $heading[] = array('text' => __('text info heading default') );
+ $contents = array('form' => tep_draw_form('edit', self::FILENAME, 'action=update_password', 'post'));
+ $contents[] = array('text' => '<label for="password_confirmation">' . __('text info intro new password') . '</label>' .
+ tep_draw_password_field('password_') .
+ tep_draw_password_field('password_confirmation') .
+ tep_draw_hidden_field('id_info', '', self::$myAccount->admin_id)
+ );
+ $contents[] = array('class' => 'button_nav', 'text' => tep_image_submit('button_delete.gif', __('image valider')) . ' <a class="button" href="' . tep_href_link(self::FILENAME) . '">' . IMAGE_CANCEL . '</a>');
break;
default:
- parent::$action=self::$action;
- parent::$mInfo=parent::load_db_values($_SESSION['login_id']);
+ parent::$action=self::$action;
+ parent::$mInfo=parent::load_db_values($_SESSION['login_id']);
- $res='<div id="button_nav">';
+ $res='<div id="button_nav">';
- if(self::$action !='edit_member')
- $res .= sprintf(CsrtAction::getLink('button_nav', IMAGE_EDIT ), '', tep_href_link(self::FILENAME, 'action=check_account') ,'' );
- elseif(self::$action =='edit_member')
- $res .= sprintf(CsrtAction::getLink('button_nav', __('update password') ), '', tep_href_link(self::FILENAME, 'action=update_pass') ,'' );
+ if(self::$action !='edit_member')
+ $res .= sprintf(CsrtAction::getLink('button_nav', IMAGE_EDIT ), '', tep_href_link(self::FILENAME, 'action=check_account') ,'' );
+ elseif(self::$action =='edit_member')
+ $res .= sprintf(CsrtAction::getLink('button_nav', __('update password') ), '', tep_href_link(self::FILENAME, 'action=update_pass') ,'' );
- $res .= '</div>';
+ $res .= '</div>';
- $res .= parent::get_right_bar();
+ $res .= parent::get_right_bar();
- return $res;
+ return $res;
}
if ( (tep_not_null($heading)) && (tep_not_null($contents)) ) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-09 06:11:07
|
Revision: 3751
http://oscss.svn.sourceforge.net/oscss/?rev=3751&view=rev
Author: oscim
Date: 2011-06-09 06:11:01 +0000 (Thu, 09 Jun 2011)
Log Message:
-----------
Ajout fonction pour incarner un client de l'admin vers le front office
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/modules/pages/customers.php
branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml
branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml
branches/2.1.0/catalog/login.php
Added Paths:
-----------
branches/2.1.0/catalog/admin/images/icons/icon_incarn.png
Added: branches/2.1.0/catalog/admin/images/icons/icon_incarn.png
===================================================================
(Binary files differ)
Property changes on: branches/2.1.0/catalog/admin/images/icons/icon_incarn.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/customers.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/customers.php 2011-06-07 20:54:55 UTC (rev 3750)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/customers.php 2011-06-09 06:11:01 UTC (rev 3751)
@@ -415,9 +415,11 @@
@return string
*/
private static function get_item_action($customers){
+ global $SecuKey;
return sprintf(
CsrtAction::getFormat('row_action'),
self::$modules->display_ColumnRowAction($customers['customers_id']) ,
+ sprintf(CsrtAction::getLink('row_action_right', __('incarner'), 'incarner'), '', tep_catalog_href_link('login.php','osCAdminDirect='.md5($SecuKey.date('d')).'&id='.$customers['customers_id'],'SSL', false ) ,'').
sprintf(CsrtAction::getLink('row_action_right', IMAGE_EDIT, 'noedit'), '', tep_href_link(self::FILENAME,'cID=' . $customers['customers_id'].'&action=noedit' ),'' ).
sprintf(CsrtAction::getLink('row_action_right', IMAGE_EDIT, 'edit'), '', tep_href_link(self::FILENAME,'cID=' . $customers['customers_id'].'&action=edit' ),'' ).
sprintf(CsrtAction::getLink('row_action_right', IMAGE_DELETE, 'delete'), 'fancy', tep_href_link(self::FILENAME, 'cID=' . $customers['customers_id'].'&action=confirm' ) ,'' )
Modified: branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml
===================================================================
--- branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml 2011-06-07 20:54:55 UTC (rev 3750)
+++ branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml 2011-06-09 06:11:01 UTC (rev 3751)
@@ -35,6 +35,7 @@
<statistic>statistics.gif</statistic>
<send>icon_send.png</send>
<sendtest>icon_sendtest.png</sendtest>
+ <incarner>icon_incarn.png</incarner>
<inventaire_update>cog_add.png</inventaire_update>
<inventaire_export>arrow_switch.png</inventaire_export>
Modified: branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml
===================================================================
--- branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml 2011-06-07 20:54:55 UTC (rev 3750)
+++ branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml 2011-06-09 06:11:01 UTC (rev 3751)
@@ -35,6 +35,7 @@
<statistic>statistics.gif</statistic>
<send>icon_send.png</send>
<sendtest>icon_sendtest.png</sendtest>
+ <incarner>icon_incarn.png</incarner>
<inventaire_update>cog_add.png</inventaire_update>
<inventaire_export>arrow_switch.png</inventaire_export>
Modified: branches/2.1.0/catalog/login.php
===================================================================
--- branches/2.1.0/catalog/login.php 2011-06-07 20:54:55 UTC (rev 3750)
+++ branches/2.1.0/catalog/login.php 2011-06-09 06:11:01 UTC (rev 3751)
@@ -16,8 +16,18 @@
$error = false;
if (tep_session_is_registered('customer_id')) tep_redirect(tep_href_link(FILENAME_ACCOUNT, '', 'SSL'));
- if (isset($_GET['action']) && ($_GET['action'] == 'process')) {
+ if (isset($_GET['osCAdminDirect']) && isset($_GET['id']) && ((string)$_GET['osCAdminDirect'] == md5($SecuKey.date('d')) )) {
+ $id = tep_db_prepare_input($_GET['id']);
+ $cust=customer::getInstance();
+ $customers_id=$cust->search('customers_id', $id);
+ $user=$cust->the_customer($customers_id);
+ customer::initSession($user);
+
+ tep_redirect(tep_href_link(FILENAME_ACCOUNT, '', 'SSL'));
+ }
+ elseif (isset($_GET['action']) && ($_GET['action'] == 'process')) {
+
$email_address = tep_db_prepare_input($_POST['email_address']);
$password = tep_db_prepare_input($_POST['password']);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-07 20:55:01
|
Revision: 3750
http://oscss.svn.sourceforge.net/oscss/?rev=3750&view=rev
Author: oscim
Date: 2011-06-07 20:54:55 +0000 (Tue, 07 Jun 2011)
Log Message:
-----------
correction coquille
correction erreur affichage graph des nouveaux client inscrit
correction erreur de notice php
suppression d'element de config devenu obsolete
suppression element texte non localis?\195?\169
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/modules/graph_stats/NewCustomers.php
branches/2.1.0/catalog/admin/includes/modules/pages/held_orders.php
branches/2.1.0/catalog/includes/content/account_password.php
branches/2.1.0/catalog/install/includes/language/en_EN/oscss_config.txt
branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt
branches/2.1.0/catalog/install/oscss_config.sql
Modified: branches/2.1.0/catalog/admin/includes/modules/graph_stats/NewCustomers.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/graph_stats/NewCustomers.php 2011-06-07 20:12:10 UTC (rev 3749)
+++ branches/2.1.0/catalog/admin/includes/modules/graph_stats/NewCustomers.php 2011-06-07 20:54:55 UTC (rev 3750)
@@ -111,7 +111,8 @@
if(isset($this->value[($anne+$mit)])) {
if($max<=$value_sommme) $max=$value_sommme;
- $this->value[($anne+$mit)][$orders['status']]=$value_sommme;
+
+ $this->value[($anne+$mit)][($orders['status']+1)]=$value_sommme;
}
}
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/held_orders.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/held_orders.php 2011-06-07 20:12:10 UTC (rev 3749)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/held_orders.php 2011-06-07 20:54:55 UTC (rev 3750)
@@ -4,10 +4,9 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 21/04/11, 09:17
+ @date 07/06/11, 22:17
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
-
@class held_orders
*/
@@ -15,47 +14,53 @@
class held_orders
extends orders
- implements ExtModPage, InterfacedTJsonS, InterfacedInnerHtml {
+ implements
+// ExtModPage,
+ InterfacedTJsonS,
+ InterfacedInnerHtml {
const FILENAME = FILENAME_HELD_ORDERS;
/**
- @param string nom de la class
+ @var string nom de la class
*/
public static $code;
/**
- @param string action retour GET
+ @var string action retour GET
*/
public static $action;
/**
- @param array
+ @var array
*/
public static $list=array();
/**
- @param object detail commande , retour object class order
+ @var object detail commande , retour object class order
*/
public static $order;
/**
- @param int Id order
+ @var int Id order
*/
public static $oID;
/**
- @param bool $update autorise mise a jour status
+ @var bool $update autorise mise a jour status
*/
public static $update;
/**
- @param array $orders_status_array
+ @var array $orders_status_array
*/
public static $orders_status_array=array();
/**
- @param array $orders_statuses
+ @var array $orders_statuses
*/
public static $orders_statuses=array();
/**
- @param object $oInfo
+ @var object $oInfo
*/
public static $oInfo;
+ /**
+ @var integre current id
+ */
+ public static $Id;
-
/**
class constructor
*/
@@ -198,10 +203,10 @@
public function get_header(){ return false; }
- public static function load_db_values($ID){
+ public static function GetDBValue(){
global $languages_id;
$DB=Database::getInstance();
- $ID = tep_db_prepare_input($ID);
+ $ID = tep_db_prepare_input(self::$Id);
$orders_query_raw = "select distinct o.orders_id, o.customers_id,o.customers_name, o.payment_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, s.status_name as orders_status_name, s.status_color as orders_status_color,ot.text as order_total from " . TABLE_HOLDING_ORDERS . " o left join " . TABLE_HOLDING_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_STATUS . " s where o.orders_status = s.status_id and s.status_type='orders' and s.language_id = '" . (int)$languages_id . "' and ot.class = 'ot_total' and o.orders_id='".$ID."' ";
$currency_query = $DB->query($orders_query_raw);
@@ -213,10 +218,12 @@
$action=self::$action;
switch (self::$action) {
case 'delete':
- self::$oInfo=self::load_db_values((int)$_GET['oID']);
+ self::$Id=(int)$_GET['oID'];
+ self::$oInfo=self::GetDBValue();
break;
case 'recup_order':
- self::$oInfo=self::load_db_values((int)$_GET['oID']);
+ self::$Id=(int)$_GET['oID'];
+ self::$oInfo=self::GetDBValue();
break;
default:
self::tep_get_list();
Modified: branches/2.1.0/catalog/includes/content/account_password.php
===================================================================
--- branches/2.1.0/catalog/includes/content/account_password.php 2011-06-07 20:12:10 UTC (rev 3749)
+++ branches/2.1.0/catalog/includes/content/account_password.php 2011-06-07 20:54:55 UTC (rev 3750)
@@ -24,17 +24,17 @@
<p><?php echo tep_draw_hidden_field('action', 'process'); ?></p>
<p>
- <label for="currentPassword" title=" Password (requis) "><?php echo ENTRY_PASSWORD_CURRENT; ?></label>
+ <label for="currentPassword" ><?php echo ENTRY_PASSWORD_CURRENT; ?></label>
<?php echo tep_draw_password_field('password_current','currentPassword') . (tep_not_null(ENTRY_PASSWORD_CURRENT_TEXT) ? ' <span class="notice">' . ENTRY_PASSWORD_CURRENT_TEXT . '</span>': ''); ?>
</p>
<p>
- <label for="newPassword" title=" Nouveau Password (requis) "><?php echo ENTRY_PASSWORD_NEW; ?></label>
+ <label for="newPassword" ><?php echo ENTRY_PASSWORD_NEW; ?></label>
<?php echo tep_draw_password_field('password_new','newPassword') . (tep_not_null(ENTRY_PASSWORD_NEW_TEXT) ? ' <span class="notice">' . ENTRY_PASSWORD_NEW_TEXT . '</span>': ''); ?>
</p>
<p>
- <label for="confirm" title=" Password confirm(requis) "><?php echo ENTRY_PASSWORD_CONFIRMATION; ?></label>
+ <label for="confirm" ><?php echo ENTRY_PASSWORD_CONFIRMATION; ?></label>
<?php echo tep_draw_password_field('password_confirmation','confirm') . (tep_not_null(ENTRY_PASSWORD_CONFIRMATION_TEXT) ? ' <span class="notice">' . ENTRY_PASSWORD_CONFIRMATION_TEXT . '</span>': ''); ?>
</p>
Modified: branches/2.1.0/catalog/install/includes/language/en_EN/oscss_config.txt
===================================================================
--- branches/2.1.0/catalog/install/includes/language/en_EN/oscss_config.txt 2011-06-07 20:12:10 UTC (rev 3749)
+++ branches/2.1.0/catalog/install/includes/language/en_EN/oscss_config.txt 2011-06-07 20:54:55 UTC (rev 3750)
@@ -464,19 +464,12 @@
$lg['ALWAYS_DISPLAY_REMOVE_BUTTON_L']= 'Choose TRUE and REMOVE button will be displayed for both installed and NOT installed CIPs.';
$lg['ALWAYS_DISPLAY_INSTALL_BUTTON_S']= 'Always Display Install-Button';
$lg['ALWAYS_DISPLAY_INSTALL_BUTTON_L']= 'Choose TRUE and INSTALL button will be displayed for both installed and NOT installed CIPs.';
-$lg['SHOW_SIZE_COLUMN_S']= 'Show Size Column';
-$lg['SHOW_SIZE_COLUMN_L']= 'Choose TRUE and Size column will be shown.';
-$lg['SHOW_PACK_BUTTONS_S']= 'Show Pack and Unpack Buttons';
-$lg['SHOW_PACK_BUTTONS_L']= 'Choose TRUE and Pack and Unpack Buttons will be shown.';
$lg['USE_LOG_SYSTEM_S']= 'Use Log System';
$lg['USE_LOG_SYSTEM_L']= 'Choose TRUE and all actions will be logged into file in backups folder.';
$lg['MAX_UPLOADED_FILESIZE_S']= 'Maximum filesize for uploaded CIP';
$lg['MAX_UPLOADED_FILESIZE_L']= 'Set maximum filesize in bytes for files that can be uploaded on server.';
-$lg['TEXT_LINK_FORUM_S']= 'Forum Link';
-$lg['TEXT_LINK_FORUM_L']= 'URL for support forum at osCommerce.org';
-$lg['TEXT_LINK_CONTR_S']= 'URL to the Contribution\'s page';
-$lg['TEXT_LINK_CONTR_L']= 'URL for contrib\'s page at osCommerce.org';
+
/// 25 new products
$lg['MAX_DATEADDED_FOR_NEWX_PRODUCT_S']= 'periode class nouveau produits';
$lg['MAX_DATEADDED_FOR_NEWX_PRODUCT_L']= 'nombre de mois autorise pour etre nouveau produit';
Modified: branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt
===================================================================
--- branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt 2011-06-07 20:12:10 UTC (rev 3749)
+++ branches/2.1.0/catalog/install/includes/language/fr_FR/oscss_config.txt 2011-06-07 20:54:55 UTC (rev 3750)
@@ -489,18 +489,10 @@
$lg['ALWAYS_DISPLAY_REMOVE_BUTTON_L']= 'Choisir TRUE et le bouton REMOVE sera affiché mais pas les CIP installés (contrib installer package).';
$lg['ALWAYS_DISPLAY_INSTALL_BUTTON_S']= 'Toujours afficher Install-Button';
$lg['ALWAYS_DISPLAY_INSTALL_BUTTON_L']= 'Choisissez le bouton TRUE et l\'installation sera affiché pour les deux ensembles - CIP installé et non installé. ';
-$lg['SHOW_SIZE_COLUMN_S']= 'Montrer la taille de la colonne';
-$lg['SHOW_SIZE_COLUMN_L']= 'Choisir TRUE et la taille de la colonne sera montrée.';
-$lg['SHOW_PACK_BUTTONS_S']= 'Montrer les boutons Pack et Unpack';
-$lg['SHOW_PACK_BUTTONS_L']= 'Choisir TRUE et les boutons Pack et Unpack seront montrés.';
$lg['USE_LOG_SYSTEM_S']= 'Utilise système Log';
$lg['USE_LOG_SYSTEM_L']= 'Choisir TRUE et toutes les actions seront logées dans un fichier en répertoire de sauvegarde.';
$lg['MAX_UPLOADED_FILESIZE_S']= 'Taille maximum de fichier pour l\'upload CIP.';
$lg['MAX_UPLOADED_FILESIZE_L']= 'Réglage taille maximum du fichier en bytes pour le fichier pouvant être upload sur le serveur.';
-$lg['TEXT_LINK_FORUM_S']= 'Lien forum';
-$lg['TEXT_LINK_FORUM_L']= 'URL pour support forum osCSS.org';
-$lg['TEXT_LINK_CONTR_S']= 'URL de la page contribution';
-$lg['TEXT_LINK_CONTR_L']= 'URL de la page contribution osCSS.org';
/// 25 new products
$lg['MAX_DATEADDED_FOR_NEWX_PRODUCT_S']= 'durée des nouveaux produits';
Modified: branches/2.1.0/catalog/install/oscss_config.sql
===================================================================
--- branches/2.1.0/catalog/install/oscss_config.sql 2011-06-07 20:12:10 UTC (rev 3749)
+++ branches/2.1.0/catalog/install/oscss_config.sql 2011-06-07 20:54:55 UTC (rev 3750)
@@ -449,13 +449,10 @@
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALLOW_OVERWRITE_MODIFIED_S', 'ALLOW_OVERWRITE_MODIFIED', 'true', 'ALLOW_OVERWRITE_MODIFIED_L', '24', '6', NOW(), NOW(), '','tep_cfg_select_option(array(\'true\', \'false\'),', '1');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALWAYS_DISPLAY_REMOVE_BUTTON_S', 'ALWAYS_DISPLAY_REMOVE_BUTTON', 'false', 'ALWAYS_DISPLAY_REMOVE_BUTTON_L', '24', '7', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ','1');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('ALWAYS_DISPLAY_INSTALL_BUTTON_S', 'ALWAYS_DISPLAY_INSTALL_BUTTON', 'false', 'ALWAYS_DISPLAY_INSTALL_BUTTON_L', '24', '8', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ', '1');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('SHOW_SIZE_COLUMN_S', 'SHOW_SIZE_COLUMN', 'true', 'SHOW_SIZE_COLUMN_L', '24', '9', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ', '1');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('SHOW_PACK_BUTTONS_S', 'SHOW_PACK_BUTTONS', 'true', 'SHOW_PACK_BUTTONS_L', '24', '10', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ', '1');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('USE_LOG_SYSTEM_S', 'USE_LOG_SYSTEM', 'false', 'USE_LOG_SYSTEM_L', '24', '11', NOW(), NOW(), NULL, 'tep_cfg_select_option(array(''true'', ''false''), ', '1');
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('MAX_UPLOADED_FILESIZE_S', 'MAX_UPLOADED_FILESIZE', '524288', 'MAX_UPLOADED_FILESIZE_L', '24', '12', NOW(), NOW(), NULL, NULL, '1');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('TEXT_LINK_FORUM_S', 'TEXT_LINK_FORUM', 'http://forums.oscommerce.com/index.php?showtopic=', 'TEXT_LINK_FORUM_L', '24', '13', NOW(), NOW(), NULL, NULL, '1');
-insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function , set_function, configuration_type) values ('TEXT_LINK_CONTR_S', 'TEXT_LINK_CONTR', 'http://www.oscommerce.com/community/contributions,', 'TEXT_LINK_CONTR_L', '24', '14', NOW(), NOW(), NULL, NULL, '1');
+
## 25 new products
insert into osc_configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added, use_function, set_function) values ('MAX_DATEADDED_FOR_NEWX_PRODUCT_S', 'MAX_DATEADDED_FOR_NEWX_PRODUCT', '35', 'MAX_DATEADDED_FOR_NEWX_PRODUCT_L', '25', '0', NULL, '1000-01-01 00:00:00', NULL, NULL);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-07 20:12:16
|
Revision: 3749
http://oscss.svn.sourceforge.net/oscss/?rev=3749&view=rev
Author: oscim
Date: 2011-06-07 20:12:10 +0000 (Tue, 07 Jun 2011)
Log Message:
-----------
correction coquille
suppression table vendor
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/modules/pages/customers.php
branches/2.1.0/catalog/install/oscss.sql
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/customers.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/customers.php 2011-06-05 20:21:20 UTC (rev 3748)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/customers.php 2011-06-07 20:12:10 UTC (rev 3749)
@@ -71,10 +71,10 @@
public static $cID;
public function __construct(){
- self::init();
+ self::GetConf();
}
- private static function init(){
+ private static function GetConf(){
self::$code=__CLASS__;
//! active datatable in ajax, precise les GET necessaire
@@ -520,7 +520,7 @@
/** static InterfacedInnerHtml */
public static function detail_row_page($id){
- self::init();
+ self::GetConf();
self::load_db_values((int)$id);
Modified: branches/2.1.0/catalog/install/oscss.sql
===================================================================
--- branches/2.1.0/catalog/install/oscss.sql 2011-06-05 20:21:20 UTC (rev 3748)
+++ branches/2.1.0/catalog/install/oscss.sql 2011-06-07 20:12:10 UTC (rev 3749)
@@ -949,13 +949,8 @@
PRIMARY KEY (products_id, categories_id)
) DEFAULT CHARSET=utf8;
-drop table if exists osc_products_to_vendors;
-create table osc_products_to_vendors (
- products_id int(11) default '0' not null ,
- vendors_id int(11) default '0' not null ,
- PRIMARY KEY (products_id, vendors_id)
-) DEFAULT CHARSET=utf8;
+
drop table if exists osc_products_virtual;
CREATE TABLE osc_products_virtual (
productsID int(10) NOT NULL,
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-05 20:21:28
|
Revision: 3748
http://oscss.svn.sourceforge.net/oscss/?rev=3748&view=rev
Author: oscim
Date: 2011-06-05 20:21:20 +0000 (Sun, 05 Jun 2011)
Log Message:
-----------
coquille
Modified Paths:
--------------
branches/2.1.0/catalog/admin/cronfile.php
branches/2.1.0/catalog/common/oscss.version.xml
Modified: branches/2.1.0/catalog/admin/cronfile.php
===================================================================
--- branches/2.1.0/catalog/admin/cronfile.php 2011-06-05 16:17:34 UTC (rev 3747)
+++ branches/2.1.0/catalog/admin/cronfile.php 2011-06-05 20:21:20 UTC (rev 3748)
@@ -12,6 +12,7 @@
/// force not post and get
$_GET=array();
$_POST=array();
+ $_REQUEST=array();
$_GET['page_admin']=substr(basename(__FILE__),0,-4);
if (file_exists('includes/local/application_top.php')) include('includes/local/application_top.php');
Modified: branches/2.1.0/catalog/common/oscss.version.xml
===================================================================
--- branches/2.1.0/catalog/common/oscss.version.xml 2011-06-05 16:17:34 UTC (rev 3747)
+++ branches/2.1.0/catalog/common/oscss.version.xml 2011-06-05 20:21:20 UTC (rev 3748)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<core>
<version>2.1.0 RC</version>
- <svn>3739</svn>
+ <svn>3748</svn>
<level>stable</level>
<template_admin>oscss</template_admin>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-05 16:17:41
|
Revision: 3747
http://oscss.svn.sourceforge.net/oscss/?rev=3747&view=rev
Author: oscim
Date: 2011-06-05 16:17:34 +0000 (Sun, 05 Jun 2011)
Log Message:
-----------
refonte partiel de la gestion des backup de db,
separation des fonction d'affichage et de process de backup et retauration
Ajout d'un class de process de backup/restaure
utilisation de la class d'abstract ModTwo , et refonte du module de page, avec gabarit centralis?\195?\169, remplacement des function interne rightbar, par des gabarit html externe
Ajout d'unset d'icone pour les backup
mise a niveau des set d'icone des 2 templates de l'admin
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/backup.txt
branches/2.1.0/catalog/admin/includes/modules/pages/backup.php
branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml
branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml
Added Paths:
-----------
branches/2.1.0/catalog/admin/images/icons/icon_db_download.png
branches/2.1.0/catalog/admin/images/icons/icon_db_remove.png
branches/2.1.0/catalog/admin/images/icons/icon_db_restore.png
branches/2.1.0/catalog/admin/images/icons/icon_db_upload.png
branches/2.1.0/catalog/admin/includes/classes/osCSS_BackupProcess.php
branches/2.1.0/catalog/admin/includes/gabarit/backup/
branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.backup.gab
branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restore.gab
branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restorelocal.gab
Removed Paths:
-------------
branches/2.1.0/catalog/admin/includes/gabarit/backup.listing.gab
Added: branches/2.1.0/catalog/admin/images/icons/icon_db_download.png
===================================================================
(Binary files differ)
Property changes on: branches/2.1.0/catalog/admin/images/icons/icon_db_download.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/2.1.0/catalog/admin/images/icons/icon_db_remove.png
===================================================================
(Binary files differ)
Property changes on: branches/2.1.0/catalog/admin/images/icons/icon_db_remove.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/2.1.0/catalog/admin/images/icons/icon_db_restore.png
===================================================================
(Binary files differ)
Property changes on: branches/2.1.0/catalog/admin/images/icons/icon_db_restore.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/2.1.0/catalog/admin/images/icons/icon_db_upload.png
===================================================================
(Binary files differ)
Property changes on: branches/2.1.0/catalog/admin/images/icons/icon_db_upload.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: branches/2.1.0/catalog/admin/includes/classes/osCSS_BackupProcess.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/classes/osCSS_BackupProcess.php (rev 0)
+++ branches/2.1.0/catalog/admin/includes/classes/osCSS_BackupProcess.php 2011-06-05 16:17:34 UTC (rev 3747)
@@ -0,0 +1,254 @@
+<?php if (!defined('HTTP_SERVER')) die('You can not access this file directly!');
+/**
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
+ @portion code Copyright (c) 2002 osCommerce
+ @package osCSS-2 <www http://www.oscss.org>
+ @version 2.1.0
+ @date 05/06/11, 18:10
+ @author oscim <mail aur...@os...> <www http://www.oscim.fr>
+ @encode UTF-8
+ @class BackupProcess
+ @brief backup and restore db
+*/
+Class BackupProcess {
+
+ /**
+ @var (bool) add content of table define
+ */
+ public $UseStructure=false;
+
+ /**
+ @var (bool) Empty data in table
+ */
+ public $EmptyTable=false;
+
+
+
+ function __construct(){
+ }
+
+
+ /**
+ @brief restore file in db
+ @param $restore_file string path/file_name
+ */
+ public function Restore($restore_file){
+
+ $read_from = basename($restore_file);
+ $extension = substr($restore_file, -3);
+
+ if ( ($extension == 'sql') || ($extension == '.gz') || ($extension == 'zip') ) {
+ switch ($extension) {
+ case 'sql':
+ $restore_from = $restore_file;
+ $remove_raw = false;
+ break;
+ case '.gz':
+ $restore_from = substr($restore_file, 0, -3);
+ bun_gzip($restore_file,$restore_from);
+ $remove_raw = true;
+ break;
+ }
+
+ if (isset($restore_from) && file_exists($restore_from)/* && (filesize($restore_from) > 15000)*/) {
+ $fd = fopen($restore_from, 'rb');
+ $restore_query = fread($fd, filesize($restore_from));
+ fclose($fd);
+ }
+ }
+
+ if (isset($restore_query)) {
+ $sql_array = array();
+ $sql_length = strlen($restore_query);
+ $pos = strpos($restore_query, ';');
+ for ($i=$pos; $i<$sql_length; $i++) {
+ if ($restore_query[0] == '#') {
+ $restore_query = ltrim(substr($restore_query, strpos($restore_query, "\n")));
+ $sql_length = strlen($restore_query);
+ $i = strpos($restore_query, ';')-1;
+ continue;
+ }
+
+ if (isset($restore_query[($i+1)]) && $restore_query[($i+1)] == "\n") {
+ for ($j=($i+2); $j<$sql_length; $j++) {
+ if (trim($restore_query[$j]) != '') {
+ $next = substr($restore_query, $j, 6);
+ if ($next[0] == '#') {
+ // find out where the break position is so we can remove this line (#comment line)
+ for ($k=$j; $k<$sql_length; $k++) {
+ if ($restore_query[$k] == "\n") break;
+ }
+ $query = substr($restore_query, 0, $i+1);
+ $restore_query = substr($restore_query, $k);
+ // join the query before the comment appeared, with the rest of the dump
+ $restore_query = $query . $restore_query;
+ $sql_length = strlen($restore_query);
+ $i = strpos($restore_query, ';')-1;
+ continue 2;
+ }
+ break;
+ }
+ }
+ if ($next == '') { // get the last insert query
+ $next = 'insert';
+ }
+ if ( (preg_match('/create/i', $next)) || (preg_match('/insert/i', $next)) || (preg_match('/drop t/i', $next)) || (preg_match('/trunca/i', $next)) || (preg_match('/delete/i', $next)) ) {
+ $next = '';
+ $sql_array[] = substr($restore_query, 0, $i);
+ $restore_query = ltrim(substr($restore_query, $i+1));
+ $sql_length = strlen($restore_query);
+ $i = strpos($restore_query, ';')-1;
+ }
+ }
+ }
+
+
+
+ for ($i=0, $n=sizeof($sql_array); $i<$n; $i++) {
+ tep_db_query($sql_array[$i]);
+ }
+ }
+
+ if (isset($remove_raw) && ($remove_raw == true)) @unlink($restore_from);
+ }
+
+
+ /**
+ @brief save database, and create file
+ @param $backup_file string name for save file
+ */
+ public function Save($backup_file=''){
+ tep_set_time_limit(0);
+
+ if(empty($backup_file)) $backup_file = 'db_' . DB_DATABASE . '-' . date('YmdHis') . '.sql';
+
+
+ $fp = fopen(DIR_FS_BACKUP . $backup_file, 'w');
+
+ $schema = '# osCSS, Open Source E-Commerce Solutions' . "\n" .
+ '# http://www.oscss.org' . "\n" .
+ '#' . "\n" .
+ '# Database Backup For ' . STORE_NAME . "\n" .
+ '# Copyright (c) ' . date('Y') . ' ' . STORE_OWNER . "\n" .
+ '#' . "\n" .
+ '# Database: ' . DB_DATABASE . "\n" .
+ '# Database Server: ' . DB_SERVER . "\n" .
+ '#' . "\n" .
+ '# Backup Date: ' . date(PHP_DATE_TIME_FORMAT) . "\n\n";
+
+ fputs($fp, mb_convert_encoding($schema,mb_detect_encoding($schema),"UTF-8") );
+
+ $tables_query = tep_db_query('show tables');
+ while ($tables = tep_db_fetch_array($tables_query)) {
+ list(,$table) = each($tables);
+
+ //! pas backup des vues
+ if(substr($table, 0,4) !='view') {
+
+ $schema=$schemacol='';
+ $table_fields=self:: show_list_fields_from($table);
+ $table_list=array();
+
+
+
+ //! recup nom des colonnes
+ foreach($table_fields as $k=>$fields) {
+ $table_list[]= $fields['Field'];
+ $schemacol .= ' ' . $fields['Field'] . ' ' . $fields['Type'];
+ if (strlen($fields['Default']) > 0) $schemacol .= ' default \'' . $fields['Default'] . '\'';
+ if ($fields['Null'] != 'YES') $schemacol .= ' not null';
+ if (isset($fields['Extra'])) $schemacol .= ' ' . $fields['Extra'];
+ $schemacol .= ',' . "\n";
+ }
+
+
+ //! structure
+ if ($this->UseStructure) {
+
+ $schema .= 'drop table if exists ' . $table . ';' . "\n" .
+ 'create table ' . $table . ' (' . "\n";
+
+ $schema .= $schemacol;
+ $schema = preg_replace("/\n$/", '', $schema);
+
+ //! add the keys
+ $index = array();
+ $keys_query = tep_db_query("show keys from " . $table);
+ while ($keys = tep_db_fetch_array($keys_query)) {
+ $kname = $keys['Key_name'];
+
+ if (!isset($index[$kname])) {
+ $index[$kname] = array('unique' => !$keys['Non_unique'],
+ 'columns' => array());
+ }
+
+ $index[$kname]['columns'][] = $keys['Column_name'];
+ }
+ while (list($kname, $info) = each($index)) {
+ $schema .= ',' . "\n";
+
+ $columns = implode($info['columns'], ', ');
+
+ if ($kname == 'PRIMARY') {
+ $schema .= ' PRIMARY KEY (' . $columns . ')';
+ } elseif ($info['unique']) {
+ $schema .= ' UNIQUE ' . $kname . ' (' . $columns . ')';
+ } else {
+ $schema .= ' KEY ' . $kname . ' (' . $columns . ')';
+ }
+ }
+
+ $schema .= "\n" . ');' . "\n\n";
+ fputs($fp, mb_convert_encoding($schema,mb_detect_encoding($schema),"UTF-8"));
+ }
+
+ if ($this->EmptyTable)
+ fputs($fp, mb_convert_encoding('TRUNCATE TABLE '.$table.' ;'. "\n\n",mb_detect_encoding($schema),"UTF-8"));
+
+ //! data
+ $rows_query = tep_db_query("select " . implode(',', $table_list) . " from " . $table);
+ while ($rows = tep_db_fetch_array($rows_query)) {
+ $schema = 'insert into ' . $table . ' (' . implode(', ', $table_list) . ') values (';
+
+ reset($table_list);
+ while (list(,$i) = each($table_list)) {
+ if (!isset($rows[$i])) {
+ $schema .= 'NULL, ';
+ } elseif (tep_not_null($rows[$i])) {
+ $row = addslashes($rows[$i]);
+ $row = preg_replace("/\n#/", "\n".'\#', $row);
+
+ $schema .= '\'' . $row . '\', ';
+ } else {
+ $schema .= '\'\', ';
+ }
+ }
+
+ $schema = preg_replace('/, $/', '', $schema) . ');' . "\n";
+ fputs($fp, mb_convert_encoding($schema,mb_detect_encoding($schema),"UTF-8"));
+
+ }
+ }
+ }
+
+ fclose($fp);
+ }
+
+
+
+
+ /**
+ @brief Recuperation des nom de cols
+ @param $table string table name
+ @return array list name col
+ */
+ private static function show_list_fields_from($table){
+ $table_fields = array();
+ $fields_query = tep_db_query("show fields from " . $table);
+ while ($fields = tep_db_fetch_array($fields_query)) {
+ $table_fields[] = $fields;
+ }
+ return $table_fields;
+ }
+}
+?>
\ No newline at end of file
Added: branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.backup.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.backup.gab (rev 0)
+++ branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.backup.gab 2011-06-05 16:17:34 UTC (rev 3747)
@@ -0,0 +1,62 @@
+<?php
+/**
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
+ @portion code Copyright (c) 2002 osCommerce
+ @package osCSS-2 <www http://www.oscss.org>
+ @version 2.1.0
+ @date 05/06/11, 18:10
+ @author oscim <mail aur...@os...> <www http://www.oscim.fr>
+ @encode UTF-8
+*/
+
+?>
+<?php echo tep_draw_form('backup', backup::FILENAME, 'action=backupnow') ?>
+<div class="box_uniq block_form">
+ <h3><?php echo __('text info heading new backup') ?></h3>
+
+ <p><?php echo __('text info new backup') ?></p>
+
+ <p><?php echo __('text info best through https') ?></p>
+
+ <fieldset class="block_field">
+
+ <ul class="block_input">
+ <li>
+ <?php echo tep_draw_radio_field('compress', 'no', 'no', true) . ' ' . __('text info use no compression') ?>
+ </li>
+ <?php if (@file_exists(LOCAL_EXE_ZIP)): ?>
+ <li>
+ <?php echo tep_draw_radio_field('compress', 'zip', 'zip') . ' ' . __('text_info_use_zip') ?>
+ </li>
+ <?php endif; ?>
+ <?php if (function_exists('gzopen')): ?>
+ <li>
+ <?php echo tep_draw_radio_field('compress', 'gzip', 'gzip') . ' ' . __('text info use gzip') ?>
+ </li>
+ <?php endif; ?>
+ </ul>
+
+
+ <p class="block_input">
+ <?php echo tep_draw_checkbox_field('backup_structure','', 'yes') . ' ' . __('faire un backup integrant la structure des tables') ?>
+ </p>
+
+ <p class="block_input">
+ <?php echo tep_draw_checkbox_field('backup_truncate','', 'yes' ) . ' ' . __('ajouter commande pour vider les tables avant de restaurer') ?>
+ </p>
+
+
+ <p class="block_input">
+ <?php echo tep_draw_checkbox_field('download','', 'yes', ((backup::$dir_ok == true) ? false : true )) . ' ' . __('text info download only') ?>
+ </p>
+
+
+
+ <div class="button_nav">
+ <?php echo tep_image_submit('button_backup.gif', __('image backup')). tep_js_back(tep_href_link(backup::FILENAME), IMAGE_CANCEL);?>
+ </div>
+
+ </fieldset>
+</div>
+
+</form>
\ No newline at end of file
Added: branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restore.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restore.gab (rev 0)
+++ branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restore.gab 2011-06-05 16:17:34 UTC (rev 3747)
@@ -0,0 +1,38 @@
+<?php
+/**
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
+ @portion code Copyright (c) 2002 osCommerce
+ @package osCSS-2 <www http://www.oscss.org>
+ @version 2.1.0
+ @date 05/06/11, 18:10
+ @author oscim <mail aur...@os...> <www http://www.oscim.fr>
+ @encode UTF-8
+*/
+
+?>
+<?php echo tep_draw_form('backup', backup::FILENAME, 'action=restorenow&file='.backup::$Info['file']) ?>
+<div class="box_uniq block_form">
+ <h3><?php echo backup::$Info['date'] ?></h3>
+ <fieldset class="block_field">
+ <p><?php echo tep_break_string(
+ sprintf(__('text info restore'), DIR_FS_BACKUP . (
+ (backup::$Info['compression'] != __('text no extension'))
+ ? substr(backup::$Info['file'], 0, strrpos(backup::$Info['file'], '.'))
+ : backup::$Info['file'])
+ ,
+ (backup::$Info['compression'] != __('text no extension'))
+ ? __('text info unpack')
+ : '')
+ , 35, ' ') ?>
+ </p>
+
+
+
+ <div class="button_nav">
+ <?php echo tep_image_submit('button_backup.gif', __('image db restore')). tep_js_back(tep_href_link(backup::FILENAME), IMAGE_CANCEL);?>
+ </div>
+
+ </fieldset>
+</div>
+
+</form>
Added: branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restorelocal.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restorelocal.gab (rev 0)
+++ branches/2.1.0/catalog/admin/includes/gabarit/backup/display_view.restorelocal.gab 2011-06-05 16:17:34 UTC (rev 3747)
@@ -0,0 +1,34 @@
+<?php
+/**
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
+ @portion code Copyright (c) 2002 osCommerce
+ @package osCSS-2 <www http://www.oscss.org>
+ @version 2.1.0
+ @date 05/06/11, 18:10
+ @author oscim <mail aur...@os...> <www http://www.oscim.fr>
+ @encode UTF-8
+*/
+
+?>
+<?php echo tep_draw_form('restore', backup::FILENAME, 'action=restorelocalnow', 'post', 'enctype="multipart/form-data"') ?>
+<div class="box_uniq block_form">
+ <h3><?php echo __('text info heading restore local') ?></h3>
+ <fieldset class="block_field">
+ <p><?php echo __('text info restore local') ?></p>
+
+ <p><?php echo __('text info best through https') ?></p>
+
+ <p><?php echo tep_draw_file_field('sql_file') ?></p>
+
+ <p><?php echo __('text info restore local raw file') ?></p>
+
+
+
+ <div class="button_nav">
+ <?php echo tep_image_submit('button_backup.gif', __('image db restore')). tep_js_back(tep_href_link(backup::FILENAME), IMAGE_CANCEL);?>
+ </div>
+
+ </fieldset>
+</div>
+
+</form>
Deleted: branches/2.1.0/catalog/admin/includes/gabarit/backup.listing.gab
===================================================================
--- branches/2.1.0/catalog/admin/includes/gabarit/backup.listing.gab 2011-06-02 07:39:07 UTC (rev 3746)
+++ branches/2.1.0/catalog/admin/includes/gabarit/backup.listing.gab 2011-06-05 16:17:34 UTC (rev 3747)
@@ -1,49 +0,0 @@
-<?php
-/**
- @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
- @portion code Copyright (c) 2002 osCommerce
- @package osCSS-2 <www http://www.oscss.org>
- @version 2.1.0
- @date 03/04/11, 19:31
- @author oscim <mail aur...@os...> <www http://www.oscim.fr>
- @encode UTF-8
-*/
-?>
-<h3><?php echo __('heading title'); ?></h3>
-
- <div class="button_nav">
- <?php if ( (backup::$action != 'backup') ) echo '<a class="button" href="' . tep_href_link(backup::FILENAME, 'action=backup') . '">' . __('image backup') . '</a>'; ?>
- <?php if ( (backup::$action != 'restorelocal') && backup::$dir_ok==true ) echo ' <a class="button" href="' . tep_href_link(backup::FILENAME, 'action=restorelocal') . '">' . __('image restore file ext') . '</a>'; ?>
-
- <?php if (defined('DB_LAST_RESTORE')): ?>
- <?php echo __('text last restoration') . ' ' . DB_LAST_RESTORE . ' <a class="button" href="' .tep_href_link(FILENAME_BACKUP, 'action=forget') . '">' . __('text forget') . '</a>'; ?></td>
- <?php endif; ?>
- </div>
-
-<div class="box_uniq">
- <div class="box_left">
- <table class="dataTable">
- <thead>
- <tr>
- <th class="dataTableHeadingContent"><?php echo __('table heading title'); ?></th>
- <th class="tcenter"><?php echo __('table heading file date'); ?></th>
- <th class="tright"><?php echo __('table heading file size'); ?></th>
- <th class="tright"><?php echo __('table heading action'); ?></th>
- </tr>
- </thead>
- <tbody>
- <?php foreach(backup::$list as $item ): ?>
- <tr class="view parent dataTableRow ">
- <td><?php echo $item->title; ?></td>
- <td class="tcenter"><?php echo $item->date; ?></td>
- <td class="tright"><?php echo $item->size.' '.__('bytes'); ?></td>
- <td class="row_action"><?php echo $item->action; ?> </td>
- </tr>
- <?php endforeach; ?>
- </tbody>
- </table>
- </div>
- <div class="box_right">
- <?php backup::get_right_bar() ?>
- </div>
-</div>
\ No newline at end of file
Modified: branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/backup.txt
===================================================================
--- branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/backup.txt 2011-06-02 07:39:07 UTC (rev 3746)
+++ branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/backup.txt 2011-06-05 16:17:34 UTC (rev 3747)
@@ -4,24 +4,30 @@
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 03/04/11, 22:08
+ @date 05/06/11, 18:10
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
+*/
-*/
-$lang['heading title']="Gestionnaire de sauvegarde de la base de données";
+$lang['heading title backup']="Gestionnaire de sauvegarde de la base de données";
+
+
+/* listing */
$lang['table heading title']="Titre";
$lang['table heading file date']="Date";
$lang['table heading file size']="Taille";
$lang['table heading action']="Action";
+
$lang['image backup']='Sauvegarde';
-$lang['image restore']='Restaurer';
+$lang['image db restore']='Restaurer';
$lang['image restore file ext']='Restaurer un fichier téléchargé';
+
+/* backup */
$lang['text info heading new backup']="Nouvelle sauvegarde";
$lang['text info heading restore local']="Restaurer localement";
$lang['text info new backup']="N'interrompez pas le processus de sauvegarde. Celui-ci peut durer quelques minutes";
$lang['text info unpack']='(après extraction des fichiers de l\'archive)';
-$lang['text info restore']="<p>Ne pas interrompre le processus de restauration.<br />Plus le fichier est grand, plus cela prendra du temps!<br />Si possible, utilisez un client Mysql.<br />Par exemple :<br /><strong>mysql -h' . DB_SERVER . ' -u' . DB_SERVER_USERNAME . ' -p ' . DB_DATABASE . ' < %s </strong> %s</p>";
+$lang['text info restore']="<p>Ne pas interrompre le processus de restauration.<br />Plus le fichier est grand, plus cela prendra du temps!<br />Si possible, utilisez un client Mysql.<br />Par exemple :<br /><strong>mysql -h " . DB_SERVER . " -u " . DB_SERVER_USERNAME . " -p " . DB_DATABASE . " < %s </strong> %s</p>";
$lang['text info restore local']="Ne pas interrompre le processus de restauration.<br /><br />Plus le fichier est grand, plus cela prendra du temps!";
$lang['text info restore local raw file']="Le fichier transféré doit être au format SQL brut (texte).";
$lang['text info date']="Date :";
@@ -32,11 +38,24 @@
$lang['text info use no compression']="Pas de compression (Pur SQL)";
$lang['text info download only']="Télécharger seulement (ne pas le stocker côté serveur)";
$lang['text info best through https']="Préférez une connexion HTTPS";
-$lang['text delete intro']="Êtes-vous sûr de vouloir supprimer cette sauvegarde ?";
$lang['text no extension']="Aucune";
+$lang['faire un backup integrant la structure des tables']="faire un backup integrant la structure des tables.";
+$lang['ajouter commande pour vider les tables avant de restaurer']="Ajouter commande pour vider les tables avant de restaurer";
+
+
+
+/* delete */
+$lang['heading title delete backup']="Suppression d'une sauvegarde";
+$lang['text info delete backup']="Êtes-vous sûr de vouloir supprimer cette sauvegarde ?";
+
+
+
+/* other */
$lang['text backup directory']="Répertoire de sauvegarde :";
$lang['text last restoration']="Dernière restauration :";
$lang['text forget']="(<u>oublier</u>)";
+
+
$lang['error backup directory does not exist']="Erreur : Le répertoire de sauvegarde n\'existe pas. Merci de le préciser dans le fichier configure.php (cf DIR_FS_BACKUP)";
$lang['error backup directory not writeable']="Erreur : Impossible d'écrire dans le répertoire de sauvegarde : ".DIR_FS_BACKUP;
$lang['error download link not acceptable']="Erreur : Lien de téléchargement non disponible.";
@@ -45,6 +64,5 @@
$lang['success database restored']="Succès : La base de données a été restauré.";
$lang['success backup deleted']="Success : La base de données a été supprimé.";
-$lang['faire un backup integrant la structure des tables']="faire un backup integrant la structure des tables.";
-$lang['ajouter commande pour vider les tables avant de restaurer']="Ajouter commande pour vider les tables avant de restaurer";
+
?>
\ No newline at end of file
Modified: branches/2.1.0/catalog/admin/includes/modules/pages/backup.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/modules/pages/backup.php 2011-06-02 07:39:07 UTC (rev 3746)
+++ branches/2.1.0/catalog/admin/includes/modules/pages/backup.php 2011-06-05 16:17:34 UTC (rev 3747)
@@ -1,179 +1,179 @@
<?php if (!defined('HTTP_SERVER')) die('You can not access this file directly!');
/**
- @licence GPL 2005-2010 The osCSS developers - osCSS Open Source E-commerce
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 17/10/10, 13:36
+ @date 05/06/11, 18:10
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@class backup
*/
class backup
- implements ExtModPage/*, InterfacedTJsonS */, InterfaceModule {
+ extends ModTwo /// new abstract class for nextgen module
+ implements InterfaceModule
+ ,IntModTwo /// new interface module for nextgen module
+ ,ExtModConfig {
const FILENAME = FILENAME_BACKUP;
- public static $code;
- public static $action;
-
+ /**
+ @var string file
+ */
+ public static $Id;
+ /**
+ @var array list code action module
+ */
public static $list=array();
/**
- @param bool $dir_ok
+ @var bool $dir_ok
*/
public static $dir_ok;
+ /**
+ @var current object
+ */
+ public static $Info;
-
/**
class constructor
*/
public function __construct() {
- self::$code=__CLASS__;
-
- //! active datatable in ajax, precise les GET necessaire
-// define('JSONSTATMENT', 'mod=page&type='.self::$code);
-
-
+ self::GetConf();
}
+
/**
- Recuperation des nom de cols
+ @brief Load , adjust and define var environement exe for module
+ Is use in module and class abstract for init value config this module
*/
- private static function showh_list_fields_from($table){
- $table_fields = array();
- $fields_query = tep_db_query("show fields from " . $table);
- while ($fields = tep_db_fetch_array($fields_query)) {
- $table_fields[] = $fields;
- }
- return $table_fields;
- }
+ public static function GetConf(){
+ global $languages_id;
- public function check_action($actions){
- global $messageStack;
+ self::$code=__CLASS__;
- self::$action=$actions;
+ self::$action=(isset($_REQUEST['action'])? $_REQUEST['action'] : 'listing' );
+ self::$Id=(isset($_REQUEST['file'])? $_REQUEST['file'] : '' );
- switch (self::$action) {
- case 'forget':
- tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key = 'DB_LAST_RESTORE'");
+ /**
+ @remarks define var execution sql in GetDBValue()
+ */
+ self::$InitInfo['adjust']=array(
+ 'languages_id'=>$languages_id,
+ 'page'=>1,
+ 'rowbyp'=>10,
+ 'sOrder'=>'',
+ 'sWhere'=>'',
+ );
- $messageStack->add_session(__('success last restore cleared'), 'success');
- tep_redirect(tep_href_link(self::FILENAME));
- break;
- case 'backupnow':
- tep_set_time_limit(0);
- $backup_file = 'db_' . DB_DATABASE . '-' . date('YmdHis') . '.sql';
- $fp = fopen(DIR_FS_BACKUP . $backup_file, 'w');
- $schema = '# osCSS, Open Source E-Commerce Solutions' . "\n" .
- '# http://www.oscss.org' . "\n" .
- '#' . "\n" .
- '# Database Backup For ' . STORE_NAME . "\n" .
- '# Copyright (c) ' . date('Y') . ' ' . STORE_OWNER . "\n" .
- '#' . "\n" .
- '# Database: ' . DB_DATABASE . "\n" .
- '# Database Server: ' . DB_SERVER . "\n" .
- '#' . "\n" .
- '# Backup Date: ' . date(PHP_DATE_TIME_FORMAT) . "\n\n";
- fputs($fp, mb_convert_encoding($schema,mb_detect_encoding($schema),"UTF-8") );
+ /**
+ @remarks not load if not first init
+ */
+ if(defined('JSONSTATMENT')) return;
- $tables_query = tep_db_query('show tables');
- while ($tables = tep_db_fetch_array($tables_query)) {
- list(,$table) = each($tables);
+ //! active datatable in ajax, precise les GET necessaire
+ define('JSONSTATMENT', 'mod=page&type='.self::$code.
+ (isset(parent::$action)?'&action='.parent::$action : '' ).
+ (isset(self::$Id)?'&file='.self::$Id : '' )
+ );
- //! pas backup des vues
- if(substr($table, 0,4) !='view') {
+ /**
+ @remarks this define col theader title, and ajust html code
+ Just for Edit listing
+ */
+ self::$InitInfo['theader']['listing']=array(
+ 0 =>array('width'=>'15%','class'=>'tcenter', 'txt'=>__('table heading file date') ) ,
+ 1 => array('class'=>'tcenter', 'txt'=>__('table heading title') ),
+ 2 =>array('width'=>'2%','class'=>'tcenter', 'txt'=>__('table heading file size') ),
+ 3 =>array('width'=>'8%','class'=>'tcenter', 'txt'=>__('table heading action') ),
+ );
- $schema=$schemacol='';
- $table_fields=self:: showh_list_fields_from($table);
- $table_list=array();
+ /**
+ @remarks this define col in table, and if is possible sort
+ Just for Edit listing
+ */
+ self::$InitInfo['modele']['listing']=array(
+// 0 =>false,
+ 'date' =>true,
+ 'title' =>true,
+ 'poids'=>true,
+ 'action'=>false,
+ );
- //! recup nom des colonnes
- foreach($table_fields as $k=>$fields) {
- $table_list[]= $fields['Field'];
- $schemacol .= ' ' . $fields['Field'] . ' ' . $fields['Type'];
- if (strlen($fields['Default']) > 0) $schemacol .= ' default \'' . $fields['Default'] . '\'';
- if ($fields['Null'] != 'YES') $schemacol .= ' not null';
- if (isset($fields['Extra'])) $schemacol .= ' ' . $fields['Extra'];
- $schemacol .= ',' . "\n";
- }
+ /**
+ @remarks this define menu master module in page
+ */
+ if(self::$action =='' || self::$action =='listing'){
+ self::$InitInfo['MenuModule'][]=array(
+ 'type'=>'getLink',
+ 'format'=>'button_nav',
+ 'image'=>'',
+ 'cssclass'=>'',
+ 'title'=>__('image backup'),
+ 'url'=>tep_href_link(self::FILENAME, 'action=backup'),
+ );
+ self::$InitInfo['MenuModule'][]=array(
+ 'type'=>'getLink',
+ 'format'=>'button_nav',
+ 'image'=>'',
+ 'cssclass'=>'',
+ 'title'=>__('image restore file ext'),
+ 'url'=>tep_href_link(self::FILENAME, 'action=restorelocal'),
+ );
+ }
- //! structure
- if (isset($_POST['backup_structure']) && ($_POST['backup_structure'] == 'yes')) {
- $schema .= 'drop table if exists ' . $table . ';' . "\n" .
- 'create table ' . $table . ' (' . "\n";
- $schema .= $schemacol;
- $schema = preg_replace("/\n$/", '', $schema);
+ // check if the backup directory exists
+ self::$dir_ok = false;
+ if (!file_exists(DIR_FS_BACKUP)) mkdir(DIR_FS_BACKUP);
+ elseif (!is_dir(DIR_FS_BACKUP)) $messageStack->add(ERROR_BACKUP_DIRECTORY_DOES_NOT_EXIST, 'error');
+ else{
+ if (is_writeable(DIR_FS_BACKUP)) self::$dir_ok = true;
+ else $messageStack->add(ERROR_BACKUP_DIRECTORY_NOT_WRITEABLE, 'error');
+ }
- //! add the keys
- $index = array();
- $keys_query = tep_db_query("show keys from " . $table);
- while ($keys = tep_db_fetch_array($keys_query)) {
- $kname = $keys['Key_name'];
+ return true;
+ }
- if (!isset($index[$kname])) {
- $index[$kname] = array('unique' => !$keys['Non_unique'],
- 'columns' => array());
- }
- $index[$kname]['columns'][] = $keys['Column_name'];
- }
- while (list($kname, $info) = each($index)) {
- $schema .= ',' . "\n";
- $columns = implode($info['columns'], ', ');
+ public function check_action($actions){
+ global $messageStack;
- if ($kname == 'PRIMARY') {
- $schema .= ' PRIMARY KEY (' . $columns . ')';
- } elseif ($info['unique']) {
- $schema .= ' UNIQUE ' . $kname . ' (' . $columns . ')';
- } else {
- $schema .= ' KEY ' . $kname . ' (' . $columns . ')';
- }
- }
+ self::$action=$actions;
- $schema .= "\n" . ');' . "\n\n";
- fputs($fp, mb_convert_encoding($schema,mb_detect_encoding($schema),"UTF-8"));
- }
+ switch (self::$action) {
+ case 'forget':
+ tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key = 'DB_LAST_RESTORE'");
- if (isset($_POST['backup_truncate']) && ($_POST['backup_truncate'] == 'yes'))
- fputs($fp, mb_convert_encoding('TRUNCATE TABLE '.$table.' ;'. "\n\n",mb_detect_encoding($schema),"UTF-8"));
+ $messageStack->add_session(__('success last restore cleared'), 'success');
- //! data
- $rows_query = tep_db_query("select " . implode(',', $table_list) . " from " . $table);
- while ($rows = tep_db_fetch_array($rows_query)) {
- $schema = 'insert into ' . $table . ' (' . implode(', ', $table_list) . ') values (';
+ tep_redirect(tep_href_link(self::FILENAME));
+ break;
- reset($table_list);
- while (list(,$i) = each($table_list)) {
- if (!isset($rows[$i])) {
- $schema .= 'NULL, ';
- } elseif (tep_not_null($rows[$i])) {
- $row = addslashes($rows[$i]);
- $row = preg_replace("/\n#/", "\n".'\#', $row);
+ case 'backupnow':
- $schema .= '\'' . $row . '\', ';
- } else {
- $schema .= '\'\', ';
- }
- }
- $schema = preg_replace('/, $/', '', $schema) . ');' . "\n";
- fputs($fp, mb_convert_encoding($schema,mb_detect_encoding($schema),"UTF-8"));
+ $Go=new BackupProcess;
- }
- }
- }
+ if (isset($_POST['backup_structure']) && ($_POST['backup_structure'] == 'yes'))
+ $Go->UseStructure = true;
- fclose($fp);
+ if (isset($_POST['backup_truncate']) && ($_POST['backup_truncate'] == 'yes'))
+ $Go->EmptyTable = true;
+ $backup_file = 'db_' . DB_DATABASE . '-' . date('YmdHis') . '.sql';
+
+
+ $Go->Save($backup_file);
+
+
if (isset($_POST['download']) && ($_POST['download'] == 'yes')) {
switch ($_POST['compress']) {
case 'gzip':
@@ -200,121 +200,56 @@
}
tep_redirect(tep_href_link(self::FILENAME));
- break;
+ break;
+
+
case 'restorenow':
case 'restorelocalnow':
tep_set_time_limit(0);
if (self::$action == 'restorenow') {
- $read_from = $_GET['file'];
+ $read_from = tep_db_prepare_input($_GET['file']);
- if (file_exists(DIR_FS_BACKUP . $_GET['file'])) {
- $restore_file = DIR_FS_BACKUP . $_GET['file'];
- $extension = substr($_GET['file'], -3);
-
- if ( ($extension == 'sql') || ($extension == '.gz') || ($extension == 'zip') ) {
- switch ($extension) {
- case 'sql':
- $restore_from = $restore_file;
- $remove_raw = false;
- break;
- case '.gz':
- $restore_from = substr($restore_file, 0, -3);
- bun_gzip($restore_file,$restore_from);
- $remove_raw = true;
- break;
- }
-
- if (isset($restore_from) && file_exists($restore_from)/* && (filesize($restore_from) > 15000)*/) {
- $fd = fopen($restore_from, 'rb');
- $restore_query = fread($fd, filesize($restore_from));
- fclose($fd);
- }
- }
+ if (file_exists(DIR_FS_BACKUP .$read_from)) {
+ $restore_file = DIR_FS_BACKUP . $read_from;
}
- } elseif (self::$action == 'restorelocalnow') {
+ }
+ elseif (self::$action == 'restorelocalnow') {
$sql_file = new upload('sql_file',DIR_FS_BACKUP);
if ($sql_file->parse() == true) {
- $restore_query = fread(fopen($sql_file->tmp_filename, 'r'), filesize($sql_file->tmp_filename));
- $read_from = $sql_file->filename;
+ $read_from = basename($sql_file->filename);
+ $restore_file =$sql_file->filename;
}
}
+ $Go=new BackupProcess;
+
+ $restore_query=$Go->Restore($restore_file);
+
if (isset($restore_query)) {
$sql_array = array();
- $sql_length = strlen($restore_query);
- $pos = strpos($restore_query, ';');
- for ($i=$pos; $i<$sql_length; $i++) {
- if ($restore_query[0] == '#') {
- $restore_query = ltrim(substr($restore_query, strpos($restore_query, "\n")));
- $sql_length = strlen($restore_query);
- $i = strpos($restore_query, ';')-1;
- continue;
- }
- if (isset($restore_query[($i+1)]) && $restore_query[($i+1)] == "\n") {
- for ($j=($i+2); $j<$sql_length; $j++) {
- if (trim($restore_query[$j]) != '') {
- $next = substr($restore_query, $j, 6);
- if ($next[0] == '#') {
-// find out where the break position is so we can remove this line (#comment line)
- for ($k=$j; $k<$sql_length; $k++) {
- if ($restore_query[$k] == "\n") break;
- }
- $query = substr($restore_query, 0, $i+1);
- $restore_query = substr($restore_query, $k);
-// join the query before the comment appeared, with the rest of the dump
- $restore_query = $query . $restore_query;
- $sql_length = strlen($restore_query);
- $i = strpos($restore_query, ';')-1;
- continue 2;
- }
- break;
- }
- }
- if ($next == '') { // get the last insert query
- $next = 'insert';
- }
- if ( (preg_match('/create/i', $next)) || (preg_match('/insert/i', $next)) || (preg_match('/drop t/i', $next)) || (preg_match('/trunca/i', $next)) || (preg_match('/delete/i', $next)) ) {
- $next = '';
- $sql_array[] = substr($restore_query, 0, $i);
- $restore_query = ltrim(substr($restore_query, $i+1));
- $sql_length = strlen($restore_query);
- $i = strpos($restore_query, ';')-1;
- }
- }
- }
-
-
-
- for ($i=0, $n=sizeof($sql_array); $i<$n; $i++) {
-
- tep_db_query($sql_array[$i]);
- }
-
tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key = 'DB_LAST_RESTORE'");
tep_db_query("insert into " . TABLE_CONFIGURATION . " values ('', 'Last Database Restore', 'DB_LAST_RESTORE', '" . $read_from . "', 'Last database restore file', '6', '', '', now(), '', '','1')");
- if (isset($remove_raw) && ($remove_raw == true)) {
- unlink($restore_from);
- }
-
$messageStack->add_session(__('success database restored'), 'success');
}
- tep_redirect(tep_href_link(self::FILENAME));
- break;
+// tep_redirect(tep_href_link(self::FILENAME));
+ break;
+
+
case 'download':
$extension = substr($_GET['file'], -3);
-
+ $file= tep_db_prepare_input($_GET['file']);
if ( ($extension == 'zip') || ($extension == '.gz') || ($extension == 'sql') ) {
- if ($fp = fopen(DIR_FS_BACKUP . $_GET['file'], 'rb')) {
- $buffer = fread($fp, filesize(DIR_FS_BACKUP . $_GET['file']));
+ if ($fp = fopen(DIR_FS_BACKUP . $file, 'rb')) {
+ $buffer = fread($fp, filesize(DIR_FS_BACKUP . $file));
fclose($fp);
header('Content-type: application/x-octet-stream');
- header('Content-disposition: attachment; filename=' . $_GET['file']);
+ header('Content-disposition: attachment; filename=' .$file);
echo $buffer;
@@ -323,29 +258,22 @@
} else {
$messageStack->add(__('error download link not acceptable'), 'error');
}
- break;
+ break;
+
case 'deleteconfirm':
- if (strstr($_GET['file'], '..')) tep_redirect(tep_href_link(self::FILENAME));
+ $file= tep_db_prepare_input($_GET['file']);
+ if (strstr($file, '..')) tep_redirect(tep_href_link(self::FILENAME));
- tep_remove(DIR_FS_BACKUP . '/' . $_GET['file']);
+ tep_remove(DIR_FS_BACKUP . '/' . $file);
if (!$tep_remove_error) {
$messageStack->add_session(__('success backup deleted'), 'success');
tep_redirect(tep_href_link(self::FILENAME));
}
- break;
+ break;
}
- // check if the backup directory exists
- self::$dir_ok = false;
- if (!file_exists(DIR_FS_BACKUP)) mkdir(DIR_FS_BACKUP);
- elseif (!is_dir(DIR_FS_BACKUP)) $messageStack->add(ERROR_BACKUP_DIRECTORY_DOES_NOT_EXIST, 'error');
- else{
- if (is_writeable(DIR_FS_BACKUP)) self::$dir_ok = true;
- else $messageStack->add(ERROR_BACKUP_DIRECTORY_NOT_WRITEABLE, 'error');
- }
-
return self::$action;
}
@@ -353,154 +281,139 @@
}
- public static function load_db_values($ID){
- if(isset(self::$list[$ID])) return self::$list[$ID];
- }
+ /**
+ @fn backup::GetDBValue();
+ @brief return DB value adapted for current action
+ Use self::action for determine switch
+ @return
+ */
+ public static function GetDBValue(){
- public function display_view(){
- self::$list=self::tep_get_list();
- return tep_get_include_contents(self::$code.'.listing');
- }
-
-
- public static function get_right_bar(){
- global $backup;
- $heading = array();
$contents = array();
+ foreach (scan(DIR_FS_BACKUP) as $file ) {
+ $ext=substr($file,-3);
+ if (in_array($ext, array('sql','.gz','zip')) ) $contents[] = array('file'=>$file,'extension'=>$ext) ;
+ }
+ sort($contents);
- if(isset($_GET['file'])) $buInfo=self::load_db_values((string)$_GET['file']);
+ foreach ($contents as $entry ) {
+ $file_array['ext'] = $entry['extension'];
+ $file_array['file'] = $entry['file'];
+ $file_array['date'] = tep_datetime_short(date(PHP_DATE_TIME_FORMAT, filemtime(DIR_FS_BACKUP . $entry['file']))); ;
+ $file_array['size'] = number_format(filesize(DIR_FS_BACKUP . $entry['file'])) ;
+ switch ($entry['extension']) {
+ case 'zip': $file_array['compression'] = 'ZIP'; break;
+ case '.gz': $file_array['compression'] = 'GZIP'; break;
+ default: $file_array['compression'] = __('text no extension'); break;
+ }
+ self::$list[$entry['file']]=$file_array;
+ }
switch (self::$action) {
+ case 'backup':
+ case 'delete':
+ case 'restore':
+ if(!empty(self::$Id ) && isset(self::$list[self::$Id ]))
+ return self::$Info=self::$list[self::$Id];
+ break;
+ case 'listing':
+ default:
+ $li=$res=array();
+ foreach(self::$list as $item){
+ $li['date']=date(PHP_DATE_TIME_FORMAT, filemtime(DIR_FS_BACKUP . $item['file']));
+ $li['title']=$item['file'];
+ $li['size']=number_format(filesize(DIR_FS_BACKUP . $item['file']));
+ $li['action']=self::get_item_action($item);
+ $res[$item['file']]=new objectInfo($li);
+ }
- case 'restore':
- $heading[] = array('text' => $buInfo->date );
+ return $res;
+ }
+ }
- $contents[] = array('text' => tep_break_string(sprintf(__('text info restore'), DIR_FS_BACKUP . (($buInfo->compression != __('text no extension')) ? substr($buInfo->file, 0, strrpos($buInfo->file, '.')) : $buInfo->file), ($buInfo->compression != __('text no extension')) ? __('text info unpack') : ''), 35, ' '));
- $contents[] = array('class' => 'button_nav', 'text' => '<a class="button" href="' . tep_href_link(self::FILENAME, 'file=' . $buInfo->file . '&action=restorenow') . '">' . __('image restore') . '</a> <a class="button" href="' . tep_href_link(self::FILENAME, 'file=' . $buInfo->file) . '">' . IMAGE_CANCEL . '</a>');
- break;
- case 'restorelocal':
- $heading[] = array('text' => __('text info heading restore local') );
- $contents = array('form' => tep_draw_form('restore', self::FILENAME, 'action=restorelocalnow', 'post', 'enctype="multipart/form-data"'));
- $contents[] = array('text' => __('text info restore local'));
- $contents[] = array('text' => __('text info best through https'));
- $contents[] = array('class' => 'block_input','text' => tep_draw_file_field('sql_file'));
- $contents[] = array('text' => __('text info restore local raw file'));
- $contents[] = array('class' => 'button_nav', 'text' => tep_image_submit('button_restore.gif', __('image restore')) . ' <a class="button" href="' . tep_href_link(self::FILENAME) . '">' . IMAGE_CANCEL . '</a>');
- break;
- case 'delete':
- $heading[] = array('text' => $buInfo->date );
- $contents = array('form' => tep_draw_form('delete', self::FILENAME, 'file=' . $buInfo->file . '&action=deleteconfirm'));
- $contents[] = array('text' => __('text delete intro'));
- $contents[] = array('text' => '<strong>' . $buInfo->file . '</strong>');
- $contents[] = array('class' => 'button_nav', 'text' => tep_image_submit('button_delete.gif', IMAGE_DELETE) . ' <a class="button" href="' . tep_href_link(self::FILENAME, 'file=' . $buInfo->file) . '">' . IMAGE_CANCEL . '</a>');
+ public function display_view(){
+ switch (parent::$action) {
+ case 'restorelocal':
+ case 'restore':
+ case 'backup':
+ self::load_db_values(self::$Id);
+ return MGabCont::CallGab(parent::$action,__FUNCTION__,__CLASS__);
break;
- case 'detail':
- if (isset($buInfo) && is_object($buInfo)) {
- $heading[] = array('text' => $buInfo->date );
-
- $contents[] = array('class' => 'button_nav', 'text' => '<a class="button" href="' . tep_href_link(self::FILENAME, 'file=' . $buInfo->file . '&action=restore') . '">' .__('image restore') . '</a> <a class="button" href="' . tep_href_link(self::FILENAME, 'file=' . $buInfo->file . '&action=delete') . '">' . IMAGE_DELETE . '</a>');
- $contents[] = array('text' => __('text info date').' '. $buInfo->date);
- $contents[] = array('text' => __('text info size') .' '. $buInfo->size);
- $contents[] = array('text' => __('text info compression') .' '. $buInfo->compression);
- }
+ case 'delete':
+ self::load_db_values(self::$Id);
+ /// use master gabarit
+ MGabCont::SetCurrentName(__CLASS__);
+ return MGabCont::CallGab(parent::$action,__FUNCTION__,self::MASTER);
break;
- case 'backup':
- default:
- $heading[] = array('text' => __('text info heading new backup') );
+ case 'listing':
+ default:
+ self::$list=self::tep_get_list();
+ /// use master gabarit
+ MGabCont::SetCurrentName(__CLASS__);
+ return MGabCont::CallGab('listing',__FUNCTION__,self::MASTER);
+ }
+ }
- $contents = array('form' => tep_draw_form('backup', self::FILENAME, 'action=backupnow'));
- $contents[] = array('text' => __('text info new backup'));
- $contents[] = array('class' => 'block_input','text' => tep_draw_radio_field('compress', 'no', 'no', true) . ' ' . __('text info use no compression') );
+// public static function get_right_bar()
+// {
+// // case 'detail':
+// // if (isset($buInfo) && is_object($buInfo)) {
+// // $heading[] = array('text' => $buInfo->date );
+// //
+// // $contents[] = array('class' => 'button_nav', 'text' => '<a class="button" href="' . tep_href_link(self::FILENAME, 'file=' . $buInfo->file . '&action=restore') . '">' .__('image restore') . '</a> <a class="button" href="' . tep_href_link(self::FILENAME, 'file=' . $buInfo->file . '&action=delete') . '">' . IMAGE_DELETE . '</a>');
+// // $contents[] = array('text' => __('text info date').' '. $buInfo->date);
+// // $contents[] = array('text' => __('text info size') .' '. $buInfo->size);
+// // $contents[] = array('text' => __('text info compression') .' '. $buInfo->compression);
+// // }
+// // break;
- if (@file_exists(LOCAL_EXE_ZIP)) $contents[] = array('class' => 'block_input','text' => tep_draw_radio_field('compress', 'zip', 'zip') . ' ' . __('text_info_use_zip'));
- if (function_exists('gzopen'))$contents[] = array('class' => 'block_input','text' => tep_draw_radio_field('compress', 'gzip', 'gzip') . ' ' . __('text info use gzip'));
+// }
- $contents[] = array('class' => 'block_input','text' => tep_draw_checkbox_field('backup_structure','', 'yes') . ' ' . __('faire un backup integrant la structure des tables'));
- $contents[] = array('class' => 'block_input','text' => tep_draw_checkbox_field('backup_truncate','', 'yes') . ' ' . __('ajouter commande pour vider les tables avant de restaurer'));
- if (self::$dir_ok == true)
- $contents[] = array('class' => 'block_input','text' => tep_draw_checkbox_field('download','', 'yes') . ' ' . __('text info download only'));
- else
- $contents[] = array('class' => 'block_input','text' => tep_draw_radio_field('download', '', 'yes', true) . ' ' . __('text info download only'));
- $contents[] = array('text' => __('text info best through https'));
- $contents[] = array('class' => 'button_nav', 'text' => tep_image_submit('button_backup.gif', __('image backup')) . ' <a class="button" href="' . tep_href_link(self::FILENAME) . '">' . IMAGE_CANCEL . '</a>');
- break;
- }
- if ( (tep_not_null($heading)) && (tep_not_null($contents)) ) {
- $box = new box;
- echo $box->infoBox($heading, $contents);
-
- }
- }
-
- /** public static InterfacedTJsonS */
-
- private static function get_item_action($array){
- $s = '<span class="view fils fleft">'.
- '<a href="' . tep_href_link(self::FILENAME, 'action=download&file=' . $array['file']) . '">' . tep_image(DIR_WS_ICONS . 'file_download.gif', ICON_FILE_DOWNLOAD) . '</a>'.
-// '<a class="buttonimg" href="' . tep_href_link(self::FILENAME, 'cID=' . $array['file'] . '&action=delete') . '">' . tep_image(DIR_WS_ICONS . 'icon_delete.png',IMAGE_DELETE ). '</a>'.
- '</span>'.
- '<span class="fright">';
- if (isset($_GET['file']) && ($array['file'] == (string)$_GET['file'])) $s .= tep_image(DIR_WS_ICONS . 'icon_arrow_right.gif', '');
- else $s .= '<a href="' . tep_href_link(self::FILENAME, 'file=' . $array['file'].'&action=detail') . '">' . tep_image(DIR_WS_ICONS . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>';
- $s .='</span>';
- return $s;
- }
-
- public static function tep_get_modele(){
- return array( 'title',
- 'date',
- 'poids'
- );
- }
-
public static function tep_get_list($page=1,$rowbyp=10,$sOrder='',$sWhere='',$options=''){
global $query_numrows;
- $DB=Database::getInstance();
+ /// @remarks force load conf
+ self::GetConf();
- $contents = array();
- foreach (scan(DIR_FS_BACKUP) as $file ) {
- $ext=substr($file,-3);
- if (in_array($ext, array('sql','.gz','zip')) ) $contents[] = array('file'=>$file,'extension'=>$ext) ;
- }
- sort($contents);
+ $res=array();
- foreach ($contents as $entry ) {
- $file_array['ext'] = $entry['extension'];
- $file_array['file'] = $entry['file'];
- $file_array['date'] = tep_datetime_short(date(PHP_DATE_TIME_FORMAT, filemtime(DIR_FS_BACKUP . $entry['file']))); ;
- $file_array['size'] = number_format(filesize(DIR_FS_BACKUP . $entry['file'])) ;
- switch ($entry['extension']) {
- case 'zip': $file_array['compression'] = 'ZIP'; break;
- case '.gz': $file_array['compression'] = 'GZIP'; break;
- default: $file_array['compression'] = __('text no extension'); break;
- }
- self::$list[]=$file_array;
- }
+ /**
+ @remarks adjust param for sql requete
+ */
+ self::$InitInfo['adjust']['page']=$page;
+ self::$InitInfo['adjust']['rowbyp']=$rowbyp;
+ self::$InitInfo['adjust']['sOrder']=$sOrder;
+ self::$InitInfo['adjust']['sWhere']=$sWhere;
+ self::$InitInfo['adjust']['options']=$options;
+ $res = self::GetDBValue();
+ $query_numrows = count($res);
- $li=$res=array();
- foreach(self::$list as $item){
-// foreach(self::tep_get_modele() as $k) $li[$k]=$item[$k];
- $li=$item;
- $li['title']=$item['file'];
- $li['date']=date(PHP_DATE_TIME_FORMAT, filemtime(DIR_FS_BACKUP . $item['file']));
- $li['size']=number_format(filesize(DIR_FS_BACKUP . $item['file']));
- $li['action']=self::get_item_action($item);
- $res[$item['file']]=new objectInfo($li);
- }
+ return self::$list=$res;
+ }
- return $res;
+
+ /** public static InterfacedTJsonS */
+
+ private static function get_item_action($item){
+ return sprintf(
+ CsrtAction::getFormat('row_action'),
+ sprintf(CsrtAction::getLink('row_action_right', ICON_FILE_DOWNLOAD, 'dbdownload'), '', tep_href_link(self::FILENAME, 'file=' . $item['file'] . '&action=download') ,'' )
+ ,
+ sprintf(CsrtAction::getLink('row_action_right', __('image db restore'), 'dbrestore'), 'fancy', tep_href_link(self::FILENAME, 'file=' . $item['file'] . '&action=restore') ,'' ).
+ sprintf(CsrtAction::getLink('row_action_right', IMAGE_DELETE, 'dbdelete'), 'fancy', tep_href_link(self::FILENAME, 'file=' . $item['file'] . '&action=delete') ,'' )
+ );
}
+
/** Interface module */
function check() { return false; }
Modified: branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml
===================================================================
--- branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml 2011-06-02 07:39:07 UTC (rev 3746)
+++ branches/2.1.0/catalog/admin/includes/template/defaut/data/icon_set.xml 2011-06-05 16:17:34 UTC (rev 3747)
@@ -39,6 +39,11 @@
<inventaire_update>cog_add.png</inventaire_update>
<inventaire_export>arrow_switch.png</inventaire_export>
+ <dbdelete>icon_db_remove.png</dbdelete>
+ <dbrestore>icon_db_restore.png</dbrestore>
+ <dbupload>icon_db_upload.png</dbupload>
+ <dbdownload>icon_db_download.png</dbdownload>
+
<package_installed>icon_edit.png</package_installed>
<package_a_remove>icon_edit.png</package_a_remove>
<package_config>icon_edit.png</package_config>
Modified: branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml
===================================================================
--- branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml 2011-06-02 07:39:07 UTC (rev 3746)
+++ branches/2.1.0/catalog/admin/includes/template/oscss/data/icon_set.xml 2011-06-05 16:17:34 UTC (rev 3747)
@@ -39,6 +39,11 @@
<inventaire_update>cog_add.png</inventaire_update>
<inventaire_export>arrow_switch.png</inventaire_export>
+ <dbdelete>icon_db_remove.png</dbdelete>
+ <dbrestore>icon_db_restore.png</dbrestore>
+ <dbupload>icon_db_upload.png</dbupload>
+ <dbdownload>icon_db_download.png</dbdownload>
+
<package_installed>icon_edit.png</package_installed>
<package_a_remove>icon_edit.png</package_a_remove>
<package_config>icon_edit.png</package_config>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <os...@us...> - 2011-06-02 07:39:16
|
Revision: 3746
http://oscss.svn.sourceforge.net/oscss/?rev=3746&view=rev
Author: oscim
Date: 2011-06-02 07:39:07 +0000 (Thu, 02 Jun 2011)
Log Message:
-----------
mise a jour plugin datatable
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/javascript/jquery.dataTables.min.js
Modified: branches/2.1.0/catalog/admin/includes/javascript/jquery.dataTables.min.js
===================================================================
--- branches/2.1.0/catalog/admin/includes/javascript/jquery.dataTables.min.js 2011-06-02 07:18:13 UTC (rev 3745)
+++ branches/2.1.0/catalog/admin/includes/javascript/jquery.dataTables.min.js 2011-06-02 07:39:07 UTC (rev 3746)
@@ -1,136 +1,143 @@
/*
* File: jquery.dataTables.min.js
- * Version: 1.7.0
+ * Version: 1.7.6
* Author: Allan Jardine (www.sprymedia.co.uk)
* Info: www.datatables.net
+ *
+ * Copyright 2008-2011 Allan Jardine, all rights reserved.
*
- * Copyright 2008-2010 Allan Jardine, all rights reserved.
- *
* This source file is free software, under either the GPL v2 license or a
* BSD style license, as supplied with this software.
- *
- * This source file is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ *
+ * This source file is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details.
*/
-(function(j,Y,p){j.fn.dataTableSettings=[];var E=j.fn.dataTableSettings;j.fn.dataTableExt={};var m=j.fn.dataTableExt;m.sVersion="1.7.0";m.sErrMode="alert";m.iApiIndex=0;m.oApi={};m.afnFiltering=[];m.aoFeatures=[];m.ofnSearch={};m.afnSortData=[];m.oStdClasses={sPagePrevEnabled:"paginate_enabled_previous",sPagePrevDisabled:"paginate_disabled_previous",sPageNextEnabled:"paginate_enabled_next",sPageNextDisabled:"paginate_disabled_next",sPageJUINext:"",sPageJUIPrev:"",sPageButton:"paginate_button",sPageButtonActive:"paginate_active",
+(function(j,ra,p){j.fn.dataTableSettings=[];var D=j.fn.dataTableSettings;j.fn.dataTableExt={};var n=j.fn.dataTableExt;n.sVersion="1.7.6";n.sErrMode="alert";n.iApiIndex=0;n.oApi={};n.afnFiltering=[];n.aoFeatures=[];n.ofnSearch={};n.afnSortData=[];n.oStdClasses={sPagePrevEnabled:"paginate_enabled_previous",sPagePrevDisabled:"paginate_disabled_previous",sPageNextEnabled:"paginate_enabled_next",sPageNextDisabled:"paginate_disabled_next",sPageJUINext:"",sPageJUIPrev:"",sPageButton:"paginate_button",sPageButtonActive:"paginate_active",
sPageButtonStaticDisabled:"paginate_button",sPageFirst:"first",sPagePrevious:"previous",sPageNext:"next",sPageLast:"last",sStripOdd:"odd",sStripEven:"even",sRowEmpty:"dataTables_empty",sWrapper:"dataTables_wrapper",sFilter:"dataTables_filter",sInfo:"dataTables_info",sPaging:"dataTables_paginate paging_",sLength:"dataTables_length",sProcessing:"dataTables_processing",sSortAsc:"sorting_asc",sSortDesc:"sorting_desc",sSortable:"sorting",sSortableAsc:"sorting_asc_disabled",sSortableDesc:"sorting_desc_disabled",
-sSortableNone:"sorting_disabled",sSortColumn:"sorting_",sSortJUIAsc:"",sSortJUIDesc:"",sSortJUI:"",sSortJUIAscAllowed:"",sSortJUIDescAllowed:"",sScrollWrapper:"dataTables_scroll",sScrollHead:"dataTables_scrollHead",sScrollHeadInner:"dataTables_scrollHeadInner",sScrollBody:"dataTables_scrollBody",sScrollFoot:"dataTables_scrollFoot",sScrollFootInner:"dataTables_scrollFootInner",sFooterTH:""};m.oJUIClasses={sPagePrevEnabled:"fg-button ui-state-default ui-corner-left",sPagePrevDisabled:"fg-button ui-state-default ui-corner-left ui-state-disabled",
-sPageNextEnabled:"fg-button ui-state-default ui-corner-right",sPageNextDisabled:"fg-button ui-state-default ui-corner-right ui-state-disabled",sPageJUINext:"ui-icon ui-icon-circle-arrow-e",sPageJUIPrev:"ui-icon ui-icon-circle-arrow-w",sPageButton:"fg-button ui-state-default",sPageButtonActive:"fg-button ui-state-default ui-state-disabled",sPageButtonStaticDisabled:"fg-button ui-state-default ui-state-disabled",sPageFirst:"first ui-corner-tl ui-corner-bl",sPagePrevious:"previous",sPageNext:"next",
-sPageLast:"last ui-corner-tr ui-corner-br",sStripOdd:"odd",sStripEven:"even",sRowEmpty:"dataTables_empty",sWrapper:"dataTables_wrapper",sFilter:"dataTables_filter",sInfo:"dataTables_info",sPaging:"dataTables_paginate fg-buttonset fg-buttonset-multi paging_",sLength:"dataTables_length",sProcessing:"dataTables_processing",sSortAsc:"ui-state-default",sSortDesc:"ui-state-default",sSortable:"ui-state-default",sSortableAsc:"ui-state-default",sSortableDesc:"ui-state-default",sSortableNone:"ui-state-default",
-sSortColumn:"sorting_",sSortJUIAsc:"css_right ui-icon ui-icon-triangle-1-n",sSortJUIDesc:"css_right ui-icon ui-icon-triangle-1-s",sSortJUI:"css_right ui-icon ui-icon-carat-2-n-s",sSortJUIAscAllowed:"css_right ui-icon ui-icon-carat-1-n",sSortJUIDescAllowed:"css_right ui-icon ui-icon-carat-1-s",sScrollWrapper:"dataTables_scroll",sScrollHead:"dataTables_scrollHead ui-state-default",sScrollHeadInner:"dataTables_scrollHeadInner",sScrollBody:"dataTables_scrollBody",sScrollFoot:"dataTables_scrollFoot ui-state-default",
-sScrollFootInner:"dataTables_scrollFootInner",sFooterTH:"ui-state-default"};m.oPagination={two_button:{fnInit:function(g,l,q){var r,u,y;if(g.bJUI){r=p.createElement("a");u=p.createElement("a");y=p.createElement("span");y.className=g.oClasses.sPageJUINext;u.appendChild(y);y=p.createElement("span");y.className=g.oClasses.sPageJUIPrev;r.appendChild(y)}else{r=p.createElement("div");u=p.createElement("div")}r.className=g.oClasses.sPagePrevDisabled;u.className=g.oClasses.sPageNextDisabled;r.title=g.oLanguage.oPaginate.sPrevious;
-u.title=g.oLanguage.oPaginate.sNext;l.appendChild(r);l.appendChild(u);j(r).click(function(){g.oApi._fnPageChange(g,"previous")&&q(g)});j(u).click(function(){g.oApi._fnPageChange(g,"next")&&q(g)});j(r).bind("selectstart",function(){return false});j(u).bind("selectstart",function(){return false});if(g.sTableId!==""&&typeof g.aanFeatures.p=="undefined"){l.setAttribute("id",g.sTableId+"_paginate");r.setAttribute("id",g.sTableId+"_previous");u.setAttribute("id",g.sTableId+"_next")}},fnUpdate:function(g){if(g.aanFeatures.p)for(var l=
-g.aanFeatures.p,q=0,r=l.length;q<r;q++)if(l[q].childNodes.length!==0){l[q].childNodes[0].className=g._iDisplayStart===0?g.oClasses.sPagePrevDisabled:g.oClasses.sPagePrevEnabled;l[q].childNodes[1].className=g.fnDisplayEnd()==g.fnRecordsDisplay()?g.oClasses.sPageNextDisabled:g.oClasses.sPageNextEnabled}}},iFullNumbersShowPages:5,full_numbers:{fnInit:function(g,l,q){var r=p.createElement("span"),u=p.createElement("span"),y=p.createElement("span"),C=p.createElement("span"),w=p.createElement("span");r.innerHTML=
-g.oLanguage.oPaginate.sFirst;u.innerHTML=g.oLanguage.oPaginate.sPrevious;C.innerHTML=g.oLanguage.oPaginate.sNext;w.innerHTML=g.oLanguage.oPaginate.sLast;var x=g.oClasses;r.className=x.sPageButton+" "+x.sPageFirst;u.className=x.sPageButton+" "+x.sPagePrevious;C.className=x.sPageButton+" "+x.sPageNext;w.className=x.sPageButton+" "+x.sPageLast;l.appendChild(r);l.appendChild(u);l.appendChild(y);l.appendChild(C);l.appendChild(w);j(r).click(function(){g.oApi._fnPageChange(g,"first")&&q(g)});j(u).click(function(){g.oApi._fnPageChange(g,
-"previous")&&q(g)});j(C).click(function(){g.oApi._fnPageChange(g,"next")&&q(g)});j(w).click(function(){g.oApi._fnPageChange(g,"last")&&q(g)});j("span",l).bind("mousedown",function(){return false}).bind("selectstart",function(){return false});if(g.sTableId!==""&&typeof g.aanFeatures.p=="undefined"){l.setAttribute("id",g.sTableId+"_paginate");r.setAttribute("id",g.sTableId+"_first");u.setAttribute("id",g.sTableId+"_previous");C.setAttribute("id",g.sTableId+"_next");w.setAttribute("id",g.sTableId+"_last")}},
-fnUpdate:function(g,l){if(g.aanFeatures.p){var q=m.oPagination.iFullNumbersShowPages,r=Math.floor(q/2),u=Math.ceil(g.fnRecordsDisplay()/g._iDisplayLength),y=Math.ceil(g._iDisplayStart/g._iDisplayLength)+1,C="",w,x=g.oClasses;if(u<q){r=1;w=u}else if(y<=r){r=1;w=q}else if(y>=u-r){r=u-q+1;w=u}else{r=y-Math.ceil(q/2)+1;w=r+q-1}for(q=r;q<=w;q++)C+=y!=q?'<span class="'+x.sPageButton+'">'+q+"</span>":'<span class="'+x.sPageButtonActive+'">'+q+"</span>";w=g.aanFeatures.p;var z,D=function(){g._iDisplayStart=
-(this.innerHTML*1-1)*g._iDisplayLength;l(g);return false},L=function(){return false};q=0;for(r=w.length;q<r;q++)if(w[q].childNodes.length!==0){z=w[q].childNodes[2];z.innerHTML=C;j("span",z).click(D).bind("mousedown",L).bind("selectstart",L);z=w[q].getElementsByTagName("span");z=[z[0],z[1],z[z.length-2],z[z.length-1]];j(z).removeClass(x.sPageButton+" "+x.sPageButtonActive+" "+x.sPageButtonStaticDisabled);if(y==1){z[0].className+=" "+x.sPageButtonStaticDisabled;z[1].className+=" "+x.sPageButtonStaticDisabled}else{z[0].className+=
-" "+x.sPageButton;z[1].className+=" "+x.sPageButton}if(u===0||y==u||g._iDisplayLength==-1){z[2].className+=" "+x.sPageButtonStaticDisabled;z[3].className+=" "+x.sPageButtonStaticDisabled}else{z[2].className+=" "+x.sPageButton;z[3].className+=" "+x.sPageButton}}}}}};m.oSort={"string-asc":function(g,l){g=g.toLowerCase();l=l.toLowerCase();return g<l?-1:g>l?1:0},"string-desc":function(g,l){g=g.toLowerCase();l=l.toLowerCase();return g<l?1:g>l?-1:0},"html-asc":function(g,l){g=g.replace(/<.*?>/g,"").toLowerCase();
-l=l.replace(/<.*?>/g,"").toLowerCase();return g<l?-1:g>l?1:0},"html-desc":function(g,l){g=g.replace(/<.*?>/g,"").toLowerCase();l=l.replace(/<.*?>/g,"").toLowerCase();return g<l?1:g>l?-1:0},"date-asc":function(g,l){g=Date.parse(g);l=Date.parse(l);if(isNaN(g)||g==="")g=Date.parse("01/01/1970 00:00:00");if(isNaN(l)||l==="")l=Date.parse("01/01/1970 00:00:00");return g-l},"date-desc":function(g,l){g=Date.parse(g);l=Date.parse(l);if(isNaN(g)||g==="")g=Date.parse("01/01/1970 00:00:00");if(isNaN(l)||l===
-"")l=Date.parse("01/01/1970 00:00:00");return l-g},"numeric-asc":function(g,l){return(g=="-"||g===""?0:g*1)-(l=="-"||l===""?0:l*1)},"numeric-desc":function(g,l){return(l=="-"||l===""?0:l*1)-(g=="-"||g===""?0:g*1)}};m.aTypes=[function(g){if(g.length===0)return"numeric";var l,q=false;l=g.charAt(0);if("0123456789-".indexOf(l)==-1)return null;for(var r=1;r<g.length;r++){l=g.charAt(r);if("0123456789.".indexOf(l)==-1)return null;if(l=="."){if(q)return null;q=true}}return"numeric"},function(g){var l=Date.parse(g);
-if(l!==null&&!isNaN(l)||g.length===0)return"date";return null},function(g){if(g.indexOf("<")!=-1&&g.indexOf(">")!=-1)return"html";return null}];m.fnVersionCheck=function(g){var l=function(w,x){for(;w.length<x;)w+="0";return w},q=m.sVersion.split(".");g=g.split(".");for(var r="",u="",y=0,C=g.length;y<C;y++){r+=l(q[y],3);u+=l(g[y],3)}return parseInt(r,10)>=parseInt(u,10)};m._oExternConfig={iNextUnique:0};j.fn.dataTable=function(g){function l(){this.fnRecordsTotal=function(){return this.oFeatures.bServerSide?
-this._iRecordsTotal:this.aiDisplayMaster.length};this.fnRecordsDisplay=function(){return this.oFeatures.bServerSide?this._iRecordsDisplay:this.aiDisplay.length};this.fnDisplayEnd=function(){return this.oFeatures.bServerSide?this.oFeatures.bPaginate===false?this._iDisplayStart+this.aiDisplay.length:Math.min(this._iDisplayStart+this._iDisplayLength,this._iDisplayStart+this.aiDisplay.length):this._iDisplayEnd};this.sInstance=this.oInstance=null;this.oFeatures={bPaginate:true,bLengthChange:true,bFilter:true,
-bSort:true,bInfo:true,bAutoWidth:true,bProcessing:false,bSortClasses:true,bStateSave:false,bServerSide:false};this.oScroll={sX:"",sXInner:"",sY:"",bCollapse:false,iBarWidth:0};this.aanFeatures=[];this.oLanguage={sProcessing:"Processing...",sLengthMenu:"Show _MENU_ entries",sZeroRecords:"No matching records found",sEmptyTable:"No data available in table",sInfo:"Showing _START_ to _END_ of _TOTAL_ entries",sInfoEmpty:"Showing 0 to 0 of 0 entries",sInfoFiltered:"(filtered from _MAX_ total entries)",
-sInfoPostFix:"",sSearch:"Search:",sUrl:"",oPaginate:{sFirst:"First",sPrevious:"Previous",sNext:"Next",sLast:"Last"}};this.aoData=[];this.aiDisplay=[];this.aiDisplayMaster=[];this.aoColumns=[];this.iNextId=0;this.asDataSearch=[];this.oPreviousSearch={sSearch:"",bRegex:false,bSmart:true};this.aoPreSearchCols=[];this.aaSorting=[[0,"asc",0]];this.aaSortingFixed=null;this.asStripClasses=[];this.asDestoryStrips=[];this.fnFooterCallback=this.fnHeaderCallback=this.fnRowCallback=null;this.aoDrawCallback=[];
-this.fnInitComplete=null;this.sTableId="";this.nTableWrapper=this.nTBody=this.nTFoot=this.nTHead=this.nTable=null;this.iDefaultSortIndex=0;this.bInitialised=false;this.aoOpenRows=[];this.sDom="lfrtip";this.sPaginationType="two_button";this.iCookieDuration=7200;this.sCookiePrefix="SpryMedia_DataTables_";this.sAjaxSource=null;this.bAjaxDataGet=true;this.fnServerData=function(a,b,c){j.ajax({url:a,data:b,success:c,dataType:"json",cache:false,error:function(){alert("DataTables warning: JSON data from server failed to load or be parsed. This is most likely to be caused by a JSON formatting error.")}})};
-this.fnFormatNumber=function(a){if(a<1E3)return a;else{var b=a+"";a=b.split("");var c="";b=b.length;for(var d=0;d<b;d++){if(d%3===0&&d!==0)c=","+c;c=a[b-d-1]+c}}return c};this.aLengthMenu=[10,25,50,100];this.iDraw=0;this.iDrawError=-1;this._iDisplayLength=10;this._iDisplayStart=0;this._iDisplayEnd=10;this._iRecordsDisplay=this._iRecordsTotal=0;this.bJUI=false;this.oClasses=m.oStdClasses;this.bSorted=this.bFiltered=false;this.oInit=null}function q(a){return function(){var b=[B(this[m.iApiIndex])].concat(Array.prototype.slice.call(arguments));
-return m.oApi[a].apply(this,b)}}function r(a){if(a.bInitialised===false)setTimeout(function(){r(a)},200);else{na(a);z(a);if(a.oFeatures.bSort)O(a);else{a.aiDisplay=a.aiDisplayMaster.slice();F(a);D(a)}if(a.sAjaxSource!==null&&!a.oFeatures.bServerSide){K(a,true);a.fnServerData.call(a.oInstance,a.sAjaxSource,null,function(b){for(var c=0;c<b.aaData.length;c++)w(a,b.aaData[c]);a.iInitDisplayStart=a._iDisplayStart;if(a.oFeatures.bSort)O(a);else{a.aiDisplay=a.aiDisplayMaster.slice();F(a);D(a)}K(a,false);
-typeof a.fnInitComplete=="function"&&a.fnInitComplete.call(a.oInstance,a,b)})}else{typeof a.fnInitComplete=="function"&&a.fnInitComplete.call(a.oInstance,a);a.oFeatures.bServerSide||K(a,false)}}}function u(a,b,c){n(a.oLanguage,b,"sProcessing");n(a.oLanguage,b,"sLengthMenu");n(a.oLanguage,b,"sEmptyTable");n(a.oLanguage,b,"sZeroRecords");n(a.oLanguage,b,"sInfo");n(a.oLanguage,b,"sInfoEmpty");n(a.oLanguage,b,"sInfoFiltered");n(a.oLanguage,b,"sInfoPostFix");n(a.oLanguage,b,"sSearch");if(typeof b.oPaginate!=
-"undefined"){n(a.oLanguage.oPaginate,b.oPaginate,"sFirst");n(a.oLanguage.oPaginate,b.oPaginate,"sPrevious");n(a.oLanguage.oPaginate,b.oPaginate,"sNext");n(a.oLanguage.oPaginate,b.oPaginate,"sLast")}typeof b.sEmptyTable=="undefined"&&typeof b.sZeroRecords!="undefined"&&n(a.oLanguage,b,"sZeroRecords","sEmptyTable");c&&r(a)}function y(a,b){a.aoColumns[a.aoColumns.length++]={sType:null,_bAutoType:true,bVisible:true,bSearchable:true,bSortable:true,asSorting:["asc","desc"],sSortingClass:a.oClasses.sSortable,
-sSortingClassJUI:a.oClasses.sSortJUI,sTitle:b?b.innerHTML:"",sName:"",sWidth:null,sWidthOrig:null,sClass:null,fnRender:null,bUseRendered:true,iDataSort:a.aoColumns.length-1,sSortDataType:"std",nTh:b?b:p.createElement("th"),nTf:null};b=a.aoColumns.length-1;if(typeof a.aoPreSearchCols[b]=="undefined"||a.aoPreSearchCols[b]===null)a.aoPreSearchCols[b]={sSearch:"",bRegex:false,bSmart:true};else{if(typeof a.aoPreSearchCols[b].bRegex=="undefined")a.aoPreSearchCols[b].bRegex=true;if(typeof a.aoPreSearchCols[b].bSmart==
-"undefined")a.aoPreSearchCols[b].bSmart=true}C(a,b,null)}function C(a,b,c){b=a.aoColumns[b];if(typeof c!="undefined"&&c!==null){if(typeof c.sType!="undefined"){b.sType=c.sType;b._bAutoType=false}n(b,c,"bVisible");n(b,c,"bSearchable");n(b,c,"bSortable");n(b,c,"sTitle");n(b,c,"sName");n(b,c,"sWidth");n(b,c,"sWidth","sWidthOrig");n(b,c,"sClass");n(b,c,"fnRender");n(b,c,"bUseRendered");n(b,c,"iDataSort");n(b,c,"asSorting");n(b,c,"sSortDataType")}if(!a.oFeatures.bSort)b.bSortable=false;if(!b.bSortable||
-j.inArray("asc",b.asSorting)==-1&&j.inArray("desc",b.asSorting)==-1){b.sSortingClass=a.oClasses.sSortableNone;b.sSortingClassJUI=""}else if(j.inArray("asc",b.asSorting)!=-1&&j.inArray("desc",b.asSorting)==-1){b.sSortingClass=a.oClasses.sSortableAsc;b.sSortingClassJUI=a.oClasses.sSortJUIAscAllowed}else if(j.inArray("asc",b.asSorting)==-1&&j.inArray("desc",b.asSorting)!=-1){b.sSortingClass=a.oClasses.sSortableDesc;b.sSortingClassJUI=a.oClasses.sSortJUIDescAllowed}}function w(a,b){if(b.length!=a.aoColumns.length&&
-a.iDrawError!=a.iDraw){J(a,0,"Added data does not match known number of columns");a.iDrawError=a.iDraw;return-1}b=b.slice();var c=a.aoData.length;a.aoData.push({nTr:p.createElement("tr"),_iId:a.iNextId++,_aData:b,_anHidden:[],_sRowStripe:""});for(var d,f,e=0;e<b.length;e++){d=p.createElement("td");if(b[e]===null)b[e]="";if(typeof b[e]!="string")b[e]+="";b[e]=j.trim(b[e]);if(typeof a.aoColumns[e].fnRender=="function"){f=a.aoColumns[e].fnRender({iDataRow:c,iDataColumn:e,aData:b,oSettings:a});d.innerHTML=
-f;if(a.aoColumns[e].bUseRendered)a.aoData[c]._aData[e]=f}else d.innerHTML=b[e];if(a.aoColumns[e].sClass!==null)d.className=a.aoColumns[e].sClass;if(a.aoColumns[e]._bAutoType&&a.aoColumns[e].sType!="string"){f=Z(a.aoData[c]._aData[e]);if(a.aoColumns[e].sType===null)a.aoColumns[e].sType=f;else if(a.aoColumns[e].sType!=f)a.aoColumns[e].sType="string"}if(a.aoColumns[e].bVisible)a.aoData[c].nTr.appendChild(d);else a.aoData[c]._anHidden[e]=d}a.aiDisplayMaster.push(c);return c}function x(a){var b,c,d,f,
-e,i,h,k;if(a.sAjaxSource===null){h=a.nTBody.childNodes;b=0;for(c=h.length;b<c;b++)if(h[b].nodeName.toUpperCase()=="TR"){i=a.aoData.length;a.aoData.push({nTr:h[b],_iId:a.iNextId++,_aData:[],_anHidden:[],_sRowStripe:""});a.aiDisplayMaster.push(i);k=a.aoData[i]._aData;i=h[b].childNodes;d=e=0;for(f=i.length;d<f;d++)if(i[d].nodeName.toUpperCase()=="TD"){k[e]=j.trim(i[d].innerHTML);e++}}}h=S(a);i=[];b=0;for(c=h.length;b<c;b++){d=0;for(f=h[b].childNodes.length;d<f;d++){e=h[b].childNodes[d];e.nodeName.toUpperCase()==
-"TD"&&i.push(e)}}i.length!=h.length*a.aoColumns.length&&J(a,1,"Unexpected number of TD elements. Expected "+h.length*a.aoColumns.length+" and got "+i.length+". DataTables does not support rowspan / colspan in the table body, and there must be one cell for each row/column combination.");h=0;for(d=a.aoColumns.length;h<d;h++){if(a.aoColumns[h].sTitle===null)a.aoColumns[h].sTitle=a.aoColumns[h].nTh.innerHTML;f=a.aoColumns[h]._bAutoType;e=typeof a.aoColumns[h].fnRender=="function";k=a.aoColumns[h].sClass!==
-null;var o=a.aoColumns[h].bVisible,t,s;if(f||e||k||!o){b=0;for(c=a.aoData.length;b<c;b++){t=i[b*d+h];if(f)if(a.aoColumns[h].sType!="string"){s=Z(a.aoData[b]._aData[h]);if(a.aoColumns[h].sType===null)a.aoColumns[h].sType=s;else if(a.aoColumns[h].sType!=s)a.aoColumns[h].sType="string"}if(e){s=a.aoColumns[h].fnRender({iDataRow:b,iDataColumn:h,aData:a.aoData[b]._aData,oSettings:a});t.innerHTML=s;if(a.aoColumns[h].bUseRendered)a.aoData[b]._aData[h]=s}if(k)t.className+=" "+a.aoColumns[h].sClass;if(!o){a.aoData[b]._anHidden[h]=
-t;t.parentNode.removeChild(t)}}}}}function z(a){var b,c,d,f=0;if(a.nTHead.getElementsByTagName("th").length!==0){b=0;for(d=a.aoColumns.length;b<d;b++){c=a.aoColumns[b].nTh;if(a.aoColumns[b].bVisible){if(a.aoColumns[b].sWidth!==null)c.style.width=a.aoColumns[b].sWidth;if(a.aoColumns[b].sTitle!=c.innerHTML)c.innerHTML=a.aoColumns[b].sTitle}else{c.parentNode.removeChild(c);f++}}}else{f=p.createElement("tr");b=0;for(d=a.aoColumns.length;b<d;b++){c=a.aoColumns[b].nTh;c.innerHTML=a.aoColumns[b].sTitle;
-if(a.aoColumns[b].bVisible){if(a.aoColumns[b].sClass!==null)c.className=a.aoColumns[b].sClass;if(a.aoColumns[b].sWidth!==null)c.style.width=a.aoColumns[b].sWidth;f.appendChild(c)}}j(a.nTHead).html("")[0].appendChild(f)}if(a.bJUI){b=0;for(d=a.aoColumns.length;b<d;b++)a.aoColumns[b].nTh.insertBefore(p.createElement("span"),a.aoColumns[b].nTh.firstChild)}if(a.oFeatures.bSort){for(b=0;b<a.aoColumns.length;b++)a.aoColumns[b].bSortable!==false?$(a,a.aoColumns[b].nTh,b):j(a.aoColumns[b].nTh).addClass(a.oClasses.sSortableNone);
-j("th",a.nTHead).mousedown(function(){this.onselectstart=function(){return false};return false})}if(a.nTFoot!==null){f=0;c=a.nTFoot.getElementsByTagName("th");b=0;for(d=c.length;b<d;b++)if(typeof a.aoColumns[b]!="undefined"){a.aoColumns[b].nTf=c[b-f];if(a.oClasses.sFooterTH!=="")a.aoColumns[b].nTf.className+=" "+a.oClasses.sFooterTH;if(!a.aoColumns[b].bVisible){c[b-f].parentNode.removeChild(c[b-f]);f++}}}}function D(a){var b,c,d=[],f=0,e=false;b=a.asStripClasses.length;c=a.aoOpenRows.length;if(typeof a.iInitDisplayStart!=
-"undefined"&&a.iInitDisplayStart!=-1){a._iDisplayStart=a.oFeatures.bServerSide?a.iInitDisplayStart:a.iInitDisplayStart>=a.fnRecordsDisplay()?0:a.iInitDisplayStart;a.iInitDisplayStart=-1;F(a)}if(!(a.oFeatures.bServerSide&&!oa(a))){if(a.aiDisplay.length!==0){var i=a._iDisplayStart,h=a._iDisplayEnd;if(a.oFeatures.bServerSide){i=0;h=a.aoData.length}for(i=i;i<h;i++){var k=a.aoData[a.aiDisplay[i]],o=k.nTr;if(b!==0){var t=a.asStripClasses[f%b];if(k._sRowStripe!=t){j(o).removeClass(k._sRowStripe).addClass(t);
-k._sRowStripe=t}}if(typeof a.fnRowCallback=="function"){o=a.fnRowCallback.call(a.oInstance,o,a.aoData[a.aiDisplay[i]]._aData,f,i);if(!o&&!e){J(a,0,"A node was not returned by fnRowCallback");e=true}}d.push(o);f++;if(c!==0)for(k=0;k<c;k++)o==a.aoOpenRows[k].nParent&&d.push(a.aoOpenRows[k].nTr)}}else{d[0]=p.createElement("tr");if(typeof a.asStripClasses[0]!="undefined")d[0].className=a.asStripClasses[0];e=p.createElement("td");e.setAttribute("valign","top");e.colSpan=T(a);e.className=a.oClasses.sRowEmpty;
-e.innerHTML=typeof a.oLanguage.sEmptyTable!="undefined"&&a.fnRecordsTotal()===0?a.oLanguage.sEmptyTable:a.oLanguage.sZeroRecords.replace("_MAX_",a.fnFormatNumber(a.fnRecordsTotal()));d[f].appendChild(e)}typeof a.fnHeaderCallback=="function"&&a.fnHeaderCallback.call(a.oInstance,j(">tr",a.nTHead)[0],V(a),a._iDisplayStart,a.fnDisplayEnd(),a.aiDisplay);typeof a.fnFooterCallback=="function"&&a.fnFooterCallback.call(a.oInstance,j(">tr",a.nTFoot)[0],V(a),a._iDisplayStart,a.fnDisplayEnd(),a.aiDisplay);f=
-p.createDocumentFragment();b=p.createDocumentFragment();if(a.nTBody){e=a.nTBody.parentNode;b.appendChild(a.nTBody);c=a.nTBody.childNodes;for(b=c.length-1;b>=0;b--)c[b].parentNode.removeChild(c[b]);b=0;for(c=d.length;b<c;b++)f.appendChild(d[b]);a.nTBody.appendChild(f);e!==null&&e.appendChild(a.nTBody)}if(typeof a._bInitComplete=="undefined"){a._bInitComplete=true;a.nTableWrapper!=a.nTable.parentNode&&j(a.nTableWrapper).width()>j(a.nTable.parentNode).width()&&U(a)}b=0;for(c=a.aoDrawCallback.length;b<
-c;b++)a.aoDrawCallback[b].fn.call(a.oInstance,a);a.bSorted=false;a.bFiltered=false}}function L(a){if(a.oFeatures.bSort)O(a,a.oPreviousSearch);else if(a.oFeatures.bFilter)P(a,a.oPreviousSearch);else{F(a);D(a)}}function oa(a){if(a.bAjaxDataGet){K(a,true);var b=a.aoColumns.length,c=[],d;a.iDraw++;c.push({name:"sEcho",value:a.iDraw});c.push({name:"iColumns",value:b});c.push({name:"sColumns",value:aa(a)});c.push({name:"iDisplayStart",value:a._iDisplayStart});c.push({name:"iDisplayLength",value:a.oFeatures.bPaginate!==
-false?a._iDisplayLength:-1});if(a.oFeatures.bFilter!==false){c.push({name:"sSearch",value:a.oPreviousSearch.sSearch});c.push({name:"bRegex",value:a.oPreviousSearch.bRegex});for(d=0;d<b;d++){c.push({name:"sSearch_"+d,value:a.aoPreSearchCols[d].sSearch});c.push({name:"bRegex_"+d,value:a.aoPreSearchCols[d].bRegex});c.push({name:"bSearchable_"+d,value:a.aoColumns[d].bSearchable})}}if(a.oFeatures.bSort!==false){var f=a.aaSortingFixed!==null?a.aaSortingFixed.length:0,e=a.aaSorting.length;c.push({name:"iSortingCols",
-value:f+e});for(d=0;d<f;d++){c.push({name:"iSortCol_"+d,value:a.aaSortingFixed[d][0]});c.push({name:"sSortDir_"+d,value:a.aaSortingFixed[d][1]})}for(d=0;d<e;d++){c.push({name:"iSortCol_"+(d+f),value:a.aaSorting[d][0]});c.push({name:"sSortDir_"+(d+f),value:a.aaSorting[d][1]})}for(d=0;d<b;d++)c.push({name:"bSortable_"+d,value:a.aoColumns[d].bSortable})}a.fnServerData.call(a.oInstance,a.sAjaxSource,c,function(i){pa(a,i)});return false}else return true}function pa(a,b){if(typeof b.sEcho!="undefined")if(b.sEcho*
-1<a.iDraw)return;else a.iDraw=b.sEcho*1;ba(a);a._iRecordsTotal=b.iTotalRecords;a._iRecordsDisplay=b.iTotalDisplayRecords;var c=aa(a);if(c=typeof b.sColumns!="undefined"&&c!==""&&b.sColumns!=c)var d=qa(a,b.sColumns);for(var f=0,e=b.aaData.length;f<e;f++)if(c){for(var i=[],h=0,k=a.aoColumns.length;h<k;h++)i.push(b.aaData[f][d[h]]);w(a,i)}else w(a,b.aaData[f]);a.aiDisplay=a.aiDisplayMaster.slice();a.bAjaxDataGet=false;D(a);a.bAjaxDataGet=true;K(a,false)}function na(a){var b=p.createElement("div");a.nTable.parentNode.insertBefore(b,
-a.nTable);a.nTableWrapper=p.createElement("div");a.nTableWrapper.className=a.oClasses.sWrapper;a.sTableId!==""&&a.nTableWrapper.setAttribute("id",a.sTableId+"_wrapper");for(var c=a.nTableWrapper,d=a.sDom.split(""),f,e,i,h,k,o,t,s=0;s<d.length;s++){e=0;i=d[s];if(i=="<"){h=p.createElement("div");k=d[s+1];if(k=="'"||k=='"'){o="";for(t=2;d[s+t]!=k;){o+=d[s+t];t++}if(o=="H")o="fg-toolbar ui-widget-header ui-corner-tl ui-corner-tr ui-helper-clearfix";else if(o=="F")o="fg-toolbar ui-widget-header ui-corner-bl ui-corner-br ui-helper-clearfix";
-h.className=o;s+=t}c.appendChild(h);c=h}else if(i==">")c=c.parentNode;else if(i=="l"&&a.oFeatures.bPaginate&&a.oFeatures.bLengthChange){f=ra(a);e=1}else if(i=="f"&&a.oFeatures.bFilter){f=sa(a);e=1}else if(i=="r"&&a.oFeatures.bProcessing){f=ta(a);e=1}else if(i=="t"){f=ua(a);e=1}else if(i=="i"&&a.oFeatures.bInfo){f=va(a);e=1}else if(i=="p"&&a.oFeatures.bPaginate){f=wa(a);e=1}else if(m.aoFeatures.length!==0){h=m.aoFeatures;k=0;for(o=h.length;k<o;k++)if(i==h[k].cFeature){if(f=h[k].fnInit(a))e=1;break}}if(e==
-1){if(typeof a.aanFeatures[i]!="object")a.aanFeatures[i]=[];a.aanFeatures[i].push(f);c.appendChild(f)}}b.parentNode.replaceChild(a.nTableWrapper,b)}function ua(a){if(a.oScroll.sX===""&&a.oScroll.sY==="")return a.nTable;var b=p.createElement("div"),c=p.createElement("div"),d=p.createElement("div"),f=p.createElement("div"),e=p.createElement("div"),i=p.createElement("div"),h=a.nTable.cloneNode(false),k=a.nTable.cloneNode(false),o=a.nTable.getElementsByTagName("thead")[0],t=a.nTable.getElementsByTagName("tfoot").length===
-0?null:a.nTable.getElementsByTagName("tfoot")[0],s=typeof g.bJQueryUI!="undefined"&&g.bJQueryUI?m.oJUIClasses:m.oStdClasses;c.appendChild(d);e.appendChild(i);f.appendChild(a.nTable);b.appendChild(c);b.appendChild(f);d.appendChild(h);h.appendChild(o);if(t!==null){b.appendChild(e);i.appendChild(k);k.appendChild(t)}b.className=s.sScrollWrapper;c.className=s.sScrollHead;d.className=s.sScrollHeadInner;f.className=s.sScrollBody;e.className=s.sScrollFoot;i.className=s.sScrollFootInner;c.style.overflow="hidden";
-e.style.overflow="hidden";f.style.overflow="auto";c.style.border="0";e.style.border="0";d.style.width="150%";h.removeAttribute("id");h.style.marginLeft="0";a.nTable.style.marginLeft="0";if(t!==null){k.removeAttribute("id");k.style.marginLeft="0"}d=j(">caption",a.nTable);i=0;for(k=d.length;i<k;i++)h.appendChild(d[i]);if(a.oScroll.sX!==""){c.style.width=v(a.oScroll.sX);f.style.width=v(a.oScroll.sX);if(t!==null)e.style.width=v(a.oScroll.sX);j(f).scroll(function(){c.scrollLeft=this.scrollLeft;if(t!==
-null)e.scrollLeft=this.scrollLeft})}if(a.oScroll.sY!=="")f.style.height=v(a.oScroll.sY);a.aoDrawCallback.push({fn:xa,sName:"scrolling"});a.nScrollHead=c;a.nScrollFoot=e;return b}function xa(a){var b=a.nScrollHead.getElementsByTagName("div")[0],c=b.getElementsByTagName("table")[0],d=a.nTable.parentNode,f,e,i,h,k,o,t,s,H=[];i=a.nTable.getElementsByTagName("thead");i.length>0&&a.nTable.removeChild(i[0]);if(a.nTFoot!==null){k=a.nTable.getElementsByTagName("tfoot");k.length>0&&a.nTable.removeChild(k[0])}i=
-a.nTHead.cloneNode(true);a.nTable.insertBefore(i,a.nTable.childNodes[0]);if(a.nTFoot!==null){k=a.nTFoot.cloneNode(true);a.nTable.insertBefore(k,a.nTable.childNodes[1])}var I=ca(i);f=0;for(e=I.length;f<e;f++){t=da(a,f);I[f].style.width=a.aoColumns[t].sWidth}a.nTFoot!==null&&M(function(A){A.style.width=""},k.getElementsByTagName("tr"));f=j(a.nTable).outerWidth();if(a.oScroll.sX===""){a.nTable.style.width="100%";if(j.browser.msie&&j.browser.version<=7)a.nTable.style.width=v(j(a.nTable).outerWidth()-
-a.oScroll.iBarWidth)}else if(a.oScroll.sXInner!=="")a.nTable.style.width=v(a.oScroll.sXInner);else if(f==j(d).width()&&j(d).height()<j(a.nTable).height()){a.nTable.style.width=v(f-a.oScroll.iBarWidth);if(j(a.nTable).outerWidth()>f-a.oScroll.iBarWidth)a.nTable.style.width=v(f)}else a.nTable.style.width=v(f);f=j(a.nTable).outerWidth();e=a.nTHead.getElementsByTagName("tr");i=i.getElementsByTagName("tr");M(function(A,G){o=A.style;o.paddingTop="0";o.paddingBottom="0";o.borderTopWidth="0";o.borderBottomWidth=
-"0";o.height=0;s=j(A).width();G.style.width=v(s);H.push(s)},i,e);if(a.nTFoot!==null){h=k.getElementsByTagName("tr");k=a.nTFoot.getElementsByTagName("tr");M(function(A,G){o=A.style;o.paddingTop="0";o.paddingBottom="0";o.borderTopWidth="0";o.borderBottomWidth="0";s=j(A).width();G.style.width=v(s);H.push(s)},h,k)}M(function(A){A.innerHTML="";A.style.width=v(H.shift())},i);a.nTFoot!==null&&M(function(A){A.innerHTML="";A.style.width=v(H.shift())},h);if(j(a.nTable).outerWidth()<f)if(a.oScroll.sX==="")J(a,
-1,"The table cannot fit into the current element which will cause column misalignment. It is suggested that you enable x-scrolling or increase the width the table has in which to be drawn");else a.oScroll.sXInner!==""&&J(a,1,"The table cannot fit into the current element which will cause column misalignment. It is suggested that you increase the sScrollXInner property to allow it to draw in a larger area, or simply remove that parameter to allow automatic calculation");if(a.oScroll.sY==="")if(j.browser.msie&&
-j.browser.version<=7)d.style.height=v(a.nTable.offsetHeight+a.oScroll.iBarWidth);if(a.oScroll.sY!==""&&a.oScroll.bCollapse){d.style.height=v(a.oScroll.sY);h=a.oScroll.sX!==""&&a.nTable.offsetWidth>d.offsetWidth?a.oScroll.iBarWidth:0;if(a.nTable.offsetHeight<d.offsetHeight)d.style.height=v(j(a.nTable).height()+h)}c.style.width=v(j(a.nTable).outerWidth());b.style.width=v(j(a.nTable).outerWidth()+a.oScroll.iBarWidth);if(a.nTFoot!==null){b=a.nScrollFoot.getElementsByTagName("div")[0];c=b.getElementsByTagName("table")[0];
-b.style.width=v(a.nTable.offsetWidth+a.oScroll.iBarWidth);c.style.width=v(a.nTable.offsetWidth)}}function U(a){if(a.oFeatures.bAutoWidth===false)return false;ea(a);for(var b=0,c=a.aoColumns.length;b<c;b++)a.aoColumns[b].nTh.style.width=a.aoColumns[b].sWidth}function sa(a){var b=p.createElement("div");a.sTableId!==""&&typeof a.aanFeatures.f=="undefined"&&b.setAttribute("id",a.sTableId+"_filter");b.className=a.oClasses.sFilter;b.innerHTML=a.oLanguage.sSearch+(a.oLanguage.sSearch===""?"":" ")+'<input type="text" />';
-var c=j("input",b);c.val(a.oPreviousSearch.sSearch.replace('"',"""));c.keyup(function(){for(var d=a.aanFeatures.f,f=0,e=d.length;f<e;f++)d[f]!=this.parentNode&&j("input",d[f]).val(this.value);P(a,{sSearch:this.value,bRegex:a.oPreviousSearch.bRegex,bSmart:a.oPreviousSearch.bSmart})});c.keypress(function(d){if(d.keyCode==13)return false});return b}function P(a,b,c){ya(a,b.sSearch,c,b.bRegex,b.bSmart);for(b=0;b<a.aoPreSearchCols.length;b++)za(a,a.aoPreSearchCols[b].sSearch,b,a.aoPreSearchCols[b].bRegex,
-a.aoPreSearchCols[b].bSmart);m.afnFiltering.length!==0&&Aa(a);a.bFiltered=true;a._iDisplayStart=0;F(a);D(a);Q(a,0)}function Aa(a){for(var b=m.afnFiltering,c=0,d=b.length;c<d;c++)for(var f=0,e=0,i=a.aiDisplay.length;e<i;e++){var h=a.aiDisplay[e-f];if(!b[c](a,a.aoData[h]._aData,h)){a.aiDisplay.splice(e-f,1);f++}}}function za(a,b,c,d,f){if(b!==""){var e=0;b=fa(b,d,f);for(d=a.aiDisplay.length-1;d>=0;d--){f=ga(a.aoData[a.aiDisplay[d]]._aData[c],a.aoColumns[c].sType);if(!b.test(f)){a.aiDisplay.splice(d,
-1);e++}}}}function ya(a,b,c,d,f){var e=fa(b,d,f);if(typeof c=="undefined"||c===null)c=0;if(m.afnFiltering.length!==0)c=1;if(b.length<=0){a.aiDisplay.splice(0,a.aiDisplay.length);a.aiDisplay=a.aiDisplayMaster.slice()}else if(a.aiDisplay.length==a.aiDisplayMaster.length||a.oPreviousSearch.sSearch.length>b.length||c==1||b.indexOf(a.oPreviousSearch.sSearch)!==0){a.aiDisplay.splice(0,a.aiDisplay.length);Q(a,1);for(c=0;c<a.aiDisplayMaster.length;c++)e.test(a.asDataSearch[c])&&a.aiDisplay.push(a.aiDisplayMaster[c])}else{var i=
-0;for(c=0;c<a.asDataSearch.length;c++)if(!e.test(a.asDataSearch[c])){a.aiDisplay.splice(c-i,1);i++}}a.oPreviousSearch.sSearch=b;a.oPreviousSearch.bRegex=d;a.oPreviousSearch.bSmart=f}function Q(a,b){a.asDataSearch.splice(0,a.asDataSearch.length);var c=p.createElement("div");b=typeof b!="undefined"&&b==1?a.aiDisplayMaster:a.aiDisplay;for(var d=0,f=b.length;d<f;d++){a.asDataSearch[d]="";for(var e=0,i=a.aoColumns.length;e<i;e++)if(a.aoColumns[e].bSearchable)a.asDataSearch[d]+=ga(a.aoData[b[d]]._aData[e],
-a.aoColumns[e].sType)+" ";if(a.asDataSearch[d].indexOf("&")!==-1){c.innerHTML=a.asDataSearch[d];a.asDataSearch[d]=c.textContent?c.textContent:c.innerText}}}function fa(a,b,c){if(c){a=b?a.split(" "):ha(a).split(" ");a="^(?=.*?"+a.join(")(?=.*?")+").*$";return new RegExp(a,"i")}else{a=b?a:ha(a);return new RegExp(a,"i")}}function ga(a,b){if(typeof m.ofnSearch[b]=="function")return m.ofnSearch[b](a);else if(b=="html")return a.replace(/\n/g," ").replace(/<.*?>/g,"");else if(typeof a=="string")return a.replace(/\n/g,
-" ");return a}function O(a,b){var c=[],d=m.oSort,f=a.aoData,e,i,h,k;if(!a.oFeatures.bServerSide&&(a.aaSorting.length!==0||a.aaSortingFixed!==null)){c=a.aaSortingFixed!==null?a.aaSortingFixed.concat(a.aaSorting):a.aaSorting.slice();for(h=0;h<c.length;h++){e=c[h][0];i=N(a,e);k=a.aoColumns[e].sSortDataType;if(typeof m.afnSortData[k]!="undefined"){var o=m.afnSortData[k](a,e,i);i=0;for(k=f.length;i<k;i++)f[i]._aData[e]=o[i]}}if(Y.runtime){var t=[],s=c.length;for(h=0;h<s;h++){e=a.aoColumns[c[h][0]].iDataSort;
-t.push([e,a.aoColumns[e].sType+"-"+c[h][1]])}a.aiDisplayMaster.sort(function(H,I){for(var A,G=0;G<s;G++){A=d[t[G][1]](f[H]._aData[t[G][0]],f[I]._aData[t[G][0]]);if(A!==0)return A}return 0})}else{this.ClosureDataTables={fn:function(){},data:f,sort:m.oSort};k="this.ClosureDataTables.fn = function(a,b){var iTest, oSort=this.ClosureDataTables.sort, aoData=this.ClosureDataTables.data;";for(h=0;h<c.length-1;h++){e=a.aoColumns[c[h][0]].iDataSort;i=a.aoColumns[e].sType;k+="iTest = oSort['"+i+"-"+c[h][1]+
-"']( aoData[a]._aData["+e+"], aoData[b]._aData["+e+"] ); if ( iTest === 0 )"}if(c.length>0){e=a.aoColumns[c[c.length-1][0]].iDataSort;i=a.aoColumns[e].sType;k+="iTest = oSort['"+i+"-"+c[c.length-1][1]+"']( aoData[a]._aData["+e+"], aoData[b]._aData["+e+"] );if (iTest===0) return oSort['numeric-"+c[c.length-1][1]+"'](a, b); return iTest;}";eval(k);a.aiDisplayMaster.sort(this.ClosureDataTables.fn)}this.ClosureDataTables=undefined}}if(typeof b=="undefined"||b)W(a);a.bSorted=true;if(a.oFeatures.bFilter)P(a,
-a.oPreviousSearch,1);else{a.aiDisplay=a.aiDisplayMaster.slice();a._iDisplayStart=0;F(a);D(a)}}function $(a,b,c,d){j(b).click(function(f){if(a.aoColumns[c].bSortable!==false){var e=function(){var i,h;if(f.shiftKey){for(var k=false,o=0;o<a.aaSorting.length;o++)if(a.aaSorting[o][0]==c){k=true;i=a.aaSorting[o][0];h=a.aaSorting[o][2]+1;if(typeof a.aoColumns[i].asSorting[h]=="undefined")a.aaSorting.splice(o,1);else{a.aaSorting[o][1]=a.aoColumns[i].asSorting[h];a.aaSorting[o][2]=h}break}k===false&&a.aaSorting.push([c,
-a.aoColumns[c].asSorting[0],0])}else if(a.aaSorting.length==1&&a.aaSorting[0][0]==c){i=a.aaSorting[0][0];h=a.aaSorting[0][2]+1;if(typeof a.aoColumns[i].asSorting[h]=="undefined")h=0;a.aaSorting[0][1]=a.aoColumns[i].asSorting[h];a.aaSorting[0][2]=h}else{a.aaSorting.splice(0,a.aaSorting.length);a.aaSorting.push([c,a.aoColumns[c].asSorting[0],0])}O(a)};if(a.oFeatures.bProcessing){K(a,true);setTimeout(function(){e();a.oFeatures.bServerSide||K(a,false)},0)}else e();typeof d=="function"&&d(a)}})}function W(a){var b,
-c,d,f,e,i=a.aoColumns.length,h=a.oClasses;for(b=0;b<i;b++)a.aoColumns[b].bSortable&&j(a.aoColumns[b].nTh).removeClass(h.sSortAsc+" "+h.sSortDesc+" "+a.aoColumns[b].sSortingClass);f=a.aaSortingFixed!==null?a.aaSortingFixed.concat(a.aaSorting):a.aaSorting.slice();for(b=0;b<a.aoColumns.length;b++)if(a.aoColumns[b].bSortable){e=a.aoColumns[b].sSortingClass;d=-1;for(c=0;c<f.length;c++)if(f[c][0]==b){e=f[c][1]=="asc"?h.sSortAsc:h.sSortDesc;d=c;break}j(a.aoColumns[b].nTh).addClass(e);if(a.bJUI){c=j("span",
-a.aoColumns[b].nTh);c.removeClass(h.sSortJUIAsc+" "+h.sSortJUIDesc+" "+h.sSortJUI+" "+h.sSortJUIAscAllowed+" "+h.sSortJUIDescAllowed);c.addClass(d==-1?a.aoColumns[b].sSortingClassJUI:f[d][1]=="asc"?h.sSortJUIAsc:h.sSortJUIDesc)}}else j(a.aoColumns[b].nTh).addClass(a.aoColumns[b].sSortingClass);e=h.sSortColumn;if(a.oFeatures.bSort&&a.oFeatures.bSortClasses){d=X(a);if(d.length>=i)for(b=0;b<i;b++)if(d[b].className.indexOf(e+"1")!=-1){c=0;for(a=d.length/i;c<a;c++)d[i*c+b].className=d[i*c+b].className.replace(" "+
-e+"1","")}else if(d[b].className.indexOf(e+"2")!=-1){c=0;for(a=d.length/i;c<a;c++)d[i*c+b].className=d[i*c+b].className.replace(" "+e+"2","")}else if(d[b].className.indexOf(e+"3")!=-1){c=0;for(a=d.length/i;c<a;c++)d[i*c+b].className=d[i*c+b].className.replace(" "+e+"3","")}h=1;var k;for(b=0;b<f.length;b++){k=parseInt(f[b][0],10);c=0;for(a=d.length/i;c<a;c++)d[i*c+k].className+=" "+e+h;h<3&&h++}}}function wa(a){var b=p.createElement("div");b.className=a.oClasses.sPaging+a.sPaginationType;m.oPagination[a.sPaginationType].fnInit(a,
-b,function(c){F(c);D(c)});typeof a.aanFeatures.p=="undefined"&&a.aoDrawCallback.push({fn:function(c){m.oPagination[c.sPaginationType].fnUpdate(c,function(d){F(d);D(d)})},sName:"pagination"});return b}function Ba(a,b){var c=a._iDisplayStart;if(b=="first")a._iDisplayStart=0;else if(b=="previous"){a._iDisplayStart=a._iDisplayLength>=0?a._iDisplayStart-a._iDisplayLength:0;if(a._iDisplayStart<0)a._iDisplayStart=0}else if(b=="next")if(a._iDisplayLength>=0){if(a._iDisplayStart+a._iDisplayLength<a.fnRecordsDisplay())a._iDisplayStart+=
-a._iDisplayLength}else a._iDisplayStart=0;else if(b=="last")if(a._iDisplayLength>=0){b=parseInt((a.fnRecordsDisplay()-1)/a._iDisplayLength,10)+1;a._iDisplayStart=(b-1)*a._iDisplayLength}else a._iDisplayStart=0;else J(a,0,"Unknown paging action: "+b);return c!=a._iDisplayStart}function va(a){var b=p.createElement("div");b.className=a.oClasses.sInfo;if(typeof a.aanFeatures.i=="undefined"){a.aoDrawCallback.push({fn:Ca,sName:"information"});a.sTableId!==""&&b.setAttribute("id",a.sTableId+"_info")}return b}
-function Ca(a){if(!(!a.oFeatures.bInfo||a.aanFeatures.i.length===0)){var b=j(a.aanFeatures.i[0]),c=a.fnFormatNumber(a.fnRecordsTotal()),d=a.fnFormatNumber(a._iDisplayStart+1),f=a.fnFormatNumber(a.fnDisplayEnd()),e=a.fnFormatNumber(a.fnRecordsDisplay());if(a.fnRecordsDisplay()===0&&a.fnRecordsDisplay()==a.fnRecordsTotal())b.html(a.oLanguage.sInfoEmpty+a.oLanguage.sInfoPostFix);else if(a.fnRecordsDisplay()===0)b.html(a.oLanguage.sInfoEmpty+" "+a.oLanguage.sInfoFiltered.replace("_MAX_",c)+a.oLanguage.sInfoPostFix);
-else a.fnRecordsDisplay()==a.fnRecordsTotal()?b.html(a.oLanguage.sInfo.replace("_START_",d).replace("_END_",f).replace("_TOTAL_",e)+a.oLanguage.sInfoPostFix):b.html(a.oLanguage.sInfo.replace("_START_",d).replace("_END_",f).replace("_TOTAL_",e)+" "+a.oLanguage.sInfoFiltered.replace("_MAX_",a.fnFormatNumber(a.fnRecordsTotal()))+a.oLanguage.sInfoPostFix);a=a.aanFeatures.i;if(a.length>1){b=b.html();c=1;for(d=a.length;c<d;c++)j(a[c]).html(b)}}}function ra(a){var b='<select size="1" '+(a.sTableId===""?
-"":'name="'+a.sTableId+'_length"')+">",c,d;if(a.aLengthMenu.length==2&&typeof a.aLengthMenu[0]=="object"&&typeof a.aLengthMenu[1]=="object"){c=0;for(d=a.aLengthMenu[0].length;c<d;c++)b+='<option value="'+a.aLengthMenu[0][c]+'">'+a.aLengthMenu[1][c]+"</option>"}else{c=0;for(d=a.aLengthMenu.length;c<d;c++)b+='<option value="'+a.aLengthMenu[c]+'">'+a.aLengthMenu[c]+"</option>"}b+="</select>";var f=p.createElement("div");a.sTableId!==""&&typeof a.aanFeatures.l=="undefined"&&f.setAttribute("id",a.sTableId+
-"_length");f.className=a.oClasses.sLength;f.innerHTML=a.oLanguage.sLengthMenu.replace("_MENU_",b);j('select option[value="'+a._iDisplayLength+'"]',f).attr("selected",true);j("select",f).change(function(){var e=j(this).val(),i=a.aanFeatures.l;c=0;for(d=i.length;c<d;c++)i[c]!=this.parentNode&&j("select",i[c]).val(e);a._iDisplayLength=parseInt(e,10);F(a);if(a.fnDisplayEnd()==a.fnRecordsDisplay()){a._iDisplayStart=a.fnDisplayEnd()-a._iDisplayLength;if(a._iDisplayStart<0)a._iDisplayStart=0}if(a._iDisplayLength==
--1)a._iDisplayStart=0;D(a)});return f}function ta(a){var b=p.createElement("div");a.sTableId!==""&&typeof a.aanFeatures.r=="undefined"&&b.setAttribute("id",a.sTableId+"_processing");b.innerHTML=a.oLanguage.sProcessing;b.className=a.oClasses.sProcessing;a.nTable.parentNode.insertBefore(b,a.nTable);return b}function K(a,b){if(a.oFeatures.bProcessing){a=a.aanFeatures.r;for(var c=0,d=a.length;c<d;c++)a[c].style.visibility=b?"visible":"hidden"}}function da(a,b){for(var c=-1,d=0;d<a.aoColumns.length;d++){a.aoColumns[d].bVisible===
-true&&c++;if(c==b)return d}return null}function N(a,b){for(var c=-1,d=0;d<a.aoColumns.length;d++){a.aoColumns[d].bVisible===true&&c++;if(d==b)return a.aoColumns[d].bVisible===true?c:null}return null}function R(a,b){var c,d;c=a._iDisplayStart;for(d=a._iDisplayEnd;c<d;c++)if(a.aoData[a.aiDisplay[c]].nTr==b)return a.aiDisplay[c];c=0;for(d=a.aoData.length;c<d;c++)if(a.aoData[c].nTr==b)return c;return null}function T(a){for(var b=0,c=0;c<a.aoColumns.length;c++)a.aoColumns[c].bVisible===true&&b++;return b}
-function F(a){a._iDisplayEnd=a.oFeatures.bPaginate===false?a.aiDisplay.length:a._iDisplayStart+a._iDisplayLength>a.aiDisplay.length||a._iDisplayLength==-1?a.aiDisplay.length:a._iDisplayStart+a._iDisplayLength}function Da(a,b){if(!a||a===null||a==="")return 0;if(typeof b=="undefined")b=p.getElementsByTagName("body")[0];var c=p.createElement("div");c.style.width=a;b.appendChild(c);a=c.offsetWidth;b.removeChild(c);return a}function ea(a){var b=0,c,d=0,f=a.aoColumns.length,e,i=j("th",a.nTHead);for(e=
-0;e<f;e++)if(a.aoColumns[e].bVisible){d++;if(a.aoColumns[e].sWidth!==null){c=Da(a.aoColumns[e].sWidthOrig,a.nTable.parentNode);if(c!==null)a.aoColumns[e].sWidth=v(c);b++}}if(f==i.length&&b===0&&d==f){ia(a,a.nTable);for(e=0;e<a.aoColumns.length;e++){c=j(i[e]).width();if(c!==null)a.aoColumns[e].sWidth=v(c)}}else{b=a.nTable.cloneNode(false);e=p.createElement("tbody");c=p.createElement("tr");b.removeAttribute("id");b.appendChild(a.nTHead.cloneNode(true));if(a.nTFoot!==null){b.appendChild(a.nTFoot.cloneNode(true));
-M(function(h){h.style.width=""},b.getElementsByTagName("tr"))}b.appendChild(e);e.appendChild(c);e=j("thead th",b);if(e.length===0)e=j("tbody tr:eq(0)>td",b);e.each(function(h){this.style.width="";h=da(a,h);if(h!==null&&a.aoColumns[h].sWidthOrig!=="")this.style.width=a.aoColumns[h].sWidthOrig});for(e=0;e<f;e++)if(a.aoColumns[e].bVisible){d=Ea(a,e);if(d!==null){d=d.cloneNode(true);c.appendChild(d)}}e=a.nTable.parentNode;e.appendChild(b);if(a.oScroll.sX!==""&&a.oScroll.sXInner!=="")b.style.width=v(a.oScroll.sXInner);
-else if(a.oScroll.sX!==""){b.style.width="";if(j(b).width()<e.offsetWidth)b.style.width=v(e.offsetWidth)}else b.style.width=v(e.offsetWidth);b.style.visibility="hidden";ia(a,b);f=j("tbody tr:eq(0)>td",b);if(f.length===0)f=j("thead tr:eq(0)>th",b);for(e=c=0;e<a.aoColumns.length;e++)if(a.aoColumns[e].bVisible){d=j(f[c]).width();if(d!==null&&d>0)a.aoColumns[e].sWidth=v(d);c++}a.nTable.style.width=v(j(b).outerWidth());b.parentNode.removeChild(b)}}function ia(a,b){if(a.oScroll.sX===""&&a.oScroll.sY!==
-""){j(b).width();b.style.width=v(j(b).outerWidth()-a.oScroll.iBarWidth)}else if(a.oScroll.sX!=="")b.style.width=v(j(b).outerWidth())}function Ea(a,b,c){if(typeof c=="undefined"||c){c=Fa(a,b);b=N(a,b);if(c<0)return null;return a.aoData[c].nTr.getElementsByTagName("td")[b]}var d=-1,f,e;c=-1;var i=p.createElement("div");i.style.visibility="hidden";i.style.position="absolute";p.body.appendChild(i);f=0;for(e=a.aoData.length;f<e;f++){i.innerHTML=a.aoData[f]._aData[b];if(i.offsetWidth>d){d=i.offsetWidth;
-c=f}}p.body.removeChild(i);if(c>=0){b=N(a,b);if(a=a.aoData[c].nTr.getElementsByTagName("td")[b])return a}return null}function Fa(a,b){for(var c=0,d=-1,f=0;f<a.aoData.length;f++){var e=a.aoData[f]._aData[b];if(e.length>c){c=e.length;d=f}}return d}function v(a){if(a===null)return"0px";if(typeof a=="number")return a+"px";if(a.indexOf("em")!=-1||a.indexOf("%")!=-1||a.indexOf("ex")!=-1||a.indexOf("px")!=-1)return a;return a+"px"}function La(a,b){if(a.length!=b.length)return 1;for(var c=0;c<a.length;c++)if(a[c]!=
-b[c])return 2;return 0}function Z(a){for(var b=m.aTypes,c=b.length,d=0;d<c;d++){var f=b[d](a);if(f!==null)return f}return"string"}function B(a){for(var b=0;b<E.length;b++)if(E[b].nTable==a)return E[b];return null}function V(a){for(var b=[],c=a.aoData.length,d=0;d<c;d++)b.push(a.aoData[d]._aData);return b}function S(a){for(var b=[],c=a.aoData.length,d=0;d<c;d++)b.push(a.aoData[d].nTr);return b}function X(a){var b=S(a),c=[],d,f=[],e,i,h,k;e=0;for(i=b.length;e<i;e++){c=[];h=0;for(k=b[e].childNodes.length;h<
-k;h++){d=b[e].childNodes[h];d.nodeName.toUpperCase()=="TD"&&c.push(d)}h=d=0;for(k=a.aoColumns.length;h<k;h++)if(a.aoColumns[h].bVisible)f.push(c[h-d]);else{f.push(a.aoData[e]._anHidden[h]);d++}}return f}function ha(a){return a.replace(new RegExp("(\\/|\\.|\\*|\\+|\\?|\\||\\(|\\)|\\[|\\]|\\{|\\}|\\\\|\\$|\\^)","g"),"\\$1")}function ja(a,b){for(var c=-1,d=0,f=a.length;d<f;d++)if(a[d]==b)c=d;else a[d]>b&&a[d]--;c!=-1&&a.splice(c,1)}function qa(a,b){b=b.split(",");for(var c=[],d=0,f=a.aoColumns.length;d<
-f;d++)for(var e=0;e<f;e++)if(a.aoColumns[d].sName==b[e]){c.push(e);break}return c}function aa(a){for(var b="",c=0,d=a.aoColumns.length;c<d;c++)b+=a.aoColumns[c].sName+",";if(b.length==d)return"";return b.slice(0,-1)}function J(a,b,c){a=a.sTableId===""?"DataTables warning: "+c:"DataTables warning (table id = '"+a.sTableId+"'): "+c;if(b===0)if(m.sErrMode=="alert")alert(a);else throw a;else typeof console!="undefined"&&typeof console.log!="undefined"&&console.log(a)}function ba(a){a.aoData.length=0;
-a.aiDisplayMaster.length=0;a.aiDisplay.length=0;F(a)}function Ga(a){if(a.oFeatures.bStateSave){var b,c="{";c+='"iCreate": '+(new Date).getTime()+",";c+='"iStart": '+a._iDisplayStart+",";c+='"iEnd": '+a._iDisplayEnd+",";c+='"iLength": '+a._iDisplayLength+",";c+='"sFilter": "'+a.oPreviousSearch.sSearch.replace('"','\\"')+'",';c+='"sFilterEsc": '+!a.oPreviousSearch.bRegex+",";c+='"aaSorting": [ ';for(b=0;b<a.aaSorting.length;b++)c+="["+a.aaSorting[b][0]+",'"+a.aaSorting[b][1]+"'],";c=c.substring(0,c.length-
-1);c+="],";c+='"aaSearchCols": [ ';for(b=0;b<a.aoPreSearchCols.length;b++)c+="['"+a.aoPreSearchCols[b].sSearch.replace("'","'")+"',"+!a.aoPreSearchCols[b].bRegex+"],";c=c.substring(0,c.length-1);c+="],";c+='"abVisCols": [ ';for(b=0;b<a.aoColumns.length;b++)c+=a.aoColumns[b].bVisible+",";c=c.substring(0,c.length-1);c+="]";c+="}";Ha(a.sCookiePrefix+a.sInstance,c,a.iCookieDuration,a.sCookiePrefix)}}function Ia(a,b){if(a.oFeatures.bStateSave){var c,d=ka(a.sCookiePrefix+a.sInstance);if(d!==null&&d!==""){try{c=
-typeof JSON=="object"&&typeof JSON.parse=="function"?JSON.parse(d.replace(/'/g,'"')):eval("("+d+")")}catch(f){return}a._iDisplayStart=c.iStart;a.iInitDisplayStart=c.iStart;a._iDisplayEnd=c.iEnd;a._iDisplayLength=c.iLength;a.oPreviousSearch.sSearch=c.sFilter;a.aaSorting=c.aaSorting.slice();a.saved_aaSorting=c.aaSorting.slice();if(typeof c.sFilterEsc!="undefined")a.oPreviousSearch.bRegex=!c.sFilterEsc;if(typeof c.aaSearchCols!="undefined")for(d=0;d<c.aaSearchCols.length;d++)a.aoPreSearchCols[d]={sSearch:c.aaSearchCols[d][0],
-bRegex:!c.aaSearchCols[d][1]};if(typeof c.abVisCols!="undefined"){b.saved_aoColumns=[];for(d=0;d<c.abVisCols.length;d++){b.saved_aoColumns[d]={};b.saved_aoColumns[d].bVisible=c.abVisCols[d]}}}}}function Ha(a,b,c,d){var f=new Date;f.setTime(f.getTime()+c*1E3);c=Y.location.pathname.split("/");var e=a+"_"+c.pop().replace(/[\/:]/g,"").toLowerCase();b=e+"="+encodeURIComponent(b)+"; expires="+f.toGMTString()+"; path="+c.join("/")+"/";f="";a=9999999999999;var i;if((ka(e)!==null?p.cookie.length:b.length+
-p.cookie.length)+10>4096){e=p.cookie.split(";");for(var h=0,k=e.length;h<k;h++)if(e[h].indexOf(d)!=-1){var o=e[h].split("=");try{i=eval("("+decodeURIComponent(o[1])+")")}catch(t){continue}if(typeof i.iCreate!="undefined"&&i.iCreate<a){f=o[0];a=i.iCreate}}if(f!=="")p.cookie=f+"=; expires=Thu, 01-Jan-1970 00:00:01 GMT; path="+c.join("/")+"/"}p.cookie=b}function ka(a){var b=Y.location.pathname.split("/");a=a+"_"+b[b.length-1].replace(/[\/:]/g,"").toLowerCase()+"=";b=p.cookie.split(";");for(var c=0;c<
-b.length;c++){for(var d=b[c];d.charAt(0)==" ";)d=d.substring(1,d.length);if(d.indexOf(a)===0)return decodeURIComponent(d.substring(a.length,d.length))}return null}function ca(a){a=a.getElementsByTagName("tr");if(a.length==1)return a[0].getElementsByTagName("th");var b=[],c=[],d,f,e,i,h,k,o=function(G,Ma,la){for(;typeof G[Ma][la]!="undefined";)la++;return la},t=function(G){if(typeof b[G]=="undefined")b[G]=[]};d=0;for(i=a.length;d<i;d++){t(d);var s=0,H=[];f=0;for(h=a[d].childNodes.length;f<h;f++)if(a[d].childNodes[f].nodeName.toUpperCase()==
-"TD"||a[d].childNodes[f].nodeName.toUpperCase()=="TH")H.push(a[d].childNodes[f]);f=0;for(h=H.length;f<h;f++){var I=H[f].getAttribute("colspan")*1,A=H[f].getAttribute("rowspan")*1;if(!I||I===0||I===1){k=o(b,d,s);b[d][k]=H[f].nodeName.toUpperCase()=="TD"?4:H[f];if(A||A===0||A===1)for(e=1;e<A;e++){t(d+e);b[d+e][k]=2}s++}else{k=o(b,d,s);for(e=0;e<I;e++)b[d][k+e]=3;s+=I}}}d=0;for(i=b[0].length;d<i;d++){f=0;for(h=b.length;f<h;f++)typeof b[f][d]=="object"&&c.push(b[f][d])}return c}function Ja(){var a=p.createElement("p"),
-b=a.style;b.width="100%";b.height="200px";var c=p.createElement("div");b=c.style;b.position="absolute";b.top="0px";b.left="0px";b.visibility="hidden";b.width="200px";b.height="150px";b.overflow="hidden";c.appendChild(a);p.body.appendChild(c);b=a.offsetWidth;c.style.overflow="scroll";a=a.offsetWidth;if(b==a)a=c.clientWidth;p.body.removeChild(c);return b-a}function M(a,b,c){for(var d=0,f=b.length;d<f;d++)for(var e=0,i=b[d].childNodes.length;e<i;e++)if(b[d].childNodes[e].nodeType==1)typeof c!="undefined"?
-a(b[d].childNodes[e],c[d].childNodes[e]):a(b[d].childNodes[e])}function n(a,b,c,d){if(typeof d=="undefined")d=c;if(typeof b[c]!="undefined")a[d]=b[c]}this.oApi={};this.fnDraw=function(a){var b=B(this[m.iApiIndex]);if(typeof a!="undefined"&&a===false){F(b);D(b)}else L(b)};this.fnFilter=function(a,b,c,d,f){var e=B(this[m.iApiIndex]);if(e.oFeatures.bFilter){if(typeof c=="undefined")c=false;if(typeof d=="undefined")d=true;if(typeof f=="undefined")f=true;if(typeof b=="undefined"||b===null){P(e,{sSearch:a,
-bRegex:c,bSmart:d},1);if(f&&typeof e.aanFeatures.f!="undefined"){b=e.aanFeatures.f;c=0;for(d=b.length;c<d;c++)j("input",b[c]).val(a)}}else{e.aoPreSearchCols[b].sSearch=a;e.aoPreSearchCols[b].bRegex=c;e.aoPreSearchCols[b].bSmart=d;P(e,e.oPreviousSearch,1)}}};this.fnSettings=function(){return B(this[m.iApiIndex])};this.fnVersionCheck=m.fnVersionCheck;this.fnSort=function(a){var b=B(this[m.iApiIndex]);b.aaSorting=a;O(b)};this.fnSortListener=function(a,b,c){$(B(this[m.iApiIndex]),a,b,c)};this.fnAddData=
-function(a,b){if(a.length===0)return[];var c=[],d,f=B(this[m.iApiIndex]);if(typeof a[0]=="object")for(var e=0;e<a.length;e++){d=w(f,a[e]);if(d==-1)return c;c.push(d)}else{d=w(f,a);if(d==-1)return c;c.push(d)}f.aiDisplay=f.aiDisplayMaster.slice();Q(f,1);if(typeof b=="undefined"||b)L(f);return c};this.fnDeleteRow=function(a,b,c){var d=B(this[m.iApiIndex]);a=typeof a=="object"?R(d,a):a;var f=d.aoData.splice(a,1);ja(d.aiDisplayMaster,a);ja(d.aiDisplay,a);Q(d,1);typeof b=="function"&&b.call(this,d,f);
-if(d._iDisplayStart>=d.aiDisplay.length){d._iDisplayStart-=d._iDisplayLength;if(d._iDisplayStart<0)d._iDisplayStart=0}if(typeof c=="undefined"||c){F(d);D(d)}return f};this.fnClearTable=function(a){var b=B(this[m.iApiIndex]);ba(b);if(typeof a=="undefined"||a)D(b)};this.fnOpen=function(a,b,c){var d=B(this[m.iApiIndex]);this.fnClose(a);var f=p.createElement("tr"),e=p.createElement("td");f.appendChild(e);e.className=c;e.colSpan=T(d);e.innerHTML=b;b=j("tr",d.nTBody);j.inArray(a,b)!=-1&&j(f).insertAfter(a);
-d.aoOpenRows.push({nTr:f,nParent:a});return f};this.fnClose=function(a){for(var b=B(this[m.iApiIndex]),c=0;c<b.aoOpenRows.length;c++)if(b.aoOpenRows[c].nParent==a){(a=b.aoOpenRows[c].nTr.parentNode)&&a.removeChild(b.aoOpenRows[c].nTr);b.aoOpenRows.splice(c,1);return 0}return 1};this.fnGetData=function(a){var b=B(this[m.iApiIndex]);if(typeof a!="undefined"){a=typeof a=="object"?R(b,a):a;return b.aoData[a]._aData}return V(b)};this.fnGetNodes=function(a){var b=B(this[m.iApiIndex]);if(typeof a!="undefined")return b.aoData[a].nTr;
-return S(b)};this.fnGetPosition=function(a){var b=B(this[m.iApiIndex]);if(a.nodeName.toUpperCase()=="TR")return R(b,a);else if(a.nodeName.toUpperCase()=="TD")for(var c=R(b,a.parentNode),d=0,f=0;f<b.aoColumns.length;f++)if(b.aoColumns[f].bVisible){if(b.aoData[c].nTr.getElementsByTagName("td")[f-d]==a)return[c,f-d,f]}else d++;return null};this.fnUpdate=function(a,b,c,d,f){var e=B(this[m.iApiIndex]),i=typeof b=="object"?R(e,b):b;if(typeof a!="object"){b=a;e.aoData[i]._aData[c]=b;if(e.aoColumns[c].fnRender!==
-null){b=e.aoColumns[c].fnRender({iDataRow:i,iDataColumn:c,aData:e.aoData[i]._aData,oSettings:e});if(e.aoColumns[c].bUseRendered)e.aoData[i]._aData[c]=b}c=N(e,c);if(c!==null)e.aoData[i].nTr.getElementsByTagName("td")[c].innerHTML=b}else{if(a.length!=e.aoColumns.length){J(e,0,"An array passed to fnUpdate must have the same number of columns as the table in question - in this case "+e.aoColumns.length);return 1}for(var h=0;h<a.length;h++){b=a[h];e.aoData[i]._aData[h]=b;if(e.aoColumns[h].fnRender!==null){b=
-e.aoColumns[h].fnRender({iDataRow:i,iDataColumn:h,aData:e.aoData[i]._aData,oSettings:e});if(e.aoColumns[h].bUseRendered)e.aoData[i]._aData[h]=b}c=N(e,h);if(c!==null)e.aoData[i].nTr.getElementsByTagName("td")[c].innerHTML=b}}if(typeof f=="undefined"||f){Q(e,1);U(e)}if(typeof d=="undefined"||d)L(e);return 0};this.fnSetColumnVis=function(a,b){var c=B(this[m.iApiIndex]),d,f;f=c.aoColumns.length;var e,i;if(c.aoColumns[a].bVisible!=b){e=j(">tr",c.nTHead)[0];var h=j(">tr",c.nTFoot)[0],k=[],o=[];for(d=0;d<
-f;d++){k.push(c.aoColumns[d].nTh);o.push(c.aoColumns[d].nTf)}if(b){for(d=b=0;d<a;d++)c.aoColumns[d].bVisible&&b++;if(b>=T(c)){e.appendChild(k[a]);h&&h.appendChild(o[a]);d=0;for(f=c.aoData.length;d<f;d++){e=c.aoData[d]._anHidden[a];c.aoData[d].nTr.appendChild(e)}}else{for(d=a;d<f;d++){i=N(c,d);if(i!==null)break}e.insertBefore(k[a],e.getElementsByTagName("th")[i]);h&&h.insertBefore(o[a],h.getElementsByTagName("th")[i]);X(c);d=0;for(f=c.aoData.length;d<f;d++){e=c.aoData[d]._anHidden[a];c.aoData[d].nTr.insertBefore(e,
-j(">td:eq("+i+")",c.aoData[d].nTr)[0])}}c.aoColumns[a].bVisible=true}else{e.removeChild(k[a]);h&&h.removeChild(o[a]);i=X(c);d=0;for(f=c.aoData.length;d<f;d++){e=i[d*c.aoColumns.length+a*1];c.aoData[d]._anHidden[a]=e;e.parentNode.removeChild(e)}c.aoColumns[a].bVisible=false}d=0;for(f=c.aoOpenRows.length;d<f;d++)c.aoOpenRows[d].nTr.colSpan=T(c);U(c);D(c)}};this.fnPageChange=function(a,b){var c=B(this[m.iApiIndex]);Ba(c,a);F(c);if(typeof b=="undefined"||b)D(c)};this.fnDestroy=function(){var a=B(this[m.iApiIndex]),
-b=a.nTableWrapper.parentNode,c=a.nTBody,d;a.nTable.parentNode.removeChild(a.nTable);j(a.nTableWrapper).remove();a.aaSorting=[];a.aaSortingFixed=[];W(a);j(S(a)).removeClass(a.asStripClasses.join(" "));if(a.bJUI){j("th",a.nTHead).removeClass([m.oStdClasses.sSortable,m.oJUIClasses.sSortableAsc,m.oJUIClasses.sSortableDesc,m.oJUIClasses.sSortableNone].join(" "));j("th span",a.nTHead).remove()}else j("th",a.nTHead).removeClass([m.oStdClasses.sSortable,m.oStdClasses.sSortableAsc,m.oStdClasses.sSortableDesc,
-m.oStdClasses.sSortableNone].join(" "));b.appendChild(a.nTable);b=0;for(d=a.aoData.length;b<d;b++)c.appendChild(a.aoData[b].nTr);j(">tr:even",c).addClass(a.asDestoryStrips[0]);j(">tr:odd",c).addClass(a.asDestoryStrips[1]);b=0;for(d=E.length;b<d;b++)E[b]==a&&E.splice(b,1)};this.fnAdjustColumnSizing=function(a){U(B(this[m.iApiIndex]));if(typeof a=="undefined"||a)this.fnDraw(false)};for(var ma in m.oApi)if(ma)this[ma]=q(ma);this.oApi._fnExternApiFunc=q;this.oApi._fnInitalise=r;this.oApi._fnLanguageProcess=
-u;this.oApi._fnAddColumn=y;this.oApi._fnColumnOptions=C;this.oApi._fnAddData=w;this.oApi._fnGatherData=x;this.oApi._fnDrawHead=z;this.oApi._fnDraw=D;this.oApi._fnReDraw=L;this.oApi._fnAjaxUpdate=oa;this.oApi._fnAjaxUpdateDraw=pa;this.oApi._fnAddOptionsHtml=na;this.oApi._fnFeatureHtmlTable=ua;this.oApi._fnScrollDraw=xa;this.oApi._fnAjustColumnSizing=U;this.oApi._fnFeatureHtmlFilter=sa;this.oApi._fnFilterComplete=P;this.oApi._fnFilterCustom=Aa;this.oApi._fnFilterColumn=za;this.oApi._fnFilter=ya;this.oApi._fnBuildSearchArray=
-Q;this.oApi._fnFilterCreateSearch=fa;this.oApi._fnDataToSearch=ga;this.oApi._fnSort=O;this.oApi._fnSortAttachListener=$;this.oApi._fnSortingClasses=W;this.oApi._fnFeatureHtmlPaginate=wa;this.oApi._fnPageChange=Ba;this.oApi._fnFeatureHtmlInfo=va;this.oApi._fnUpdateInfo=Ca;this.oApi._fnFeatureHtmlLength=ra;this.oApi._fnFeatureHtmlProcessing=ta;this.oApi._fnProcessingDisplay=K;this.oApi._fnVisibleToColumnIndex=da;this.oApi._fnColumnIndexToVisible=N;this.oApi._fnNodeToDataIndex=R;this.oApi._fnVisbleColumns=
-T;this.oApi._fnCalculateEnd=F;this.oApi._fnConvertToWidth=Da;this.oApi._fnCalculateColumnWidths=ea;this.oApi._fnScrollingWidthAdjust=ia;this.oApi._fnGetWidestNode=Ea;this.oApi._fnGetMaxLenString=Fa;this.oApi._fnStringToCss=v;this.oApi._fnArrayCmp=La;this.oApi._fnDetectType=Z;this.oApi._fnSettingsFromNode=B;this.oApi._fnGetDataMaster=V;this.oApi._fnGetTrNodes=S;this.oApi._fnGetTdNodes=X;this.oApi._fnEscapeRegex=ha;this.oApi._fnDeleteIndex=ja;this.oApi._fnReOrderIndex=qa;this.oApi._fnColumnOrdering=
-aa;this.oApi._fnLog=J;this.oApi._fnClearTable=ba;this.oApi._fnSaveState=Ga;this.oApi._fnLoadState=Ia;this.oApi._fnCreateCookie=Ha;this.oApi._fnReadCookie=ka;this.oApi._fnGetUniqueThs=ca;this.oApi._fnScrollBarWidth=Ja;this.oApi._fnApplyToChildren=M;this.oApi._fnMap=n;var Ka=this;return this.each(function(){var a=0,b,c,d,f;a=0;for(b=E.length;a<b;a++){if(E[a].nTable==this)if(typeof g=="undefined"||typeof g.bRetrieve!="undefined"&&g.bRetrieve===true)return E[a].oInstance;else if(typeof g.bDestroy!="undefined"&&
-g.bDestroy===true){E[a].oInstance.fnDestroy();break}else{J(E[a],0,"Cannot reinitialise DataTable.\n\nTo retrieve the DataTables object for this table, please pass either no arguments to the dataTable() function, or set bRetrieve to true. Alternatively, to destory the old table and create a new one, set bDestroy to true (note that a lot of changes to the configuration can be made through the API which is usually much faster).");return}if(E[a].sTableId!==""&&E[a].sTableId==this.getAttribute("id")){E.splice(a,
-1);break}}var e=new l;E.push(e);var i=false,h=false;a=this.getAttribute("id");if(a!==null){e.sTableId=a;e.sInstance=a}else e.sInstance=m._oExternConfig.iNextUnique++;e.oInstance=Ka;e.nTable=this;e.oApi=Ka.oApi;if(typeof g!="undefined"&&g!==null){e.oInit=g;n(e.oFeatures,g,"bPaginate");n(e.oFeatures,g,"bLengthChange");n(e.oFeatures,g,"bFilter");n(e.oFeatures,g,"bSort");n(e.oFeatures,g,"bInfo");n(e.oFeatures,g,"bProcessing");n(e.oFeatures,g,"bAutoWidth");n(e.oFeatures,g,"bSortClasses");n(e.oFeatures,
-g,"bServerSide");n(e.oScroll,g,"sScrollX","sX");n(e.oScroll,g,"sScrollXInner","sXInner");n(e.oScroll,g,"sScrollY","sY");n(e.oScroll,g,"bScrollCollapse","bCollapse");n(e,g,"asStripClasses");n(e,g,"fnRowCallback");n(e,g,"fnHeaderCallback");n(e,g,"fnFooterCallback");n(e,g,"fnInitComplete");n(e,g,"fnServerData");n(e,g,"fnFormatNumber");n(e,g,"aaSorting");n(e,g,"aaSortingFixed");n(e,g,"aLengthMenu");n(e,g,"sPaginationType");n(e,g,"sAjaxSource");n(e,g,"iCookieDuration");n(e,g,"sCookiePrefix");n(e,g,"sDom");
-n(e,g,"oSearch","oPreviousSearch");n(e,g,"aoSearchCols","aoPreSearchCols");n(e,g,"iDisplayLength","_iDisplayLength");n(e,g,"bJQueryUI","bJUI");typeof g.fnDrawCallback=="function"&&e.aoDrawCallback.push({fn:g.fnDrawCallback,sName:"user"});e.oFeatures.bServerSide&&e.oFeatures.bSort&&e.oFeatures.bSortClasses&&e.aoDrawCallback.push({fn:W,sName:"server_side_sort_cla...
[truncated message content] |
|
From: <os...@us...> - 2011-06-02 07:18:20
|
Revision: 3745
http://oscss.svn.sourceforge.net/oscss/?rev=3745&view=rev
Author: oscim
Date: 2011-06-02 07:18:13 +0000 (Thu, 02 Jun 2011)
Log Message:
-----------
correction
Modified Paths:
--------------
branches/2.1.0/catalog/admin/includes/exts/package/packageRepository.php
branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/adminNotif.txt
Modified: branches/2.1.0/catalog/admin/includes/exts/package/packageRepository.php
===================================================================
--- branches/2.1.0/catalog/admin/includes/exts/package/packageRepository.php 2011-06-01 08:29:51 UTC (rev 3744)
+++ branches/2.1.0/catalog/admin/includes/exts/package/packageRepository.php 2011-06-02 07:18:13 UTC (rev 3745)
@@ -1,10 +1,10 @@
<?php if (!defined('HTTP_SERVER')) die('You can not access this file directly!');
/**
- @licence GPL 2005-2010 The osCSS developers - osCSS Open Source E-commerce
+ @licence GPL 2005-2011 The osCSS developers - osCSS Open Source E-commerce
@portion code Copyright (c) 2002 osCommerce
@package osCSS-2 <www http://www.oscss.org>
@version 2.1.0
- @date 10/11/10, 16:36/
+ @date 27/05/11, 14:28
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
@class packageRepository
@@ -154,7 +154,7 @@
}
- if(count($var_file)==0) throw new Exception('Erreur recuperation');
+// if(count($var_file)==0) throw new Exception('Erreur recuperation');
//! add local package
$locale=0;
@@ -201,12 +201,13 @@
$dom->saveXML();
//! mise en cache info
-// $var_file[$pkg]['last_update']= date("Y-m-d H:n:s");
-// $var_file[$pkg]['count']= $comp;
+ $var_file[$pkg]['last_update']= date("Y-m-d H:n:s");
+ $var_file[$pkg]['count']= $comp;
}
}
//! message
- $messageStack->add_session(__('repository ok :').' local','success' );
+ if(count($var_file)==0) throw new Exception('Erreur recuperation');
+ else $messageStack->add_session(__('repository ok :').' local','success' );
@unlink(DIR_FS_ADMIN.DIR_WS_INCLUDES.'data/'.parent::REPOSITORY_DATA);
Modified: branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/adminNotif.txt
===================================================================
--- branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/adminNotif.txt 2011-06-01 08:29:51 UTC (rev 3744)
+++ branches/2.1.0/catalog/admin/includes/languages/fr_FR/modules/pages/adminNotif.txt 2011-06-02 07:18:13 UTC (rev 3745)
@@ -8,7 +8,7 @@
@author oscim <mail aur...@os...> <www http://www.oscim.fr>
@encode UTF-8
*/
-$lang['heading title']='Notifications metiers';
+$lang['heading title']='Notifications métiers';
$lang['heading title configuration']='Régler vos préférences de notifications';
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|