%PDF- %PDF- 403WebShell
403Webshell
Server IP : 37.220.80.31  /  Your IP : 3.137.219.118
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64
User : www-root ( 1010)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/asd.currencyrate/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/asd.currencyrate/include.php
<?php

//http://dev.1c-bitrix.ru/community/webdev/group/78/blog/1657/
IncludeModuleLangFile(__FILE__);

class CASDcurrencyrate
{
	public static function OnAdminListDisplayHandler(&$list)
	{
		if ($GLOBALS['APPLICATION']->GetCurPage()=='/bitrix/admin/currencies_rates.php') {
			$list->context->items[-2] = array(
										'ICON' => 'btn_refresh',
										'TEXT' => GetMessage('ASD_ACTION_GET'),
										'TITLE' => GetMessage('ASD_ACTION_GET_TITLE'),
										'LINK' => $GLOBALS['APPLICATION']->GetCurPageParam('asd_get_rate=Y', array('mode')),
									);
			$list->context->items[-1] = array('SEPARATOR' => 1);
			ksort($list->context->items);
		}
	}

	public static function OnBeforePrologHandler()
	{
		if ($GLOBALS['APPLICATION']->GetCurPage()=='/bitrix/admin/currencies_rates.php' && $_REQUEST['asd_get_rate']=='Y' &&
			$GLOBALS['APPLICATION']->GetGroupRight('currency')>'D'
		) {
			self::UpdateRates(false);
			LocalRedirect($GLOBALS['APPLICATION']->GetCurPageParam('', array('asd_get_rate')));
		}
	}

	public static function UpdateRates($bAgent=true)
	{
		if (CModule::IncludeModule('currency')) {

			$arCurr = array();
			$rsRate = CCurrency::GetList($by='currency', $order='asc');
			while ($arRate = $rsRate->Fetch()) {
				if ($arRate['CURRENCY']!='RUB' && $arRate['CURRENCY']!='RUR') {
					$arCurr[] = $arRate['CURRENCY'];
				}
			}

			if (!empty($arCurr)) {
				$queryStr = 'date_req='.date('d.m.Y');
				$adminDate = date($GLOBALS['DB']->DateFormatToPHP(CLang::GetDateFormat('SHORT')));
				require_once($_SERVER['DOCUMENT_ROOT'].'/bitrix/modules/main/classes/general/xml.php');
				$strQueryText = QueryGetData('www.cbr.ru', 80, '/scripts/XML_daily.asp', $queryStr, $errno, $errstr);
				// www.cbr.ru/scripts/XML_daily.asp?date_req=21.01.2015
				$objXML = new CDataXML();
				if ($objXML->LoadString($strQueryText)) {
					$arData = $objXML->GetArray();
					if (!empty($arData) && is_array($arData)) {
						$percent = round(COption::GetOptionString('asd.currencyrate', 'percent'), 2);
						foreach ($arData['ValCurs']['#']['Valute'] as $arC) {
							if (in_array($arC["#"]["CharCode"][0]["#"], $arCurr)) {
								$rate = doubleval(str_replace(',', '.', $arC['#']['Value'][0]['#']));
								$val = $rate + (($rate * $percent) / 100);
								$arNewRate = array(
											'CURRENCY' => $arC["#"]["CharCode"][0]["#"],
											'RATE_CNT' => intval($arC['#']['Nominal'][0]['#']),
											'RATE' => $val,
											'DATE_RATE' => $adminDate,
										);
								if (!CCurrencyRates::GetList($by='id', $order='desc', $arNewRate)->Fetch()) {
									CCurrencyRates::Add($arNewRate);
								}
							}
						}
					}
				}
			}
		}
		if ($bAgent) {
			return 'CASDcurrencyrate::UpdateRates();';
		}
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit