0.00
Рейтинг
0.00
Сила

Николай

aceAdminPanel - багфикс, переход к автономной шаблонной жизни и несколько слов об интеграции

Выложил обещанный багфикс-релиз админки. У кого с последними версиями админпанели возникли проблемы (типа, «не найдет такой-то шаблон»), качаем пофиксенный релиз здесь: aceadminpanel.sourceforge.net/

Допускаю, что могут быть еще мелкие баги типа кривоватой местами верстки, но каких-то функциональных багов быть не должно.

А под катом несколько слов о нововведениях в админке последних версий.
Читать дальше →

Livestreet: дао разработчика - 2

Первая часть цикла

Дао — это действие, процесс, поток. Чем чаще вы смотрите на код других плагинов, тем больше вы понимаете, как делать свой.
Накачайте плагинов под 0.4.2 и расматривайте, что у них внутри. Без этого вы не сможете начать писать свои плагины.

Я сделал типовой шаблон, из которого удобно делать свои собственные плагины. Располагается он тут:
http://github.com/medar/livestreetplugin
Чтобы скачать его, надо нажать в правом верхнем углу кнопку «Download Source». Желающие могут форкать и вносить изменения.

В файле находится «рыба» плагина с названием abcplugin.
Читать дальше →

Новые возможности по переопределению/наследованию классов LiveStreet

В LS появилась новая возможность для разработчиков плагинов — наследование классов. Идея была высказана еще avadim'ом здесь.
Эта возможность позволит удобно переопределять различные методы одного класса (модуля, экшена, сущности, маппера) разными плагинами без конфликтов.
Главное отличие от делегирование — не происходит блокировки переопределения класса для других плагинов. Также есть возможность переопределения одного метода разными плагинами, но здесь разработчикам нужно быть очень осторожными и делать так, чтоб свести вероятность конфликта к минимуму.

Как использовать.
Например, нужно переопределить метод получения пути до аватара у сущности пользователя в плагине Test. В плагине необходимо объявить те классы, которые будут наследоваться. Объявление происходит в свойстве $aInherits:
<?php
class PluginTest extends Plugin {
    
    protected $aInherits=array(
       'entity'  =>array('ModuleUser_EntityUser'=>'_ModuleSide_EntityUser')
    );

    public function Activate() {        
        return true;
    }
    
    public function Init() {        
    }
}
?>

Читать дальше →

Плагин aceBlockManager – раздвигаем рамки управления блоками

В эфире передача «По вашим заявкам». По многочисленным письмам радиослушателей посетителей сайта передаем песню выкладываю плагин «Менеджер Блоков». :)
Читать дальше →

Плагин aceAdminPanel – новые возможности для разработчиков плагинов

Прямо так и хочется начать: «Кролики – это не только ценный мех, но и три-четыре килограмма легкоусвояемого мяса» :)

А все потому, что плагин админки (aceAdminPanel) – это не только облегчение работы администратора сайта, но и новые возможности для разработчиков, пишущих различные расширения для движка. Здесь я расскажу об одной интересной фиче, которую я смог реализовать в плагине, и которая дает гораздо больше возможностей при создании плагинов, чем стандартные средства.
Читать дальше →

Реферальная система начисления рейтинга

Навеяно http://livestreet.ru/blog/2375.html#comment29060
4. Сюдаже сотворил бы партнерку по привлечению «писателей», привел %юзернейм% друга, друг написал 50 годных постов, %юзернейм% получил балы

Только я сделал немного иначе. Просто начисляю копеечку с каждого поста того, кого инвайтили.

см начало в http://livestreet.ru/blog/2379.html

ls\classes\actions\ActionTopic.class.php

		// добавляем рейтинг пригласившему нас по инвайту
		$oUserInviteFrom=$this->User_GetUserInviteFrom($this->oUserCurrent->getId());
		if ($oUserInviteFrom!=NULL) {
			$oUserInviteFrom->setSkill($oUserInviteFrom->getSkill()+0.02);
			$oUserInviteFrom->setRating($oUserInviteFrom->getRating()+0.001);
			$this->User_Update($oUserInviteFrom);
		}

Начисление силы и рейтинга за посты

Предыстория.

Есть молодой блог по инвайтам, в который запустили 10 человек.
Эти люди переносят свое творчество.

Ожидается через неделю-другую открыть регистрацию для всех.
И что же увидит молодняк?
Кучу юзеров и тем с 0 рейтингом (мы друг друга знаем и все труды тоже. основное время тратим на перенос, а не на чтение)

Что бы это избежать, было решенно ввести премирование за написание постов.

Читать дальше →

Модуль мотивации пользователей

Привет, вот тут, была высказана здравая мысль о необходимости подобного модуля, я немного добавил функционала и предоставляю на суд общественности (да, и вероятность наличия багов не нулевая, совсем досконально не тестил)
Читать дальше →

Как ускорить ЛС ?

Люди добрые, помогите!

Поставила ЛС на firstvds тариф VDS-Отрыв (500 МГц, 128mb). Работает очень медленно. Общее время загрузки страницы 4-5 секунд. Файловое кэширование включено. Пробовала включить gzip по этим советам. Ничего не вышло — вместо css и js браузер (ФФ3.5) получает gzip'ы и не распаковывает их, в следствие чего не работает ни js ни css — сайт становится страшный и не рабочий.

Поставила wordpress в один шаг, так он на том же самом тарифе работает в два раза быстрее — 1,5-1,8 секунды против 4-5 от ЛС. Почему так?

UPD. Поставлю вопрос иначе. Сайт livestreet.ru быстр и шустр. Как этого добиться? Не нужно говорить про VDS от hc.ru, т.к. пробовала только что на выделенном сервере у друга установить. Результат: Общее время загрузки страницы — 0,2 сек, но грузится все равно очень медленно из-за кущищи js. Как это ускорить?

Свой расчет рейтинга

Я понимаю, что есть, навеное, какие-то типовые схемы расчета рейтинга в подобных системах, которые были опробованы уже на различных ресурсах. Но время от времени вспыхивают дискуссии о том, что «я бы считал не так» или «я хочу ввести еще один параметр» и т.д. Отсюда предложение:

Желательно предусмотреть некий стандартный механизм, позволяющий подключать пользовательские модули расчета рейтинга (без использования «грязных хаков»). Или, как минимум, вынести коэффициенты расчета в некий конфиг. Тогда можно было бы, при желании, хотя бы этими коэффициентами играть, не влезая в исходники.