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

Кирилл

  • avatar ff00
  • 3
Чтобы получилась такая ReCaptcha:
ReCaptcha

Регистрируешся тут: www.google.com/recaptcha/intro/

В header.tpl добавляешь в блоке head добавляешь
{if !$oUserCurrent}<script src='https://www.google.com/recaptcha/api.js'></script>{/if}


В том поле где у тебя стояла каптча, вместо каптчи пишешь:
<div class="g-recaptcha" data-sitekey="RECAPTCHA_PUBLIC_KEY"></div>


Где RECAPTCHA_PUBLIC_KEY — твой публичный ключ рекаптчи

В \engine\modules\validate\entity\ValidatorCaptcha.entity.class.php дописываешь функцию:
public function validateCaptcha() {
	$validateCaptcha = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret=RECAPTCHA_SECRET_KEY&response='.$_POST["g-recaptcha-response"].'&remoteip='.$_SERVER['REMOTE_ADDR']);
	$validateCaptcha = json_decode($validateCaptcha);
	if(!$validateCaptcha->success) return false;
	return $validateCaptcha->success;
}


Где RECAPTCHA_SECRET_KEY — твой секретный ключ рекаптчи

В этом же файле в функцию validate, в проверку условия:
if (!isset($_SESSION['captcha_keystring']) || $_SESSION['captcha_keystring'] != strtolower($sValue))


до return, вписать:
if($this->validateCaptcha()) return true;


P.S. кому нужен плагин ГО ТО ФРИЛАНСЕРС job.livestreetcms.com к примеру Chiffa сделает за 3.5 минуты
Для иконок FontAwesome, создайте отдельный css, потом в конфиге шаблона:

"___path.static.skin___/css/fontawesome.css" => array('merge'=>false),
  • avatar ff00
  • 1
Правильное решение:
{if $oTopic->getUser()->isAdministrator()}
Топик добавил админ!
{/if}
  • avatar dex-
  • 0
Добрый вечер!

Как вариант можно через PHP:
Сделать выборку из БД по запросу

SELECT * FROM topic, topic_content WHERE topic.topic_id = topic_content.topic_id

Я взял только:
topic_title
topic_date_add
topic_text

Полный код:

<?php
	mysql_connect("localhost", "user", "pass") or die (mysql_error ());
	mysql_set_charset("cp1251");
	mysql_select_db("table") or die(mysql_error());
	$strSQL = "SELECT * FROM topic, topic_content WHERE topic.topic_id = topic_content.topic_id";
	$rs = mysql_query($strSQL);
	while($row = mysql_fetch_array($rs)) {
		echo "<dt>Title:</dt><dd>" . $row["topic_title"] . " // " . $row["topic_date_add"] . "</dd>";
		echo "<dt>Topic text:</dt><dd>" . $row["topic_text"] . "</dd>";
	}
	mysql_close();
	?>
  • avatar ff00
  • 1
Да нормально работает, есть ощутимый прирост производительности, у меня к примеру после перехода на php7 странички стали генерироваться в 2.5 раза быстрее, а оперативки расходуется в 3 раза меньше, только драйвер БД под mysqli допилить или самому собрать mysql под php7, еще memcached нету, но можно легко переделать по memcache Номальня статья про настройку php7.
Можно так:

{if ($oUserCurrent and $oUserCurrent->getId() == $oUserProfile->getId()) || ($oUserCurrent and $oUserCurrent->isAdministrator())}

{/if}
  • avatar sgavka
  • 3
Вот так можно:
В файле engine/modules/viewer/plugs/function.date_format.php в конце заменяем следующим кодом:
/** * Если не найден индекс склонения, берем склонене по умолчанию. * Если индекс по умолчанию также не определен, берем первое значение в массиве. */ if(is_array($sMonth)) { $sMonth = isset($sMonth[$iDeclination]) ? $sMonth[$iDeclination] : $sMonth[$iDeclinationDefault]; } $aShortMonth = $oEngine->Lang_Get('month_short_array'); $sShortMonth = isset($aShortMonth[$iMonth]) ? $aShortMonth[$iMonth] : ""; $sFormat=preg_replace("~(?<!\\\\)F~U",preg_replace('~(\w{1})~u','\\\${1}',$sMonth),$sFormat); $sFormat=preg_replace("~(?<!\\\\)M~U",preg_replace('~(\w{1})~u','\\\${1}',$sShortMonth),$sFormat); return date($sFormat,$iDate);

В языковом файле надо задать вот такой массив:
	'month_short_array' => array(
		1 => 'янв.',
		2 => 'фев.',
		3 => 'мар.',
		4 => 'апр.',
		5 => 'май',
		6 => 'июнь',
		7 => 'июль',
		8 => 'авг',
		9 => 'сент.',
		10 => 'окт.',
		11 => 'нояб.',
		12 => 'дек.',
	),


А использовать так:
{date_format date=$oTopic->getDateAdd() format="j M Y"}
  • avatar ort
  • 4
Добавил ограничение постинга на стену в плагин MagicRule
  • avatar ort
  • 3
{if $sAction=='index' and !$sEvent}
    {include file='slider.tpl'}
{/if}
  • avatar LeX
  • 5
Политика «руководящего состава» тут самая лояльная, как мне кажется.
Если вы себя начали вести некорректно по отношению к членам сообщества, и в итоге это привело к тому, что они накидали вам минусов, то это называется саморегулирование.

Да и, если брать по большому счету, то пользование CMS и участие в сообществе — вещи не всегда связанные. Можно быть обиженным и не использовать LiveStreet, можно быть обиженным и использовать, но лучше не быть обиженным и пользоваться Лайвстритом. А в идеале, помогать другим. Тогда и рейтинг будет, и проекты, и время будет потрачено не зря.
  • avatar vaucher
  • 0
В таблице prefix_blog у блога с id1 у остальных нормально все и естественно почистить папку tmp
  • avatar PSNet
  • 0
почему я не люблю вышеуказанные варианты — т.к. это нарушение структуры mvc — мы прописываем то, что должно быть шаблоном (в широком смысле этого слова) в коде, т.е. привариваем ЖС в вывод в php, а если нужно будет добавить параметр? правильно — снова лезть в код.
поэтому
Подскажите если есть ещё варианты решения данной проблемы
если будет выводится в шаблоне что-то, то в том же шаблоне прописать

<script type="text/javascript" src="{$oConfig->GetValue("path.root.web")}/plugins/userpanel/templates/skin/default/js/init.js"></script>
trac.lsdev.ru/livestreet/browser/tags/0.3.1/classes/actions/ActionPeople.class.php

protected function EventGood() {
162	        /**
163	         * Получаем статистику
164	         */
165	        $this->GetStats();       
166	        /**
167	         * Получаем хороших юзеров
168	         */
169	        $this->GetUserRating('good');   
170	        /**
171	         * Устанавливаем шаблон вывода
172	         */       
173	        $this->SetTemplateAction('index');   
174	    }  


я вас правильно понял?