Содержание

XML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE install SYSTEM "http://dev.joomla.org/xml/1.5/plugin-install.dtd">
<install version="1.5" type="plugin" group="content">
	<name>user_info</name>
	<author>Kayfolom</author>
	<authorEmail>ekorepov@ukhta-inform.ru</authorEmail>
	<authorUrl>authorUrl</authorUrl>
	<creationDate>2009</creationDate>
	<copyright>Kayfolom (C)</copyright>
	<license>license</license>
	<version>1.0</version>
	<description>Информация пользователя</description>
	<files>
		<filename plugin="user_info">user_info.php</filename>
	</files>
    <params />
</install>

PHP

<?php
 
//@ini_set("display_errors", "1");
//error_reporting(E_ALL);
 
defined( '_JEXEC' ) or die( 'Restricted access' );
 
require_once("./urfa/URFAClient.php");
 
$mainframe->registerEvent( 'onPrepareContent', 'plgUserInfoModify' );
 
function plgUserInfoModify(&$row, &$params, $page=0){
    $pos = strpos($row->text, '{user_info}');
    if ($pos!==false) {
        $row->text = preg_replace('/{user_info}/', '', $row->text);
 
//        print '************'.$_SESSION['URFA']['tariff_id'].'************';
 
		try {
	        $urfa_user5 = new URFAClient_User5($_SESSION['URFA']['login'], $_SESSION['URFA']['password']);
		} catch (Exception $exception) { 
			echo "Error in line ", $exception->getLine();
			echo $exception->getMessage();
			exit;
		} 
 
        $uri = & JFactory::getURI();
        if (isset($uri->_vars['urfa_cmd'])) {
            if ($uri->_vars['urfa_cmd']=='enable_int') {
                $urfa_user5->rpcf_user5_change_int_status(1);
                array_pop($uri->_vars);
            } 
        }
        if (isset($uri->_vars['urfa_cmd'])) {
            if ($uri->_vars['urfa_cmd']=='disable_int') {
                $urfa_user5->rpcf_user5_change_int_status(0);
                array_pop($uri->_vars);
            }
        }
		try {
	        $userinfo = $urfa_user5->rpcf_user5_get_user_info();
    	    $services = $urfa_user5->rpcf_user5_get_services();
		} catch (Exception $exception) { 
			echo "Error in line ", $exception->getLine();
			echo $exception->getMessage();
		} 
 
		$service_type = 3; // Состояние ремонта
		$service_traff_index = 0;
		for ($i=0;$i<$services['count'];$i++) {
			if ($services['services'][$i]['service_type']==$service_type) {
				$service_traff_index = $i;
				break;
			}
		}
 
		$services_info = $urfa_user5->rpcf_user5_get_services_info($services['services'][$service_traff_index]['id']);  //-0x4024 
 
//		print_r($services_info);
//		$services_info['iptsd_prepaid_size_list'][$i]['prepaid_p']
//		$services_info['iptsd_prepaid_size_list'][$i]['tclass_name_p']
//$services_info['iptsd_prepaid_size']
        $prepaid_traf = 0;
		for ($i=0;$i<$services_info['iptsd_prepaid_size'];$i++) {
			if (substr_count($services_info['iptsd_prepaid_size_list'][$i]['tclass_name_p'],'(10)')>0) {
				$prepaid_traf = $services_info['iptsd_prepaid_size_list'][$i]['prepaid_p'];
				break;
			}
		}
 
        $row->text = preg_replace('/{full_name}/', $userinfo['full_name'], $row->text);
        $row->text = preg_replace('/{login}/', $userinfo['login'], $row->text);
        $row->text = preg_replace('/{basic_account}/', $userinfo['basic_account'], $row->text);
        switch ($userinfo['is_blocked']) {
          case 0:
            $is_blocked = "Нет";
            break;
          case 16:
            $is_blocked = "Да, отрицательный баланс";
            break;
          case 256:
            $is_blocked = "Да - Заблокирован администратором";
            break;
          case 768:
            $is_blocked = "Да, заблокирован администратором";
            break;
	  default:
	    $is_blocked = "Да, код блокировки=".$userinfo['is_blocked'];
        }
        $row->text = preg_replace('/{is_blocked}/', $is_blocked, $row->text);
        $row->text = preg_replace('/{balance}/', sprintf ("%01.2f руб.",$userinfo['balance']), $row->text);
        $row->text = preg_replace('/{credit}/', sprintf ("%01.2f руб.",$userinfo['credit']), $row->text);
        $row->text = preg_replace('/{create_date}/', date("d.m.Yг.",$userinfo['create_date']), $row->text);
        $row->text = preg_replace('/{actual_address}/', $userinfo['actual_address'], $row->text);
        $row->text = preg_replace('/{icq_number}/', $userinfo['icq_number'], $row->text);
 
        $enable_inet = "<A HREF=?".$uri->_query."&urfa_cmd=enable_int>Включить</A>";
        $disable_inet = "<A HREF=?".$uri->_query."&urfa_cmd=disable_int>Выключить</A>";
        if ($userinfo['int_status']==1) {
          $row->text = preg_replace('/{int_status}/', 'Включен '.$disable_inet, $row->text);
        } else {
          $row->text = preg_replace('/{int_status}/', 'Выключен '.$enable_inet, $row->text);
        }
 
        $row->text = preg_replace('/{tariff}/', $services['services'][$service_traff_index]['tariff_name'], $row->text);
        $row->text = preg_replace('/{cost}/', sprintf("%01.2f руб.",$services['services'][$service_traff_index]['cost']), $row->text);
        $row->text = preg_replace('/{discounted}/', sprintf("%01.2f руб.",$services['services'][$service_traff_index]['discounted_in_curr_period']), $row->text);
        $row->text = preg_replace('/{day_cost}/', sprintf("%01.2f руб.",$services_info['iptsd_borders_size_list'][0]['cost1']), $row->text);
        $row->text = preg_replace('/{night_cost}/', sprintf("%01.2f руб.",$services_info['iptsd_borders_size_list'][1]['cost1']), $row->text);
//        $row->text = preg_replace('/{prepaid_traffic}/', sprintf("%01.3f МБ",$services_info['iptsd_prepaid_size_list'][0]['prepaid_p']/1024/1024), $row->text);
        $row->text = preg_replace('/{prepaid_traffic}/', sprintf("%01.3f МБ",$prepaid_traf/1024/1024), $row->text);
		$IP_list = '';
//		$_SESSION['URFA']['IP'] = '';
		for ($i=0;$i<$services_info['ipgroup_size'];$i++) {
			$IP_list = $IP_list.$services_info['ipgroup_size_list'][$i]['ip'].'<BR>';
//			$_SESSION['URFA']['IP'][$i]=$services_info['ipgroup_size_list'][$i]['ip']; 
		}
        $row->text = preg_replace('/{IP_addres}/', $IP_list, $row->text);
 
 
    }
}

