<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Carw в RSS</title>
<link>http://bigstreet.ru/blog/user/Carw/</link>
<atom:link href="http://bigstreet.ru/blog/rss/user/Carw/" rel="self" type="application/rss+xml" />
<language>ru</language>
<description>Блог пользователя Carw в RSS. Тематика моего блога</description>
<managingEditor>telegraph@bigstreet.ru (http://bigstreet.ru)</managingEditor>
<webMaster>telegraph@bigstreet.ru (http://bigstreet.ru)</webMaster>
<copyright>http://bigstreet.ru/blog/user/Carw/</copyright>
<lastBuildDate>Mon, 23 Jun 2008 10:22:40 +0700</lastBuildDate>
<generator>Carw</generator>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<item>
<title>Переход на CMS-alpha</title>
<link>http://bigstreet.ru/blog/topic/331/</link>
<description><![CDATA[<style type="text/css">/**
* GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann
* (http://qbnz.com/highlighter/ and http://geshi.org/)
*/
.php.php .de1, .php.php .de2 {font-family: monospace; font-weight: normal; font-style: normal; margin:0; padding:0; background:inherit;color: #000020;}
.php.php  {color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;}
.php.php a:link {color: #000060;}
.php.php a:hover {background-color: #f0f000;}
.php.php .imp {font-weight: bold; color: red;}
.php.php li, .php.php .li1 {font-weight: normal;color: #003030;}
.php.php .ln {width:1px;font-weight: normal;text-align:right;margin:0;padding:0 2px;}
.php.php .kw1 {color: #b1b100;}
.php.php .kw2 {color: #000000; font-weight: bold;}
.php.php .kw3 {color: #990000;}
.php.php .co1 {color: #666666; font-style: italic;}
.php.php .co2 {color: #666666; font-style: italic;}
.php.php .co3 {color: #0000cc; font-style: italic;}
.php.php .co4 {color: #0000ff; font-style: italic;}
.php.php .coMULTI {color: #666666; font-style: italic;}
.php.php .es_h {color: #000099; font-weight: bold;}
.php.php .es_h {color: #000099; font-weight: bold;}
.php.php .br0 {color: #009900;}
.php.php .sy0 {color: #339933;}
.php.php .st0 {color: #0000ff;}
.php.php .st_h {color: #0000ff;}
.php.php .nu0 {color: #cc66cc;}
.php.php .nu8 {color: #208080;}
.php.php .nu12 {color: #208080;}
.php.php .nu19 {color:#800080;}
.php.php .me1 {color: #004000;}
.php.php .me2 {color: #004000;}
.php.php .re0 {color: #000088;}
.php.php span.xtra { display:block; }
</style>
Для этого достаточно выполнить следующие SQL-запросы...<br><br><cut><br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">CREATE TABLE `community` <span class="br0">&#40;</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_id` int<span class="br0">&#40;</span><span class="nu0">10</span><span class="br0">&#41;</span> unsigned NOT <span class="kw2">NULL</span> auto_increment<span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_title` varchar<span class="br0">&#40;</span><span class="nu0">100</span><span class="br0">&#41;</span> collate utf8_unicode_ci NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">''</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_description` text collate utf8_unicode_ci<span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_address` varchar<span class="br0">&#40;</span><span class="nu0">20</span><span class="br0">&#41;</span> collate utf8_unicode_ci NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">''</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `is_closed` smallint<span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span> unsigned <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_points` double NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">'0'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_members` int<span class="br0">&#40;</span><span class="nu0">10</span><span class="br0">&#41;</span> unsigned NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">'0'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_added` datetime <span class="kw2">default</span> <span class="st_h">'0000-00-00 00:00:00'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `is_banned` smallint<span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span> unsigned <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `ban_reason` text collate utf8_unicode_ci<span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `ban_time` datetime <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_topics` int<span class="br0">&#40;</span><span class="nu0">10</span><span class="br0">&#41;</span> unsigned NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">'0'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; PRIMARY <span class="kw3">KEY</span> &nbsp;<span class="br0">&#40;</span>`community_id`<span class="br0">&#41;</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">KEY</span> `community_address` <span class="br0">&#40;</span>`community_address`<span class="br0">&#41;</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">KEY</span> `community_points` <span class="br0">&#40;</span>`community_points`<span class="br0">&#41;</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">KEY</span> `community_members` <span class="br0">&#40;</span>`community_members`<span class="br0">&#41;</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">KEY</span> `community_topics` <span class="br0">&#40;</span>`community_topics`<span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#41;</span> ENGINE<span class="sy0">=</span>MyISAM <span class="kw2">DEFAULT</span> CHARSET<span class="sy0">=</span>utf8 COLLATE<span class="sy0">=</span>utf8_unicode_ci AUTO_INCREMENT<span class="sy0">=</span><span class="nu0">1</span> ;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">CREATE TABLE `community_tags` <span class="br0">&#40;</span></div></li>
<li class="li1"><div class="de1">&nbsp; `tag_id` int<span class="br0">&#40;</span><span class="nu0">10</span><span class="br0">&#41;</span> unsigned NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">'0'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_id` int<span class="br0">&#40;</span><span class="nu0">10</span><span class="br0">&#41;</span> unsigned NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">'0'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; PRIMARY <span class="kw3">KEY</span> &nbsp;<span class="br0">&#40;</span>`tag_id`<span class="sy0">,</span>`community_id`<span class="br0">&#41;</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">KEY</span> `FK_community_tags_2` <span class="br0">&#40;</span>`community_id`<span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#41;</span> ENGINE<span class="sy0">=</span>MyISAM <span class="kw2">DEFAULT</span> CHARSET<span class="sy0">=</span>utf8 COLLATE<span class="sy0">=</span>utf8_unicode_ci;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">CREATE TABLE `community_users` <span class="br0">&#40;</span></div></li>
<li class="li1"><div class="de1">&nbsp; `community_id` int<span class="br0">&#40;</span><span class="nu0">10</span><span class="br0">&#41;</span> unsigned NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">'0'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `user_id` int<span class="br0">&#40;</span><span class="nu0">10</span><span class="br0">&#41;</span> unsigned NOT <span class="kw2">NULL</span> <span class="kw2">default</span> <span class="st_h">'0'</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `is_owner` smallint<span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span> unsigned <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `is_moderator` smallint<span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span> unsigned <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `is_banned` text collate utf8_unicode_ci<span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `is_invited` datetime <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `is_asker` datetime <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; `joined_date` datetime <span class="kw2">default</span> <span class="kw2">NULL</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; PRIMARY <span class="kw3">KEY</span> &nbsp;<span class="br0">&#40;</span>`community_id`<span class="sy0">,</span>`user_id`<span class="br0">&#41;</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">KEY</span> `community_id` <span class="br0">&#40;</span>`community_id`<span class="br0">&#41;</span><span class="sy0">,</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">KEY</span> `user_id` <span class="br0">&#40;</span>`user_id`<span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#41;</span> ENGINE<span class="sy0">=</span>MyISAM <span class="kw2">DEFAULT</span> CHARSET<span class="sy0">=</span>utf8 COLLATE<span class="sy0">=</span>utf8_unicode_ci;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1">ALTER TABLE `topics` ADD `community_id` INT<span class="br0">&#40;</span> <span class="nu0">10</span> <span class="br0">&#41;</span> UNSIGNED <span class="kw2">default</span> <span class="kw2">NULL</span> ;</div></li>
<li class="li1"><div class="de1">ALTER TABLE `topics` ADD `is_hidden` INT<span class="br0">&#40;</span> <span class="nu0">1</span> <span class="br0">&#41;</span> UNSIGNED <span class="kw2">default</span> <span class="kw2">NULL</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>И не забудьте удалить весь кэш, иначе что-то может пропасть со страниц.]]></description>
<pubDate>Wed, 22 Oct 2008 12:38:47 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/331/</guid>
</item>
<item>
<title>Очень плохой косяк с тэгами</title>
<link>http://bigstreet.ru/blog/topic/272/</link>
<description><![CDATA[Нашелся очень крутой баг, который просто несовместим с жизнью социальной сети. Если не указать метки, то все написанное… То есть название топика и текст полностью теряются. Да, выводится сообщения об ошибке, но труд уже потерян.]]></description>
<pubDate>Wed, 01 Oct 2008 16:09:30 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/272/</guid>
</item>
<item>
<title>Все об инвайтах</title>
<link>http://bigstreet.ru/blog/topic/269/</link>
<description><![CDATA[<style type="text/css">/**
* GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann
* (http://qbnz.com/highlighter/ and http://geshi.org/)
*/
.php.php .de1, .php.php .de2 {font-family: monospace; font-weight: normal; font-style: normal; margin:0; padding:0; background:inherit;color: #000020;}
.php.php  {color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;}
.php.php a:link {color: #000060;}
.php.php a:hover {background-color: #f0f000;}
.php.php .imp {font-weight: bold; color: red;}
.php.php li, .php.php .li1 {font-weight: normal;color: #003030;}
.php.php .ln {width:1px;font-weight: normal;text-align:right;margin:0;padding:0 2px;}
.php.php .kw1 {color: #b1b100;}
.php.php .kw2 {color: #000000; font-weight: bold;}
.php.php .kw3 {color: #990000;}
.php.php .co1 {color: #666666; font-style: italic;}
.php.php .co2 {color: #666666; font-style: italic;}
.php.php .co3 {color: #0000cc; font-style: italic;}
.php.php .co4 {color: #0000ff; font-style: italic;}
.php.php .coMULTI {color: #666666; font-style: italic;}
.php.php .es_h {color: #000099; font-weight: bold;}
.php.php .es_h {color: #000099; font-weight: bold;}
.php.php .br0 {color: #009900;}
.php.php .sy0 {color: #339933;}
.php.php .st0 {color: #0000ff;}
.php.php .st_h {color: #0000ff;}
.php.php .nu0 {color: #cc66cc;}
.php.php .nu8 {color: #208080;}
.php.php .nu12 {color: #208080;}
.php.php .nu19 {color:#800080;}
.php.php .me1 {color: #004000;}
.php.php .me2 {color: #004000;}
.php.php .re0 {color: #000088;}
.php.php span.xtra { display:block; }
</style>
Итак, дошел до работы с инвайтами и в данный момент занят их реализацией.<br><br>Итак. Сразу после включения я решил сделать инвайт, зашел в базу и увидел там следующие поля:<br><br><b>invite_id</b> — ясно<br><b>invite_owner</b> — вроде как владелец инвайта… ок<br><b>invite_grantee</b> — вот это не ясно и я не нашел где используется<br><b>invite_added</b> — время выдачи инвайта<br><b>invite_used</b> — использован ли инвайт?<br><b>invite_code</b> — Ну и собственно сам код инвайта<br><br>Этого вполне хватает для генерации инвайта.<br><br>Далее возникла сложность в том, что регистрация вообще не завершается. Вводишь инвайт, все заполняешь, но в результате снова получаешь форму, без какого либо результата. Пользователь так и не регистрируется. То есть даже не попадает в таблицу ожидания активации.<br><br>Ошибка кроется здесь похоже (<b>modules\registration\index.action.php (111)</b>):<br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'is_grantee'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oUser</span><span class="sy0">-&gt;</span><span class="me1">setId</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'is_grantee'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oUser</span><span class="sy0">-&gt;</span><span class="me1">setActivateKey</span><span class="br0">&#40;</span><span class="kw3">md5</span><span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st_h">'reg_login'</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="kw3">date</span><span class="br0">&#40;</span><span class="st_h">'Y-m-d H:i:s'</span><span class="br0">&#41;</span><span class="sy0">.</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'is_grantee'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>$_SESSION['is_grantee'] содержит ID приглашения, но здесь происходит попытка задать ID пользователя равным ID приглашения… если я правильно понял. Более правильным будет задать номер приглашения по которыму пришел пользователь. Для этого меняем код на:<br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'is_grantee'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oUser</span><span class="sy0">-&gt;</span><span class="me1">setInviteId</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'is_grantee'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oUser</span><span class="sy0">-&gt;</span><span class="me1">setActivateKey</span><span class="br0">&#40;</span><span class="kw3">md5</span><span class="br0">&#40;</span><span class="re0">$_POST</span><span class="br0">&#91;</span><span class="st_h">'reg_login'</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="kw3">date</span><span class="br0">&#40;</span><span class="st_h">'Y-m-d H:i:s'</span><span class="br0">&#41;</span><span class="sy0">.</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'is_grantee'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>После этой замены пользователь таки проходит регистрацию и попадает в таблицу temp. То есть требуется активация. И письмо уходит. Но! Форма регистрации по прежнему показывается пользователю. Никаких сообщений нет. В коде по идее есть условие, что если письмо отправилось, то происходит переход на страницу <b>/registration/completed/</b>, но похоже оно не выполняется…<br><br><b>UPD:</b> Это происходит из-за небольшой ошибки в файле <b>completed.action.php</b>. Там происходит проверка:<br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'grantee_registered'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">unset</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'grantee_registered'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">header</span><span class="br0">&#40;</span><span class="st_h">'Location: '</span><span class="sy0">.</span>System_Router<span class="sy0">::</span><span class="me2">getPathWeb</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">.</span><span class="st_h">'/registration/'</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div> <br><br>А нужно:<br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'registered'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">unset</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'registered'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">header</span><span class="br0">&#40;</span><span class="st_h">'Location: '</span><span class="sy0">.</span>System_Router<span class="sy0">::</span><span class="me2">getPathWeb</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">.</span><span class="st_h">'/registration/'</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>И все станет работать!<br><br>Второй косяк — приглашение так и остается активным. То есть по нему может зарегистрироваться еще туча посетителей.<br><br>Для исправления я поменял код:<br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$oUser</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oSmarty</span><span class="sy0">-&gt;</span><span class="me1">assign</span><span class="br0">&#40;</span><span class="st_h">'registration_form_data'</span><span class="sy0">,</span> <span class="re0">$aUser</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>На следующий:<br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$oUser</span><span class="br0">&#41;</span> and <span class="sy0">!</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'registered'</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oSmarty</span><span class="sy0">-&gt;</span><span class="me1">assign</span><span class="br0">&#40;</span><span class="st_h">'registration_form_data'</span><span class="sy0">,</span> <span class="re0">$aUser</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span> <span class="kw1">elseif</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'registered'</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">require_once</span><span class="br0">&#40;</span><span class="st_h">'system/mappers/invites.mysql.mapper.php'</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oInvitesMapper</span> <span class="sy0">=</span> <span class="kw2">new</span> Invites_MySQLMapper<span class="br0">&#40;</span>System_Database<span class="sy0">::</span><span class="me2">getInstance</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$oInvite</span> <span class="sy0">=</span> <span class="re0">$oInvitesMapper</span><span class="sy0">-&gt;</span><span class="me1">findById</span><span class="br0">&#40;</span><span class="re0">$_SESSION</span><span class="br0">&#91;</span><span class="st_h">'is_grantee'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oInvite</span><span class="sy0">-&gt;</span><span class="me1">setUsed</span><span class="br0">&#40;</span><span class="kw3">date</span><span class="br0">&#40;</span><span class="st_h">'Y-m-d H:i:s'</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oInvitesMapper</span><span class="sy0">-&gt;</span><span class="me1">update</span><span class="br0">&#40;</span><span class="re0">$oInvite</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>Так приглашения погашаются.<br><br><b>UPD:</b> Еще один момент, у меня тут ошибки стали появляться при активации. Нужно исправить в файле <b>activation.action.php (46):</b><br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1"><span class="re0">$oInvitesMapper</span><span class="sy0">-&gt;</span><span class="me1">save</span><span class="br0">&#40;</span><span class="re0">$oInvite</span><span class="br0">&#41;</span>;</div></li>
</ol></div><br><br>на<br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1"><span class="re0">$oInvitesMapper</span><span class="sy0">-&gt;</span><span class="me1">update</span><span class="br0">&#40;</span><span class="re0">$oInvite</span><span class="br0">&#41;</span>;</div></li>
</ol></div>]]></description>
<pubDate>Tue, 30 Sep 2008 11:34:55 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/269/</guid>
</item>
<item>
<title>Заметки при смене дизайна</title>
<link>http://bigstreet.ru/blog/topic/264/</link>
<description><![CDATA[<style type="text/css">/**
* GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann
* (http://qbnz.com/highlighter/ and http://geshi.org/)
*/
.php.php .de1, .php.php .de2 {font-family: monospace; font-weight: normal; font-style: normal; margin:0; padding:0; background:inherit;color: #000020;}
.php.php  {color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;}
.php.php a:link {color: #000060;}
.php.php a:hover {background-color: #f0f000;}
.php.php .imp {font-weight: bold; color: red;}
.php.php li, .php.php .li1 {font-weight: normal;color: #003030;}
.php.php .ln {width:1px;font-weight: normal;text-align:right;margin:0;padding:0 2px;}
.php.php .kw1 {color: #b1b100;}
.php.php .kw2 {color: #000000; font-weight: bold;}
.php.php .kw3 {color: #990000;}
.php.php .co1 {color: #666666; font-style: italic;}
.php.php .co2 {color: #666666; font-style: italic;}
.php.php .co3 {color: #0000cc; font-style: italic;}
.php.php .co4 {color: #0000ff; font-style: italic;}
.php.php .coMULTI {color: #666666; font-style: italic;}
.php.php .es_h {color: #000099; font-weight: bold;}
.php.php .es_h {color: #000099; font-weight: bold;}
.php.php .br0 {color: #009900;}
.php.php .sy0 {color: #339933;}
.php.php .st0 {color: #0000ff;}
.php.php .st_h {color: #0000ff;}
.php.php .nu0 {color: #cc66cc;}
.php.php .nu8 {color: #208080;}
.php.php .nu12 {color: #208080;}
.php.php .nu19 {color:#800080;}
.php.php .me1 {color: #004000;}
.php.php .me2 {color: #004000;}
.php.php .re0 {color: #000088;}
.php.php span.xtra { display:block; }
</style>
Я решил написать некую общую заметку, скорее для себя, чтобы не забыть, но если кому-то еще пригодится, то отлично. Добавлять информацию буду по ходу продвижения в работе.<br><br>Итак поехали.<br><br>1) Работа над шаблоном начинается в файле <b>sample.header.tpl</b><br>2) Параметры, которые можно добавить в «15 горячих» находятся в файле comments.essence.php<br><br>Кстати, я решил добавить время для последних комментариев. Оказалось, что весьма подходящей выглядит функция getAddedAsText(), но она выдает полное время типа «24 сентября 2008 18:35». Возможности взять только время нет. Сделал свою функцию:<br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw2">public</span> <span class="kw2">function</span> getAddedAsTextShort<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$oTimeTool</span> <span class="sy0">=</span> System_Tools<span class="sy0">::</span><span class="me2">getTool</span><span class="br0">&#40;</span><span class="st_h">'Time'</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$added_timestamp</span> <span class="sy0">=</span> <span class="kw3">strtotime</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&gt;</span><span class="me1">getAdded</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="kw3">date</span><span class="br0">&#40;</span><span class="st0">&quot;H:i&quot;</span><span class="sy0">,</span><span class="re0">$added_timestamp</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>Хотя по хорошему стоило бы добавить в getAddedAsText() параметры.<br><br>Далее мне надо вынести небольшой кусочек последнего комментария в 15 горячих… Снова сделал функцию (ох не нравится в ядре что-то менять… но куда деваться?)<br><br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw2">public</span> <span class="kw2">function</span> getEssenceCommentPreview<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="kw3">isset</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&gt;</span><span class="me1">aData</span><span class="br0">&#91;</span><span class="st_h">'comment_text'</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$txt</span> <span class="sy0">=</span> <span class="kw3">strip_tags</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&gt;</span><span class="me1">aData</span><span class="br0">&#91;</span><span class="st_h">'comment_text'</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="kw3">mb_strlen</span><span class="br0">&#40;</span><span class="re0">$txt</span><span class="br0">&#41;</span> <span class="sy0">&lt;</span> <span class="nu0">100</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$txt</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="kw3">mb_substr</span><span class="br0">&#40;</span><span class="re0">$txt</span><span class="sy0">,</span> <span class="nu19">0</span><span class="sy0">,</span> <span class="kw3">mb_strpos</span><span class="br0">&#40;</span><span class="re0">$txt</span><span class="sy0">,</span> <span class="st_h">' '</span><span class="sy0">,</span> <span class="nu0">100</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="sy0">.</span> <span class="st_h">'...'</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="kw2">false</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br><br>4) Следующий файл, который выводит топики на главной — <b>sample.topics.tpl</b><br>5) Возник глобальный вопрос — где определяется стартовый шаблон на той или иной странице? Пока не нашел ответа.<br>6) При сохранении данных профиля можно как-то вывести сообщение о результате? Пока не нашел ответа.<br>7) В файле <b>blog.tag.tpl</b> насмерть вшит блок:<br><div class="php php" style="color: #000066; border: 1px solid #CCCCCC; background-color: #F6F6F0; padding: 0 5px 0 15px; margin: 5px 0 5px 0;"><ol><li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="sy0">&lt;</span>script type<span class="sy0">=</span><span class="st0">&quot;text/javascript&quot;</span><span class="sy0">&gt;&lt;!--</span></div></li>
<li class="li1"><div class="de1">google_ad_client <span class="sy0">=</span> <span class="st0">&quot;pub-8478767173457946&quot;</span>;</div></li>
<li class="li1"><div class="de1"><span class="coMULTI">/* 468x15, создано 28.06.08 */</span></div></li>
<li class="li1"><div class="de1">google_ad_slot <span class="sy0">=</span> <span class="st0">&quot;9454261458&quot;</span>;</div></li>
<li class="li1"><div class="de1">google_ad_width <span class="sy0">=</span> <span class="nu0">468</span>;</div></li>
<li class="li1"><div class="de1">google_ad_height <span class="sy0">=</span> <span class="nu0">15</span>;</div></li>
<li class="li1"><div class="de1"><span class="co1">//--&gt;</span></div></li>
<li class="li1"><div class="de1"><span class="kw2">&lt;/script&gt;</span></div></li>
<li class="li1"><div class="de1"><span class="sy0">&lt;</span>script type<span class="sy0">=</span><span class="st0">&quot;text/javascript&quot;</span></div></li>
<li class="li1"><div class="de1">src<span class="sy0">=</span><span class="st0">&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;</span><span class="sy0">&gt;</span></div></li>
<li class="li1"><div class="de1"><span class="kw2">&lt;/script&gt;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
</ol></div><br>Это дело показывается когда вы нажимаете на какой-то тэг ;-)<br><br>8) Как разобраться с инвайтами написал <a href="http://bigstreet.ru/blog/topic/269/">отдельно</a>.]]></description>
<pubDate>Wed, 24 Sep 2008 16:52:38 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/264/</guid>
</item>
<item>
<title>Google покупает «Бегун»</title>
<link>http://bigstreet.ru/blog/topic/181/</link>
<description><![CDATA[Вот тебе раз. Размер сделки составляет $140 млн. Но кроме прочего - это явное свидетельство серьезного повышения активности Гугла на Российском рынке.<br><br>Интересно другое, что такая сделка однозначно должна повлиять на Рунет в целом. Сейчас по большому счету активнее всего работает именно сеть РСЯ и Бегун, а Гугл весьма осложнен отсутствием нормальной партнерской программы для Агентств и сложностью перевода средств. Если бегун банально заменят на АдВордс, то ситуация просто сыграет на пользу Яндекса. Но скорее всего Гугл расширит свои возможности в России за счет Бегуна и обеспечит нормальную работу на рынке.<br><br>Кроме того, есть некоторые заявления о том, что поиск Рамблера будет "усилен" с помощью Гугла, а вместо бегуна будет транслироваться АдСенс. Вот такие дела...<br><br>Но посмотрим немного с другой стороны. Как известно условия использования Бегуна менее жесткие, чем у Гугла. Его ставят на множество сайтом с мизерной и, что самое главное, подозрительной посещаемостью. На этом зарабатывает множество серых проектов. Если за это возьмется Гугл, то такие сайты получат серьезные сложности и косвенно может повлечь легкое оздоровление Рунета.<br><br>Хорошо бы. :-)]]></description>
<pubDate>Fri, 18 Jul 2008 13:58:45 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/181/</guid>
</item>
<item>
<title>Издеваемся над парсером как можем</title>
<link>http://bigstreet.ru/blog/topic/175/</link>
<description><![CDATA[На самом деле это мой тестовый пост, в котором я сейчас буду над парсером издеваться и насильничать. Поехали...<br><cut><br>Ну вот, немного покопавшись в коде, пробуем провернуть старую махинацию. Но див-то уже оказывается запрещен... ага, немного подумав пробуем использовать все что под руку попадется, а именно ссылку:<br><br><a href="#" style="position: absolute; left: 311px; top: 20px">Паучки, паучки, паучки...</a><br><br>Вот ведь... сработало...<br><br>Движемся далее... попробуем любой элемент, который обрабатывается парсером точно. Например: h3<br><br><h3>Паучки, паучки, паучки...</h3><br><br>Не прокатило. Действительно обрабатывается. Что-же не обрабатывается как положено?<br><br>em, cut, a, font, img, br, hr<br><br>Пробуем каждый:<br><br>em: <em style="position: absolute; left: 311px; top: 20px">Паучки, паучки, паучки...</em><br><br>cut: <cut style="position: absolute; left: 311px; top: 20px">Паучки, паучки, паучки...<br><br>font: <font style="position: absolute; left: 311px; top: 20px">Паучки, паучки, паучки...</font><br><br>img: <img src="http://bigstreet.ru/uploads/users/295/avatar_medium.gif" style="position: absolute; left: 111px; top: 20px"><br><br>br: <br style="position: absolute; left: 311px; top: 20px" /><br><br>hr: <hr style="position: absolute; left: 311px; top: 20px" /><br><br><em style="background-color: #c0c0c0">Заметили как страницу порвало? Похоже это обработка cut. А двойные кавычки в метках все еще текст убивают.</em></br>]]></description>
<pubDate>Thu, 17 Jul 2008 11:14:02 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/175/</guid>
</item>
<item>
<title>Модерируемый баг-лист</title>
<link>http://bigstreet.ru/blog/topic/127/</link>
<description><![CDATA[Увы, но список в результате очередного эксперимента съелся и восстановить его нереально. Поэтому я скоро изучу движок снова и выпишу замеченные ошибки с нуля.]]></description>
<pubDate>Thu, 03 Jul 2008 14:57:06 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/127/</guid>
</item>
<item>
<title>Мысли вслух о карме</title>
<link>http://bigstreet.ru/blog/topic/116/</link>
<description><![CDATA[На самом деле мне весьма не нравится механизм кармы. Для знающих, что есть Fallout, приведу аналогию с деньгами в этой выдающейся игре. Сначала кажется, что деньги вещь просто жутко важная и необходимая, но по ходу начинаешь понимать, что денег немеряно, а необходимости в них практически нет.<br><br><b>Симптомы</b><br><br>Так и на хабре происходит. Чтобы писать в некий блог нужно иметь карму >= 5. И на этом дальнейший ее рост имеет весьма малое значение. Никаких новых возможностей или открытий. Единственное, что это спасает от организованных набегов вредителей, которые могут существенно понизить карму, если их что-то задело. И это тоже своего рода сложность, потому как люди с шаткой позицией боятся делать шаги, которые могут быть полезными сообществу.<br><br>Третья сложность, порождаемая кармой - отсутствие неких начальных возможностей и возможности реабилитироваться. Это порождает дополнительную волну вынужденного дублирования аккаунтов.<br><br>Четвертое. Карма - это односторонний инструмент, который не приветствует никак оппозицию. Условно говоря, если в сеть по физике зашел человек, который имеет альтернативную теорию. Разумеется он уйдет в сильный минус, но теория может быть передовой, просто неофициальной / непринятой / нераспространенной / новой. И человек не сможет найти сторонников, которые могут помочь в развитии идеи.<br><br><b>Диагноз</b><br><br>Механизм не соответствует задаче и ограничивает возможности аудитории.<br><br><b>Методы лечения</b><br><br>Изложу буквально несколько мыслей, которые могут оказаться весьма хорошими (а может и нет).<br><br><ol><br><li>Рейтинг должен быть более косвенный, который отражает реальную позицию человека в обществе, а не случайны самосуд и убийство. На эту роль вполне может подойти параметр Сила. Он набирается за дело и весьма сложен для простого вредительства.</li><br><li>Можно позволить создавать группы, в которые можно писать с отрицательным рейтингом. Это можно сделать как опцию при создании группы.</li><br><li>Рейтинг отражает принятие сообществом в большинстве своем, но альтернативное мнение тоже может жить и организовываться. То есть имея "минус" человек может тоже самое, что и имея плюс, но на другой стороне. Это образует некую полярность, а рейтинг будет отражать скорее позицию человека.</li><br><li>Нужен механизм ступеней. То есть набор своеобразных ярлыков, которые человек может получить в сообществе. Так как рейтинг отражает скорее позицию, чем достижение, то нужен дополнительный механизм. Возможно это некий прогресс в рамках одной группы. То есть группа имеет свою "лестницу достижений" и человек участвуя в этой группе по ней продвигается. А остальные могут посмотреть его успехи в виде списка полученных званий. Опять же можно сочетать с отрицательным рейтингом, что может привести к званиям "могучий PHP-кодер" или "злостный PHP-критик"</li><br></ol><br><br>А вы как думаете, уважаемые?<br><br><b>UPD</b><br><br>Переспал еще ночь с мыслью и понял, что в рассуждения выше закралась логическая ошибка. Реально не могут существовать "минусовые" группы, так как в их условных рамках будут собеседники, которые согласны с комментариями. И разумеется они будут плюсовать, а не минусовать за хороший комментарий, а человек будет выходить в "плюс"... То есть чем более рьяно человек будет в своей группе стараться, тем быстрее он выйдет в плюс и перестанет расцениваться как "местный".<br><br>Исходя из этого решение немного преобразилось:<br><br><ol><br><li>Каждая группа считает свой рейтинг для человека. То есть он может быть "отличным верстальщиком", "полным профаном в программировании". Это позволит выделить специализацию человека и более точно позволит реализоваться.</li><br><li>Таким образом рейтинга получается два: глобальный - в сети и локальный - в группе</li><br><li>Нужны условия участия в группе. Нижний порог локального рейтинга и/или глобального, который позволяет писать сообщения. Это может быть и минус.</li><br><li>Если человек не участвовал в группе, то изначальный рейтинг равен 0, а возможности определены порогом. Где-то он сможет участвовать сразу, а где-то надо еще потрудиться. Это позволит обеспечить дополнительную гонку в личном продвижении, так как заслуги в копирайтинге нифига не помогут человеку в высказываниях по поводу программирования. По аналогии с РПГ - вы не можете качать сразу все навыки, надо блеснуть в каждом отдельно.</li><br><li>Общий рейтинг показывает достижение человека в сети в целом.</li><br></ol><br><br>Есть еще нюансы всякие, но такой подход уже больше похож на социальный механизм в обычном обществе. То есть человек в мире может быть полным отщепенцем (глобальный рейтинг в минусе), но в своей-то деревне среди пацанов он звезда (локальный рейтинг группы "пацаны" в плюсе), а среди девушек как-то никак (группа девушки - 0).]]></description>
<pubDate>Mon, 30 Jun 2008 15:56:38 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/116/</guid>
</item>
<item>
<title>SeoQuake знает как вы зарабатываете</title>
<link>http://bigstreet.ru/blog/topic/106/</link>
<description><![CDATA[После установки FireFox 3 и вынужденного обновления плагина SeoQuake обнаружил добавление интересной фичи AdsSpy. Она показывает над каждым рекламным блоком сколько доменов использует рекламный блок с таким же идентификатором.<br><br>Не трудно догадаться, что так можно определить все проекты, которые вы монетизируете с помощью рекламы. А значит, если у вас есть сайты неприличного содержания, то вам должно стать очень стыдно, так как это может стать вашей ахиллесовой пятой.<br><br>Так например SeoQuake сообщил, что владелец Большой Улицы разместил свой блок AdSense на 7 доменах. А владельцы Хабрахабра свой блок Яндекс.Директ аж на 403 сайтах.<br><br>Так такие дела.]]></description>
<pubDate>Tue, 24 Jun 2008 11:56:45 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/106/</guid>
</item>
<item>
<title>И все же Webalta промахнулась</title>
<link>http://bigstreet.ru/blog/topic/105/</link>
<description><![CDATA[И теперь это известно с очень серьезной долей вероятности. Когда-то давно я купил журнал Чип и прочитал, что вот-де появился новый поисковик и он заткнет всех за пояс.. Но шло время, а чуда так и не происходило.<br><br>А сейчас по интернету ходят слухи, что поисковик Webalta оставляет рынок. Поиск уже не работает, а на главной странице предлагают зарегистрировать неограниченный почтовый ящик или воспользоваться службой знакомств.<br><br>Между тем, рейтинг сайтов оставили жить по адресу http://top.webalta.ru, а на его странице все еще висит ссылка "Поиск", которая уже потеряла свой смысл.<br><br>Кроме прочего, есть слухи, что из компании ушло очень много специалистов, а значит дело совсем серьезно.]]></description>
<pubDate>Mon, 23 Jun 2008 10:22:40 +0700</pubDate>
<guid isPermaLink="true">http://bigstreet.ru/blog/topic/105/</guid>
</item>
</channel>
</rss>
