==== XML ==== user_info Kayfolom ekorepov@ukhta-inform.ru authorUrl 2009 Kayfolom (C) license 1.0 Информация пользователя user_info.php ==== PHP ==== 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 = "_query."&urfa_cmd=enable_int>Включить"; $disable_inet = "_query."&urfa_cmd=disable_int>Выключить"; 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'].'
'; // $_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