HTML

{user_info}

Лицевой счет

{basic_account}

Логин

{login}

ФИО

{full_name}

Номер ICQ

{icq_number}

Дата подключения

{create_date}

Баланс

{balance}

Кредит

{credit}

Блокировка

{is_blocked}

Интернет

{int_status}

Тариф

Стоимость в месяц

Списано в текущем расчетном периоде

Стоимость дневного трафика (6:00-23:00)

Стоимость ночного трафика (23:00-6:00)

Осталось предоплаченного дневного трафика

IP адреса

{tariff}

{cost}

{discounted}

{day_cost}

{night_cost}

{prepaid_traffic}

{IP_addres}

 

Пример

Лицевой счет

1

Логин

kayfolom

ФИО

Корепов Евгений Августович

Номер ICQ

1501

Дата подключения

12.10.2005г.

Баланс

1487.30 руб.

Кредит

0.00 руб.

Блокировка

Нет

Интернет

Включен Выключить

Тариф

Стоимость в месяц

Списано в текущем расчетном периоде

Стоимость дневного трафика (6:00-23:00)

Стоимость ночного трафика (23:00-6:00)

Осталось предоплаченного дневного трафика

IP адреса

Лето-2009 4000 Мб

1000.00 руб.

1000.00 руб.

1.00 руб.

0.10 руб.

0.000 МБ

10.0.0.25

 
/home/u18456/wiki.flintnet.ru/www/data/pages/joomla_plugin/user_info.txt · Последние изменения: 2011/01/29 13:04 От 78.139.221.22
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki