1)http://learn.iis.net/page.aspx/460/using-url-rewrite-module/ качаем ставим
2)http://learn.iis.net/page.aspx/557/translating-htaccess-content-to-iis-webconfig/
3)пишем свой рул так как путем learn.iis.net/page.aspx/470/importing-apache-modrewrite-rules/
импорта работать не будет
4) не забываем про define('SYS_OFFSET_REQUEST_URL',1);
и про права для папока в системе
Ахтунг!
Пользователь расстроен. А расстроен вот почему:
'topic_create_text_error_unique' => 'Вы уже писали топик с таким содержанием'
Я пытаюсь разобраться, почему оное выскакивает, но такого топика (опубликованного) нет! Но в базу много записей от автосохранения черновика. Поможите, пожалуйста, что бы это могло быть?
У меня БД сейчас пестрит черновичками, и у меня два вопроса:
а) черновики так и будут висеть мёртвым грузом до бесконечности?
б) Кроме как через БД никак не вернуться к сохраняемым периодически версиям (как это реализовано в WordPress, где можно перейти к той или иной версии и её восстановить)?
На данный момент, вся логика, связанная с контролем доступа вынесена в класс ACL (classes/acl/ACL.class.php)
Там есть функция
public function CanAddTopic(UserEntity_User $oUser, BlogEntity_Blog $oBlog){
/**
* Если юзер является создателем блога то разрешаем ему постить
*/
if ($oUser->getId()==$oBlog->getOwnerId()) {
return true;
}
/**
* Если рейтинг юзера больше либо равен порогу постинга в блоге то разрешаем постинг
*/
if ($oUser->getRating()>=$oBlog->getLimitRatingTopic()) {
return true;
}
return false;
}
В этой функции и заложена логика предоставления прав пользователям.
По-хорошему, вся проверка должна проводиться тут.
Элемент $math[0] будет содержать часть строки, соответствующую вхождению всего шаблона, $math[1] — часть строки, соответствующую первой подмаске, и так далее.
вполне возможно что таких тегов будет несколько
в таком случае лучше использовать preg_match_all — тогда найдёшь всё!
а результаты будут в аналогичном виде:
$math[0][0],$math[0][1],… — будет содержать часть строки, соответствующую вхождению всего шаблона
$math[1][0],$math[1][1],… — часть строки, соответствующую первой подмаске, и так далее.
надеюсь всё понятно объясняю.
пардон — тыц
там когда обычный топик создаем… ну вообщем посмотрите сами.
Получается на выхоже так — smotra.ru/blog/pokraska-reshetki-radiatora/
Те.е сначало идет пост, потом абзац и идет Фотогалерея. Удобно и понятно.
Могу предложить сделать добавления фото как у них. т.е. в обычном топике, но выводить как на турометре, слайдшоу. это и планировалось в модуле галерея
Вообщем, проверка в файле classes\modules\sys_security\Security.class.php не все учитывает:
if (isset($_SERVER['HTTP_REFERER'])) {
$aUrl=parse_url($_SERVER['HTTP_REFERER']);
if ($aUrl['host']==$_SERVER['HTTP_HOST']) {
return true;
}elseif (preg_match("/\.".quotemeta($_SERVER['HTTP_HOST'])."$/i",$aUrl['host'])){return true;}
}
parse_url разбивает запись host.xxx:8080 на две и сравнение происходит неверно.
я заменил $aUrl['host']==$_SERVER['HTTP_HOST'] на $aUrl['host'].(isset($aUrl['port'])?":".$aUrl['port']:"")==$_SERVER['HTTP_HOST']
заработало(denwer)
Как создавать подкатегории (дерево вложенных папок)?
Вот пример
2)http://learn.iis.net/page.aspx/557/translating-htaccess-content-to-iis-webconfig/
3)пишем свой рул так как путем
импорта работать не будет
4) не забываем про define('SYS_OFFSET_REQUEST_URL',1);
и про права для папока в системе
5) получаем долгожданный web.config
И будет счастье!
Пользователь расстроен. А расстроен вот почему:
Я пытаюсь разобраться, почему оное выскакивает, но такого топика (опубликованного) нет! Но в базу много записей от автосохранения черновика. Поможите, пожалуйста, что бы это могло быть?
а) черновики так и будут висеть мёртвым грузом до бесконечности?
б) Кроме как через БД никак не вернуться к сохраняемым периодически версиям (как это реализовано в WordPress, где можно перейти к той или иной версии и её восстановить)?
в файле ищешь blog заменяешь в твоем случае на blogs
и оставляешь код в шаблоне как ты писал:
надо определить HTTP_REFERAL внутри файла авторизации wiki
Файл:
classes/modules/sys_security/Security.class.php
отключить проверку http_refferer
Заменить на:
Там есть функция
В этой функции и заложена логика предоставления прав пользователям.
По-хорошему, вся проверка должна проводиться тут.
Т.е. надо, чтобы смарти-переменная $menu приняла нужное значение. Делается это двумя способами.
1. Задаем переменную в обработчике экшена:
Ясень пень, шаблон header_top.tpl должен где-то как-то подгружаться при выводе страницы.
2. Задаем перемнную непосредственно при вызове шаблна header_top.tpl:
В обоих случаях будет цепляться шаблон меню menu.admin.tpl
vist, посмотрите на модуль
в таком случае лучше использовать preg_match_all — тогда найдёшь всё!
а результаты будут в аналогичном виде:
$math[0][0],$math[0][1],… — будет содержать часть строки, соответствующую вхождению всего шаблона
$math[1][0],$math[1][1],… — часть строки, соответствующую первой подмаске, и так далее.
надеюсь всё понятно объясняю.
там когда обычный топик создаем… ну вообщем посмотрите сами.
Получается на выхоже так —
Те.е сначало идет пост, потом абзац и идет Фотогалерея. Удобно и понятно.
Могу предложить сделать добавления фото как у них. т.е. в обычном топике, но выводить как на турометре, слайдшоу.
это и планировалось в модуле галереяа что если вообще тело функции заменить на return true?
if (isset($_SERVER['HTTP_REFERER'])) {
$aUrl=parse_url($_SERVER['HTTP_REFERER']);
if ($aUrl['host']==$_SERVER['HTTP_HOST']) {
return true;
}elseif (preg_match("/\.".quotemeta($_SERVER['HTTP_HOST'])."$/i",$aUrl['host'])){return true;}
}
parse_url разбивает запись host.xxx:8080 на две и сравнение происходит неверно.
я заменил $aUrl['host']==$_SERVER['HTTP_HOST'] на $aUrl['host'].(isset($aUrl['port'])?":".$aUrl['port']:"")==$_SERVER['HTTP_HOST']
заработало(denwer)