Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#601 Re: "А как сделать..." » Вытягивать преьвюшку, исходя из оригинальной картинки » 2014-03-10 15:19:50

Здесь название категории для изображения не равно названию категории, где находится новость.

#602 Re: "А как сделать..." » Вытягивать преьвюшку, исходя из оригинальной картинки » 2014-03-10 13:44:10

Как работает процесс формирования news.embed.images[X]:
1. Берется весь текст и внутри него ищутся все вхождения вида img=
2. Формируется массив из таких ссылок.

Соответственно:
1. Если у вас в {{news.embed.images[X]}} ссылки только /uploads/images/ - это сведетельствует только о том, что вы загружаете только оригиналы изображений, без превью или вставляете в новость только полные изображения. Т.е. превью откуда-нивозьмись сами не появятся, их тоже нужно создавать в "Управление изображениями".
2. Если все же уменьшенная копия создается, но просто в теле новости добавляется только ссылка на полное изображение, то для формирования ссылки на уменьшенную копию можно, например, использовать конструкцию вида:

{{ news.embed.images[0]|replace({ '/uploads/images/news/': '/uploads/images/news/thumb/' }) }}

Где news - название категории, куда загружаются изображения

#604 Re: "А как сделать..." » Разместить рекламный блок в средине новости » 2014-03-04 01:40:15

Нужно чтобы было слитно:

{% set text_news = news.short~news.full %}
{% for text in text_news|split('.') %}
{{text}}{% if loop.index and not(loop.last)  %}.{% endif %}{% if loop.index == 3 %}Текст 3{% endif %}
{% endfor %}

#605 Re: "А как сделать..." » Разместить рекламный блок в средине новости » 2014-03-03 22:34:38

{% set text_news = news.short~news.full %}
{% for text in text_news|split('.') %}
{{text}}{% if loop.index and not(loop.last)  %}.{% endif %} {% if loop.index == 3 %}После 3{% endif %}{% if loop.index == 7 %}После 7{% endif %}
{% endfor %}

#606 Re: "А как сделать..." » Разместить рекламный блок в средине новости » 2014-03-03 02:48:45

По середине текста без учёта точек:

{% set text_news = news.short~news.full %}
{{ text_news|slice(0,text_news|length/2) }}
TextText
{{ text_news|slice(text_news|length/2,text_news|length) }}

После 3 точки:

{% set text_news = news.short~news.full %}
{% for text in text_news|split('.') %}
{{text}}{% if loop.index and not(loop.last)  %}.{% endif %} {% if loop.index == 3 %}123{% endif %}
{% endfor %}

Может есть и более правильное решение (скорее всего регистрировать свой фильтр), но влом думать.

#607 Re: Страницы плагинов » auth_loginza :: Вход через OpenID » 2014-02-28 22:50:33

Я не знаю, что у тебя где не работает, я проверял на последней SVN из каталога плагина из директории шаблона.

#609 Re: Страницы плагинов » auth_loginza :: Вход через OpenID » 2014-02-28 20:46:41

оно должно работать только на страницах просмотра и редактирования профиля.

#610 Re: Страницы плагинов » auth_loginza :: Вход через OpenID » 2014-02-26 19:39:52

{% if (userRec.loginza_id) %}
{{ userRec.loginza_id }}
{% else %}
{% endif %}

Или просто:

{{vars.loginza_account}}

#611 Re: Страницы плагинов » auth_loginza :: Вход через OpenID » 2014-02-26 14:30:12

Смысл их переписывать? Они если раньше работали, то и сейчас будут работать.

#612 Re: PHP/HTML/JS/CSS » Есть такой плагин Basket, кто поможет допинать? » 2014-02-23 15:13:48

Влом ставить плагины, если дашь доступы то можно попробовать.

#613 Re: Запросы на доработку ядра » Может это глупо но всё же (alt и title при добавлении ) » 2014-02-15 14:33:33

Как вариант идея такая:

0. В add.tpl и/или в edit.tpl добавить функцию getTitle() в блок с JS:

function getTitle(){
  var form = document.getElementById("postForm");
  currentNewsTitle = form.title.value;
  setCookie('ng_title_img', unescape(currentNewsTitle));
  return true;
}

1. В qt_news.tpl дописать вызов getTitle()

<a onclick="try{document.forms['DATA_tmp_storage'].area.value={area};} catch(err){;} window.open('{php_self}?mod=images&ifield='+{area}+getTitle(), '_Addimage', 'height=600,resizable=yes,scrollbars=yes,width=800');return false;" target="DATA_Addimage" title='{l_tags.image}'><img src="{skins_url}/tags/image.gif" width="16" height="16" alt="{l_tags.image}" /></a>

2. В file_managment.php сделать вывод содержимого куки {news_title}

		$news_title = $_COOKIE['ng_title_img']!='' ? $_COOKIE['ng_title_img'] : '';
		list($html_thumb, $html_file, $html_preview) =	str_replace(
									array ('{file_url}', '{thumb_url}', '{file_name}', '{fsize}', '{news_title}', '{image_height}', '{image_width}'),
									array ( $fileurl, $thumburl, $row['name'], $fsize, $news_title, $row['height'], $row['width']),
									array($lang['insert_thumb'], $lang['insert_file'], $lang['insert_preview']));

3. В images.ini прописать {news_title}:

insert_preview	=	"[url="{file_url}" target="_blank"][img="{thumb_url}" border="0" align=""]{news_title}[/img][/url]"

