Личный кабинет на готовом движке

Технические вопросы по UTM 5.0
Закрыто
Rav
Сообщения: 70
Зарегистрирован: Пт июн 29, 2007 17:02

Сообщение Rav »

Chrst вышлите пожалуйста и мне на raveren(co6aka)inbox.ru

Заранее спасибо.

Аватара пользователя
BlackJack
Сообщения: 35
Зарегистрирован: Чт янв 29, 2009 08:56
Откуда: Voskresensk

Сообщение BlackJack »

Chrst вышлите пожалуйста и мне на a.kislov(@)ncv.ru

Заранее спасибо.

Groom
Сообщения: 8
Зарегистрирован: Вт май 06, 2008 09:20

Сообщение Groom »

2 Chrst
Вопросик такой, если нет связи с базой нетапа, то как минимкм страниуа авторизации должна появиться?
А то странно, поставил уже 7.9 финал, ровно та же петрушка, включаю модуль, иду по ссылке - белая страница.

Аватара пользователя
Chrst
Сообщения: 370
Зарегистрирован: Пт май 11, 2007 09:28
Откуда: Медиахолдинг "ЛеККС"
Контактная информация:

Сообщение Chrst »

Groom писал(а):2 Chrst
Вопросик такой, если нет связи с базой нетапа, то как минимкм страниуа авторизации должна появиться?
А то странно, поставил уже 7.9 финал, ровно та же петрушка, включаю модуль, иду по ссылке - белая страница.
Да приглашение на ввод имени пароля будет, дальше соответственно вывалит ошибку связанную с базой.
Собственно не важно под какую нюку ставить. Ничего специфичного там нет, работать должна со всеми, даже версии 6.х.

Может путь к конфигу не правильно нарисовали? Вообще в index.php есть блок, отвечающий за отображение ошибок кода. Если выключили включите.

Arny
Сообщения: 25
Зарегистрирован: Пн янв 26, 2009 09:00

Сообщение Arny »

спасибо, с кодировками разобрался, насчёт пополнения, знающие люди, подскажите куда рыть

starchik
Сообщения: 461
Зарегистрирован: Сб ноя 22, 2008 22:07

Сообщение starchik »

Arny писал(а):спасибо, с кодировками разобрался, насчёт пополнения, знающие люди, подскажите куда рыть
наверно придется учить пхп....что я щас и делаю) после танцев с бубном, и прочтения пару десятков статей, сделал смену паролей....

Аватара пользователя
Chrst
Сообщения: 370
Зарегистрирован: Пт май 11, 2007 09:28
Откуда: Медиахолдинг "ЛеККС"
Контактная информация:

Сообщение Chrst »

Arny писал(а):спасибо, с кодировками разобрался, насчёт пополнения, знающие люди, подскажите куда рыть
Что имеется ввиду пополнения? Счета? Если да то utm5_payment_tool или urfaclient.
starchik писал(а):сделал смену паролей....
В своем "кабинете" реализовал смену паролей и включение/выключение Интернета через urfa. Кредит тоже сделал посредством urfaclient.
Делать, не делать смену пароля на Интернет из кабинета - спорный религиозный вопрос. Пока не решил ;)

starchik
Сообщения: 461
Зарегистрирован: Сб ноя 22, 2008 22:07

Сообщение starchik »

Chrst писал(а):В своем "кабинете" реализовал смену паролей и включение/выключение Интернета через urfa. Кредит тоже сделал посредством urfaclient.
Делать, не делать смену пароля на Интернет из кабинета - спорный религиозный вопрос. Пока не решил ;)
в твоем кабинет и сделал. вот теперь думаю со сменой тарифов.....стоит или нет и вобще по-силам ли мне это :D

через urfa который на пхп? или оффициаьный? и в чем разница реализации через консольную админку или urfa на php?

Аватара пользователя
Chrst
Сообщения: 370
Зарегистрирован: Пт май 11, 2007 09:28
Откуда: Медиахолдинг "ЛеККС"
Контактная информация:

Сообщение Chrst »

starchik писал(а):через urfa который на пхп? или оффициаьный? и в чем разница реализации через консольную админку или urfa на php?
Через urfaphp (respect автору). Разница собственно не большая, и так и так работает, но у урфы возможности пошире.

starchik
Сообщения: 461
Зарегистрирован: Сб ноя 22, 2008 22:07

Сообщение starchik »

Chrst писал(а):
starchik писал(а):через urfa который на пхп? или оффициаьный? и в чем разница реализации через консольную админку или urfa на php?
Через urfaphp (respect автору). Разница собственно не большая, и так и так работает, но у урфы возможности пошире.
значит будем переходить с консольной админки на urfa.....

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

