Закрыть
Загрузка данных
Логин:   Пароль:      
Регистрация   Забыли пароль?

Поиск по Bigstreet:



Недавно читали:


Carw
рейтинг     сила
:) 20,26 :( 7,98

Carw

Тематика моего блога

ИнструкцияПереход на CMS-alpha

Для этого достаточно выполнить следующие SQL-запросы...

Carw 22 октября 2008 12:38 комментариев: 11
:) 3,34 :(
просмотров: 3230

CarwОчень плохой косяк с тэгами

Нашелся очень крутой баг, который просто несовместим с жизнью социальной сети. Если не указать метки, то все написанное… То есть название топика и текст полностью теряются. Да, выводится сообщения об ошибке, но труд уже потерян.
Метки: баг
Carw 1 октября 2008 16:09 комментариев: 8
:) 6,39 :(
просмотров: 897

CarwВсе об инвайтах

Итак, дошел до работы с инвайтами и в данный момент занят их реализацией.

Итак. Сразу после включения я решил сделать инвайт, зашел в базу и увидел там следующие поля:

invite_id — ясно
invite_owner — вроде как владелец инвайта… ок
invite_grantee — вот это не ясно и я не нашел где используется
invite_added — время выдачи инвайта
invite_used — использован ли инвайт?
invite_code — Ну и собственно сам код инвайта

Этого вполне хватает для генерации инвайта.

Далее возникла сложность в том, что регистрация вообще не завершается. Вводишь инвайт, все заполняешь, но в результате снова получаешь форму, без какого либо результата. Пользователь так и не регистрируется. То есть даже не попадает в таблицу ожидания активации.

Ошибка кроется здесь похоже (modules\registration\index.action.php (111)):
  1.  
  2. if (isset($_SESSION['is_grantee'])) {
  3.         $oUser->setId($_SESSION['is_grantee']);
  4.         $oUser->setActivateKey(md5($_POST['reg_login'].date('Y-m-d H:i:s').$_SESSION['is_grantee']));
  5. }
  6.  


$_SESSION['is_grantee'] содержит ID приглашения, но здесь происходит попытка задать ID пользователя равным ID приглашения… если я правильно понял. Более правильным будет задать номер приглашения по которыму пришел пользователь. Для этого меняем код на:

  1.  
  2. if (isset($_SESSION['is_grantee'])) {
  3.         $oUser->setInviteId($_SESSION['is_grantee']);
  4.         $oUser->setActivateKey(md5($_POST['reg_login'].date('Y-m-d H:i:s').$_SESSION['is_grantee']));
  5. }
  6.  


После этой замены пользователь таки проходит регистрацию и попадает в таблицу temp. То есть требуется активация. И письмо уходит. Но! Форма регистрации по прежнему показывается пользователю. Никаких сообщений нет. В коде по идее есть условие, что если письмо отправилось, то происходит переход на страницу /registration/completed/, но похоже оно не выполняется…

UPD: Это происходит из-за небольшой ошибки в файле completed.action.php. Там происходит проверка:

  1.  
  2. if (isset($_SESSION['grantee_registered'])) {
  3.         unset($_SESSION['grantee_registered']);
  4. } else {
  5.         header('Location: '.System_Router::getPathWeb().'/registration/');
  6. }
  7.  


А нужно:

  1.  
  2. if (isset($_SESSION['registered'])) {
  3.         unset($_SESSION['registered']);
  4. } else {
  5.         header('Location: '.System_Router::getPathWeb().'/registration/');
  6. }
  7.  


И все станет работать!

Второй косяк — приглашение так и остается активным. То есть по нему может зарегистрироваться еще туча посетителей.

Для исправления я поменял код:
  1.  
  2. if (isset($oUser)) {
  3.         $oSmarty->assign('registration_form_data', $aUser);
  4. }
  5.  


На следующий:

  1.  
  2. if (isset($oUser) and !$_SESSION['registered']) {
  3.         $oSmarty->assign('registration_form_data', $aUser);
  4. } elseif($_SESSION['registered']) {
  5.         require_once('system/mappers/invites.mysql.mapper.php');
  6.         $oInvitesMapper = new Invites_MySQLMapper(System_Database::getInstance());
  7.         if ($oInvite = $oInvitesMapper->findById($_SESSION['is_grantee'])) {
  8.                 $oInvite->setUsed(date('Y-m-d H:i:s'));
  9.                 $oInvitesMapper->update($oInvite);
  10.         }
  11. }
  12.  


Так приглашения погашаются.

UPD: Еще один момент, у меня тут ошибки стали появляться при активации. Нужно исправить в файле activation.action.php (46):

  1. $oInvitesMapper->save($oInvite);


на

  1. $oInvitesMapper->update($oInvite);
Метки: баг, инвайт
Carw 30 сентября 2008 11:34 комментариев: 50
:) 7 :(
просмотров: 1298

CarwЗаметки при смене дизайна

Я решил написать некую общую заметку, скорее для себя, чтобы не забыть, но если кому-то еще пригодится, то отлично. Добавлять информацию буду по ходу продвижения в работе.
Carw 24 сентября 2008 16:52 комментариев: 4
:) 4,39 :(
просмотров: 1145

CarwGoogle покупает «Бегун»

Вот тебе раз. Размер сделки составляет $140 млн. Но кроме прочего - это явное свидетельство серьезного повышения активности Гугла на Российском рынке.

Интересно другое, что такая сделка однозначно должна повлиять на Рунет в целом. Сейчас по большому счету активнее всего работает именно сеть РСЯ и Бегун, а Гугл весьма осложнен отсутствием нормальной партнерской программы для Агентств и сложностью перевода средств. Если бегун банально заменят на АдВордс, то ситуация просто сыграет на пользу Яндекса. Но скорее всего Гугл расширит свои возможности в России за счет Бегуна и обеспечит нормальную работу на рынке.

Кроме того, есть некоторые заявления о том, что поиск Рамблера будет "усилен" с помощью Гугла, а вместо бегуна будет транслироваться АдСенс. Вот такие дела...

Но посмотрим немного с другой стороны. Как известно условия использования Бегуна менее жесткие, чем у Гугла. Его ставят на множество сайтом с мизерной и, что самое главное, подозрительной посещаемостью. На этом зарабатывает множество серых проектов. Если за это возьмется Гугл, то такие сайты получат серьезные сложности и косвенно может повлечь легкое оздоровление Рунета.

Хорошо бы. :-)
Метки: Begun, Google
Carw 18 июля 2008 13:58 комментариев: 1
:) 3,29 :(
просмотров: 1077





Подписаться на рассылку
"Бесплатный движок bigstreet.ru"


 
© 2009. | О сайте | Инструкции | Обратная связь
© Powered by BigStreet RC1-maps SVN Сервис коротких адресов День святого Валентина
www.webmoney.ru Участник проекта CMS Magazine


Работа с БД:
 Время - 0.0136
 Запросов - 11
Работа с кэшем:
 Время - 0.9335
 Записей - 1
 Прочтений - 1
Общее время:
 2.1466