Spade

Mini Shell

Directory:~$ /home/lmsyaran/public_html/joomla4/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ /home/lmsyaran/public_html/joomla4/order_auto_cancel.zip

PK���[�#o,,
index.htmlnu�[���<html><body
bgcolor="#FFFFFF"></body></html>PK���[xJ4'		order_auto_cancel.phpnu�[���<?php
/**
 * @package	HikaShop for Joomla!
 * @version	4.4.1
 * @author	hikashop.com
 * @copyright	(C) 2010-2021 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 plgHikashopOrder_auto_cancel extends JPlugin
{
	var $message = '';
	function __construct(&$subject, $config){
		parent::__construct($subject, $config);
	}

	function onHikashopCronTrigger(&$messages){
		$pluginsClass = hikashop_get('class.plugins');
		$plugin =
$pluginsClass->getByName('hikashop','order_auto_cancel');

		$plugin_notify = ( isset($plugin->params['notify']) ) ?
$plugin->params['notify'] : false;

		if(empty($plugin->params['period'])){
			$plugin->params['period'] = 86400;
		}
		$this->period = $plugin->params['period'];
		if(!empty($plugin->params['last_cron_update']) &&
$plugin->params['last_cron_update']+$this->period>time()){
			return true;
		}
		$plugin->params['last_cron_update']=time();
		$pluginsClass->save($plugin);
		$this->checkOrders((bool)$plugin_notify);
		if(!empty($this->message)){
			$messages[] = $this->message;
		}
		return true;
	}

	function checkOrders($notify=false){
		$db = JFactory::getDBO();
		$config =& hikashop_config();
		$status = $config->get('order_created_status');
		$query = 'SELECT order_id, order_status, order_created FROM
'.hikashop_table('order').
			' WHERE order_type = '.$db->Quote('sale').'
AND order_created < '.(time()-$this->period).' AND
order_status = '.$db->Quote($status).
			' ORDER BY order_created ASC LIMIT 0, 20';
		$db->setQuery($query);
		$orders = $db->loadObjectList();

		if(!empty($orders)){
			$orderClass = hikashop_get('class.order');
			$status = $config->get('cancelled_order_status');
			$statuses = explode(',',$status);
			$status = reset($statuses);
			foreach($orders as $order){
				$update = new stdClass();
				$update->order_id = $order->order_id;
				$update->order_status = $status;
				if($notify){
					$update->history = new stdClass();
					$update->history->history_notified = 1;
				}
				$orderClass->save($update);
			}
		}

		$app = JFactory::getApplication();
		$this->message = 'Orders checked';
		$app->enqueueMessage($this->message );
		return true;
	}
}
PK���[�O�order_auto_cancel.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension type="plugin" version="2.5"
method="upgrade" group="hikashop">
	<name>Hikashop Orders Automatic Cancel Plugin</name>
	<creationDate>12 février 2021</creationDate>
	<version>4.4.1</version>
	<author>Hikashop</author>
	<authorEmail>dev@hikashop.com</authorEmail>
	<authorUrl>http://www.hikashop.com</authorUrl>
	<copyright>(C) 2010-2021 HIKARI SOFTWARE. All rights
reserved.</copyright>
	<license>http://www.gnu.org/licenses/gpl-2.0.html
GNU/GPL</license>
	<description>This plugin enables you to have the orders
automatically cancelled after some time</description>
	<files>
		<filename
plugin="order_auto_cancel">order_auto_cancel.php</filename>
	</files>
	<params addpath="/components/com_hikashop/params">
		<param name="period" type="text"
size="50" default="86400" label="PERIOD"
description="ORDER_AUTO_CANCEL_PERIOD" />
		<param name="last_cron_update" type="text"
size="50" default="1274903175" label="Last
update" description="ORDER_AUTO_CANCEL_LAST_UPDATE" />
		<param name="notify" type="radio"
default="0" label="NOTIFY_CUSTOMERS"
description="ORDER_AUTO_CANCEL_NOTIFY_CUSTOMERS">
			<option value="0">HIKASHOP_NO</option>
			<option value="1">HIKASHOP_YES</option>
		</param>
	</params>
	<config>
		<fields name="params"
addfieldpath="/components/com_hikashop/fields">
			<fieldset name="basic">
				<field
					name="period"
					type="text"
					label="PERIOD"
					size="50"
					default="86400"
					description="ORDER_AUTO_CANCEL_PERIOD" />
				<field
					name="last_cron_update"
					type="text"
					label="HIKA_LAST_UPDATE"
					size="50"
					default="1274903175"
					description="ORDER_AUTO_CANCEL_LAST_UPDATE" />
				<field name="notify" type="radio"
default="0" label="NOTIFY_CUSTOMERS"
description="ORDER_AUTO_CANCEL_NOTIFY_CUSTOMERS"
class="btn-group btn-group-yesno">
					<option value="0">HIKASHOP_NO</option>
					<option value="1">HIKASHOP_YES</option>
				</field>
			</fieldset>
		</fields>
	</config>
</extension>
PK���[�#o,,
index.htmlnu�[���PK���[xJ4'		forder_auto_cancel.phpnu�[���PK���[�O��	order_auto_cancel.xmlnu�[���PK