starchik писал(а):
Chrst писал(а):В своем "кабинете" реализовал смену паролей и включение/выключение Интернета через urfa. Кредит тоже сделал посредством urfaclient.
Делать, не делать смену пароля на Интернет из кабинета - спорный религиозный вопрос. Пока не решил ;)
в твоем кабинет и сделал. вот теперь думаю со сменой тарифов.....стоит или нет и вобще по-силам ли мне это :D
Вот смена тарифа на urfaphp, обкатана и проверена, правда написал для joomla, но можно переделать куда надо. Фактически function plgUserTariffModify получает на вход (&$row) готовую и размеченую html страничку и заменяет на этой странице штуки типа {current_tariff} на реальные значения и готовые формы.
Да, сделано исходя из условий что у пользователя 1 аккаунт и один тариф с одной услугой (у меня именно так, универсальную штуку не стал делать).

Код: Выделить всё

<?php

defined&#40; '_JEXEC' &#41; or die&#40; 'Restricted access' &#41;;

@ini_set&#40;"display_errors", "1"&#41;;
error_reporting&#40;E_ALL&#41;;

require_once&#40;"./urfa/URFAClient.php"&#41;;

$mainframe->registerEvent&#40; 'onPrepareContent', 'plgUserTariffModify' &#41;;

function plgUserTariffModify&#40;&$row, &$params, $page=0&#41;&#123;

    $pos = strpos&#40;$row->text, '&#123;user_tariff&#125;'&#41;;
    if &#40;$pos > 0&#41; &#123;
        $avail_tariffs=array&#40;59,60,61,62,63,64,65&#41;; // id доступных пользователю тарифов
        $row->text = preg_replace&#40;'/&#123;user_tariff&#125;/', '', $row->text&#41;;

	try &#123;
        $urfa_admin = new URFAClient_Admin&#40;'test000', 'test000'&#41;;
	    &#125; catch &#40;Exception $exception&#41; &#123; 
	         echo "Error in line ", $exception->getLine&#40;&#41;;
	         echo $exception->getMessage&#40;&#41;; // Выводит "Невозможно 
                                                        // открыть файл"
	   &#125; 
        $user_tariff = $urfa_admin->rpcf_get_user_tariffs&#40;$_SESSION&#91;'URFA'&#93;&#91;'user_id'&#93;&#41;;
//***************** Обработка смены тарифа начало
        $change_tariff_message = '';
        $uri = & JFactory&#58;&#58;getURI&#40;&#41;;

        if &#40;isset&#40;$uri->_vars&#91;'urfa_next_tariff'&#93;&#41;&&isset&#40;$uri->_vars&#91;'urfa_next_tariff_accept'&#93;&#41;&#41; &#123; // =='accepted'
            $user_id = $_SESSION&#91;'URFA'&#93;&#91;'user_id'&#93;;
            $account_id = $_SESSION&#91;'URFA'&#93;&#91;'basic_account'&#93;;
            $service_id = 108; // id разовой услуги смены тарифа
            $tariff_current =     $user_tariff&#91;'user_tariffs'&#93;&#91;0&#93;&#91;'current_tariff'&#93;;
            $tariff_next = $uri->_vars&#91;'urfa_next_tariff'&#93;;
 
            $tariff_link_id =     $user_tariff&#91;'user_tariffs'&#93;&#91;0&#93;&#91;'tariff_link_id'&#93;;

            if &#40;$user_tariff&#91;'user_tariffs'&#93;&#91;0&#93;&#91;'next_tariff'&#93;<>$tariff_next&#41; &#123;
                $new_tariff_link_id = $urfa_admin->rpcf_link_user_tariff&#40;$user_id, $account_id, $tariff_current, $tariff_next, $discount_period_id, $tariff_link_id&#41;;
                if &#40;$tariff_link_id==$new_tariff_link_id&#91;'tariff_link_id'&#93;&#41; &#123;
                    $change_tariff_message = 'РўР°С_РёС" С_Р>РчР_С_С_С%РчР_Р_ С_Р°С_С&#9578;РчС'Р_Р_Р_Р_ РїРчС_РёР_Р_Р° С_С_РїРчС_Р_Р_ РёР·Р_РчР_РчР_'; //тариф сменен
                    $user_tariff = $urfa_admin->rpcf_get_user_tariffs&#40;$_SESSION&#91;'URFA'&#93;&#91;'user_id'&#93;&#41;;
                    $urfa_admin->rpcf_add_once_service_to_user&#40;$user_id, $account_id, $service_id&#41;; //0x2551 Списываем бабки за смену тарифа
                &#125; else &#123;
                    $change_tariff_message = 'Р_С_РёР+РєР° С_Р_РчР_С< С'Р°С_РёС"Р° С_Р>РчР_С_С_С%РчР_Р_ С_Р°С_С&#9578;РчС'Р_Р_Р_Р_ РїРчС_РёР_Р_Р°'; //неудача смены тарифа
                &#125;
            &#125;
            array_pop&#40;$uri->_vars&#41;;
        &#125;