Соответственно при таком подходе при открытии менеджера загрузок из новости будет писать текущий введенный заголовок в куку. У этого способа есть недостатки, но кто понял, тот сделает себе на ajax'e.

#614 Re: "У меня не работает..." » Что то подвисает » 2014-02-14 19:42:13

Сложно сказать в чем проблема, т.к. нету данных и так на растоянии сложно установить.
Возможно, стоит попробовать какие-нибудь инструменты профилирования, чтобы замерить на каких участках возникают большие задержки и уже по ним устанавливать причины.

#615 Re: "У меня не работает..." » Что то подвисает » 2014-02-14 01:20:52

Т.е. проблема "подвисания" проявляется только при определенных действиях?
Например при просмотре главной страницы, страницы новости, оставлении комментария всё работает быстро, а при добавлении новости возникают проблемы?

#617 Re: "А как сделать..." » Для обновления нужна только версия php 5.3 или можно и 5.2? » 2014-02-08 01:00:03

legenda пишет:

infinity237, можно и не тестировать, неработает однозначо, надо в индексе исправить назад, но кроме этой фичи еще чтото может неработать?

Я же написал, что никто не тестировал её в таких условиях, поэтому данных нет.

#619 Re: Вопросы функционирования системы в целом » Убрать страницу с опросами - возможно ли? » 2014-02-07 23:40:18

Просто можно закоментировать строки:

register_plugin_page('voting','','plugin_voting_page',0);

function plugin_voting_page() {
	plugin_voting_screen(false);
}

И перезапустить плагин.

#620 Re: Запросы на платную разработку плагинов » Добавлени видео и создание превью » 2014-02-07 01:59:30

Перезалил.

Был изменен формат хранения данных в БД. Раньше там хранился полный путь, теперь хранится только имя файла.
В связи с этим требуется поменять JS код в add.tpl и edit.tpl. Подробнее в readme.

#621 Re: Запросы на платную разработку плагинов » Добавлени видео и создание превью » 2014-02-07 00:35:32

Перезалил. Теперь полоса в 1 пиксель должна пропасть.

Это для определение размеров изображения после обрезания.

#622 Re: Запросы на платную разработку плагинов » Добавлени видео и создание превью » 2014-02-06 23:01:40

В videothumb.class.php в класс добавить:

function img_crop($file_input, $file_output, $crop = 'square', $percent = false) {

	list($w_i, $h_i, $type) = getimagesize($file_input);
	if (!$w_i || !$h_i) {
		// echo 'Невозможно получить длину и ширину изображения';
		return false;
        }
        $types = array('','gif','jpeg','png');
        $ext = $types[$type];
        if ($ext) {
    	        $func = 'imagecreatefrom'.$ext;
    	        $img = $func($file_input);
        } else {
    	        echo 'Некорректный формат файла';
		return;
        }
	if ($crop == 'square') {
		$min = $w_i;
		if ($w_i > $h_i) $min = $h_i;
		$w_o = $h_o = $min;
	} else {
		list($x_o, $y_o, $w_o, $h_o) = $crop;
		if ($percent) {
			$w_o *= $w_i / 100;
			$h_o *= $h_i / 100;
			$x_o *= $w_i / 100;
			$y_o *= $h_i / 100;
		}
    	if ($w_o < 0) $w_o += $w_i;
	        $w_o -= $x_o;
	   	if ($h_o < 0) $h_o += $h_i;
			$h_o -= $y_o;
	}
	$img_o = imagecreatetruecolor($w_o, $h_o);
	imagecopy($img_o, $img, 0, 0, $x_o, $y_o, $w_o, $h_o);
	if ($type == 2) {
		imagejpeg($img_o,$file_output,100);
	} else {
		$func = 'image'.$ext;
		$func($img_o,$file_output);
	}
	
	 imagedestroy($img);
	 imagedestroy($img_o);

	 return true;
}

Перед вызовом:

$this->img_resize($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, 100, 60);

Добавить:

$this->img_crop($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, array(0, 45, -45, -45));

Или просто перезалить.

#623 Re: Запросы на платную разработку плагинов » Добавлени видео и создание превью » 2014-02-06 22:20:14

Aaron пишет:
infinity237 пишет:

В videothumb.class.php есть строка:

//$this->img_resize($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, 100, 60);

Если её раскоментировать, то будет ресайзить, последние 2 параметра - указывают размеры.

спасибо )

А можете подключить обрезку? Скрин с ютуба имеет сверху и снизу чёрную зону, можно ли обрезать эти зоны, а потом уже ресайзить?

Сколько пикселей обрезать?

#624 Re: Запросы на платную разработку плагинов » Добавлени видео и создание превью » 2014-02-06 21:35:02

В videothumb.class.php есть строка:

//$this->img_resize($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, 100, 60);

Если её раскоментировать, то будет ресайзить, последние 2 параметра - указывают размеры.

#625 Re: "А как сделать..." » Для обновления нужна только версия php 5.3 или можно и 5.2? » 2014-02-06 14:00:52

Никто тестировать специально не будет. Если тебе нужно, можешь поставить посмотреть.
Скорее всего, что первая ошибка, которая выскочит - это ошибка в auth_basic.php, связанная с изменением http://trac.assembla.com/ngcms/changeset/1145 Там в фиче RPC проверки логина/email'a используется оператор goto, который можно использовать только начиная с версии 5.3

Подвал раздела

Работает на FluxBB