//***************** Обработка смены тарифа конец
	$discount_period = $urfa_admin->rpcf_get_discount_period&#40;$user_tariff&#91;'user_tariffs'&#93;&#91;0&#93;&#91;'discount_period_id'&#93;&#41;;
	$discount_period_start = date&#40;"Р"Р°С'Р° d.m.YР_. Р_С_РчР_С_ H&#58;i",$discount_period&#91;'start_date'&#93;&#41;;
	$discount_period_end = date&#40;"Р"Р°С'Р° d.m.YР_. Р_С_РчР_С_ H&#58;i",$discount_period&#91;'end_date'&#93;&#41;;
	$current_tariff = $urfa_admin->rpcf_get_tariff&#40;$user_tariff&#91;'user_tariffs'&#93;&#91;0&#93;&#91;'current_tariff'&#93;&#41;;
	$next_tariff = $urfa_admin->rpcf_get_tariff&#40;$user_tariff&#91;'user_tariffs'&#93;&#91;0&#93;&#91;'next_tariff'&#93;&#41;;
//*******************************  Форма смены тарифа начало
	$form_title = '<FORM METHOD="GET">';
        unset&#40;$uri->_vars&#91;'urfa_next_tariff'&#93;&#41;;
        unset&#40;$uri->_vars&#91;'urfa_next_tariff_accept'&#93;&#41;;
	$form_footer = '</FORM>';
        $form_body = '';
        while&#40;list&#40;$key, $val&#41; = each&#40;$uri->_vars&#41;&#41; &#123;
          $form_body = $form_body.'<input type="hidden" name="'.$key.'" value="'.$val.'">';
        &#125;
        $form_body = $form_body.'<SELECT NAME="urfa_next_tariff"> ';
	$tariffs_list = $urfa_admin->rpcf_get_tariffs_list&#40;&#41;;
	for &#40;$j=0;$j<count&#40;$avail_tariffs&#41;;$j++&#41; &#123;
        	for &#40;$i=0;$i<$tariffs_list&#91;'count'&#93;;$i++&#41; &#123;
                	if &#40;$tariffs_list&#91;'tariffs'&#93;&#91;$i&#93;&#91;'id'&#93;==$avail_tariffs&#91;$j&#93;&#41; &#123;
				$form_body = $form_body.'<OPTION VALUE='.$tariffs_list&#91;'tariffs'&#93;&#91;$i&#93;&#91;'id'&#93;.'>'.$tariffs_list&#91;'tariffs'&#93;&#91;$i&#93;&#91;'name'&#93;.'</OPTION>';
				break;
			&#125;
		&#125;
	&#125;
        $form_body = $form_body.'</SELECT> <BR> <BR>';
        $form_body = $form_body.'<input name="urfa_next_tariff_accept" type="checkbox" value="accepted">РЇ РїР_Р_РёР_Р°С_ Рё РїС_РёР_РёР_Р°С_ С_С_Р>Р_Р_РёС_ С_Р_РчР_С< С'Р°С_РёС"Р°</input>';
        $form_body = $form_body.'<BR> <BR> <input type="submit" value="РЎР_РчР_РёС'С_ С'Р°С_РёС"">';
	$form_change_tariff = $form_title.$form_body.$form_footer;
//*******************************  Форма смены тарифа конец
        $row->text = preg_replace&#40;'/&#123;current_tariff&#125;/', $current_tariff&#91;'tariff_name'&#93;, $row->text&#41;;
        $row->text = preg_replace&#40;'/&#123;next_tariff&#125;/', $next_tariff&#91;'tariff_name'&#93;, $row->text&#41;;
        $row->text = preg_replace&#40;'/&#123;discount_period_start&#125;/', $discount_period_start, $row->text&#41;;
        $row->text = preg_replace&#40;'/&#123;discount_period_end&#125;/', $discount_period_end, $row->text&#41;;
        $row->text = preg_replace&#40;'/&#123;form_change_tariff&#125;/', $form_change_tariff, $row->text&#41;;
        $row->text = preg_replace&#40;'/&#123;change_tariff_message&#125;/', $change_tariff_message, $row->text&#41;;
    &#125;
&#125; 


Выглядит итог сделующим образом:
Изображение

starchik
Сообщения: 461
Зарегистрирован: Сб ноя 22, 2008 22:07

Сообщение starchik »

спс за пример, будет от чего отталкиваться

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

только предполагается, что все тарифы заведенные действуют. А это не всегда удобно.

starchik
Сообщения: 461
Зарегистрирован: Сб ноя 22, 2008 22:07

Сообщение starchik »

ага, и постоянно править файлик прописывая id тарифов тож не очень удобно.
может сделать дополнительный столбец напимер visible в таблице tarif, на основании которого выбирать тарифы которые видны пользователю.....

mikos
Сообщения: 38
Зарегистрирован: Пн фев 02, 2009 18:09

Сообщение mikos »

Chrst, если еще не устал рассылать, то буду тоже очень благодарен за мордочку.

satdream@mail.ru

Спасибо!

Закрыто