Форуми / National / Russian / Тех. поддержка / плагин Attach2

1234>>>

Kabak
#1 05.04.2023 08:11

почему-то не прокатывает блок 

<!-- IF {PHP|cot_auth('plug', 'attach2', 'W')} -->
<span>{PHP.cfg.separator}</span>
{FORUMS_POSTS_ROW_ID|att_widget('forums',$this,'attach2.link')}
<!-- ENDIF -->

на форуме.

можете пояснить что не так с PHP|cot_auth ?

webitproff
#2 05.04.2023 09:17

может

<!-- IF {FORUMS_POSTS_ROW_USERID} == {PHP.usr.id} -->
{FORUMS_POSTS_ROW_ID|att_widget('forums',$this,'attach2.link')}
<!-- ENDIF -->

 

аккаунт удален - не срослось с разработчиками
ушел на другой движок
Kabak
#3 05.04.2023 09:29

точнее  не отображается прикрепленный файл  на форуме

 

					  <!-- IF {FORUMS_POSTS_ROW_ID|att_count('forums',$this,'images')} > 0 -->
					  {FORUMS_POSTS_ROW_ID|att_gallery('forums',$this,'attach2.forumgal')}
					  <!-- ENDIF -->
					  <!-- IF {FORUMS_POSTS_ROW_ID|att_count('forums',$this,'files')} > 0 -->
					  {FORUMS_POSTS_ROW_ID|att_downloads('forums',$this,'attach2.forumfile')}
					  <!-- ENDIF -->

FORUMS_POSTS_ROW_ID  - нет такого тега

Добавлено 2 минуты спустя:

{FORUMS_POSTS_ROW_USERID}   тоже нет тега

webitproff
#4 05.04.2023 11:47

вот к чему приводит неполнота вопроса

аккаунт удален - не срослось с разработчиками
ушел на другой движок
Kabak
#5 05.04.2023 12:18

{FORUMS_POSTS_ROW_ID}   существует, но не отрабатывает код из TPL

					  <!-- IF {FORUMS_POSTS_ROW_ID|att_count('forums',$this,'images')} > 0 -->
					  {FORUMS_POSTS_ROW_ID|att_gallery('forums',$this,'attach2.forumgal')}
					  <!-- ENDIF -->
					  <!-- IF {FORUMS_POSTS_ROW_ID|att_count('forums',$this,'files')} > 0 -->
					  {FORUMS_POSTS_ROW_ID|att_downloads('forums',$this,'attach2.forumfile')}
					  <!-- ENDIF -->

 

webitproff
#6 05.04.2023 18:16

а tpl вообще есть attach2.forumfile и attach2.forumgal?

Добавлено 22 секунды спустя:

какая вообще задача стоит?

аккаунт удален - не срослось с разработчиками
ушел на другой движок
Kabak
#7 05.04.2023 18:51

да, я вставил , но их нет в {PHP|dump}

я не очень понимаю  как эти вызовы функций работают 

Картинки прикрепляются к конкретному посту в форуме, но не могу их вывети на экран.  Я скопировал этот код из другого моего сайта на котором attach2  работвет нормально.  Может где-то нужно что-то прописать дополнительно...

webitproff
#8 05.04.2023 18:54
#46387 Kabak:

да, я вставил , но их нет в {PHP|dump}

я не очень понимаю  как эти вызовы функций работают 

заверните свой плагин вместе с его шаблонами и шаблонами своего форума в архив и перешлите в телегу, я ночью гляну

аккаунт удален - не срослось с разработчиками
ушел на другой движок
Kabak
#9 05.04.2023 19:57

картинки можно посмотреть так 

{FORUMS_POSTS_ROW_ID|att_display('forums',$this)}

= как в описании плагина.

Kort
#10 05.04.2023 21:45
<!-- IF {PAGE_ID|att_count('page',$this,'images')} > 0 -->
  	<img src="{PAGE_ID|att_get('page',$this)|att_thumb($this,1000,600,crop)}" alt="{PAGE_ID|att_get('page',$this,'title')}" class="img-fluid" />
<!-- ENDIF -->
...
<!-- BEGIN: LIST_ROW -->
<!-- IF {LIST_ROW_ID|att_count('page',$this,'images')} > 0 -->
	  <img src="{LIST_ROW_ID|att_get('page',$this)|att_thumb($this,1000,600,width)}" alt="{LIST_ROW_ID|att_get('page',$this,'title')}" class="img-fluid" />
<!-- ENDIF -->
<!-- END: LIST_ROW -->
...
<!-- BEGIN: FORUMS_POSTS_ROW -->
<!-- IF {FORUMS_POSTS_ROW_ID|att_count('posts',$this,'images')} > 0 -->
  	<img src="{FORUMS_POSTS_ROW_ID|att_get('posts',$this)|att_thumb($this,1000,600,height)}" alt="{FORUMS_POSTS_ROW_ID|att_get('posts',$this,'title')}" class="img-fluid" />
<!-- ENDIF -->
<!-- END: FORUMS_POSTS_ROW -->

С Attach2 можно прикрепить любой разрешенный mime-тип к любому элементу, у которого есть идентификатор (например page_id) и обозначена локация (например, page). Надо правильно указать id и правильно разместить функцию (если, например, вызов из регулярного блока). Аттач будет записан в {папка_attach2_из_настроек}/{локация}/{id}. Миниатюры будут генериться в соответствующей папке уже под именем id из таблицы attach2. 

Через att_get вызывать можно один аттач, через att_gallery -- все:

<!-- IF {PAGE_ID|att_count('page',$this,'images')} > 1 -->
  {PAGE_ID|att_gallery('page',$this,'attach2.minigal')}
<!-- ELSE -->

Работает с любым расширением через любое поле привязки. А с небольшой фантазией и без него. Аргументы функций стандартно раздокументированы в attach2.functions.php. Через условия в шаблоне можно делать много интересного.

SED.by - создание сайтов, разработка плагинов и тем для Котонти
Kabak
#11 06.04.2023 08:39

если вызывать attach2 на главной странице 

<!-- IF {PHP.usr.isadmin} -->  
<!-- IF {PHP|cot_auth('plug', 'attach2', 'W')} -->
<li>{PAGE_ID|att_widget('page',$this,'attach2.link')}</li>
<!-- ENDIF -->
<!-- ENDIF -->

то получаю ошибки в окрывшемся окне attach2

Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3372 
Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3374 
Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3378 
Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3379 
Deprecated: stripos(): Passing null to parameter #1 ($haystack) of type string is deprecated in /var/www/dacha/system/functions.php on line 3379

можно исправить эти ошибки ?

 


Відредаговано: Kabak (06.04.2023 09:05, 1 рік тому)
Dayver
#12 06.04.2023 08:50
#46395 Kabak:
Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3372 
Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3374 
Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3378 
Warning: Undefined array key "loggerlevel" in /var/www/dacha/system/functions.php on line 3379

можно исправить эти ошибки ?

mysql:

INSERT INTO `cot_config` (`config_owner`, `config_cat`, `config_order`, `config_name`, `config_type`, `config_value`, `config_default`, `config_variants`, `config_text`) VALUES
('core','main','08','loggerlevel',2,'sec+adm+ext','sec+adm+ext','none,sec,adm,ext,sec+adm,sec+ext,adm+ext,sec+adm+ext,all','');

ALTER TABLE `cot_logger` MODIFY `log_group` varchar(64) DEFAULT 'adm';
ALTER TABLE `cot_logger` ADD `log_uid` int UNSIGNED NOT NULL DEFAULT '0';
ALTER TABLE `cot_logger` ADD `log_type` varchar(32) DEFAULT '';
ALTER TABLE `cot_logger` ADD `log_status` varchar(24) DEFAULT '';
ALTER TABLE `cot_logger` ADD `log_uri` varchar(255) DEFAULT '';

UPDATE `cot_logger` SET `log_group` = 'forums' WHERE `log_group` = 'for';
UPDATE `cot_logger` SET `log_group` = 'users' WHERE `log_group` = 'usr';
UPDATE `cot_logger` SET `log_group` = 'page' WHERE `log_group` = 'pag';

 

Pavlo Tkachenko aka Dayver
Kabak
#13 06.04.2023 08:54

на форуме отображатеся всё, но вот в таком виде TPL

					  <!-- IF {FORUMS_POSTS_ROW_ID|att_count('forums',$this,'images')} > 0 -->
					  {FORUMS_POSTS_ROW_ID|att_display('forums',$this)}
					  {FORUMS_POSTS_ROW_ID|att_gallery('forums',$this)}
					  <!-- ENDIF -->
					  <!-- IF {FORUMS_POSTS_ROW_ID|att_count('forums',$this,'files')} > 0 -->
					  {FORUMS_POSTS_ROW_ID|att_downloads('forums',$this)}
					  <!-- ENDIF -->

или если добавить что-то к функции после $this,'attach2.link'  ничего не отображается

 

вот так вот заработало - отобразило картинку в полный размер

<!-- IF {FORUMS_POSTS_ROW_ID|att_count('forums',$this,'images')} > 0 --> 
<img src="{FORUMS_POSTS_ROW_ID|att_get('forums',$this)|att_thumb($this,1000,600,height)}" alt="{FORUMS_POSTS_ROW_ID|att_get('posts',$this,'title')}" class="img-fluid" /> 
<!-- ENDIF -->

 

для страниц   добавить

    {PAGE_ID|att_widget('page',$this,'attach2.link')}

отобразить

<!-- IF {PAGE_ID|att_count('page',$this)} > 0 -->
<div>
    <h3>{PHP.L.att_attachments}</h3>
    {PAGE_ID|att_display('page',$this)}  // всё по номерам 
    {PAGE_ID|att_gallery('page',$this)}  //  галлерея
    {PAGE_ID|att_downloads('page',$this)} //  для скачивания не картинок
</div>
<!-- ENDIF -->


для комментариев  добавить

{COMMENTS_ROW_ID|att_widget('comments',$this,'attach2.link')}

отобразить

<!-- IF {COMMENTS_ROW_ID|att_count('comments',$this)} > 0 -->
<div>
    <h3>{PHP.L.att_attachments}</h3>
    {COMMENTS_ROW_ID|att_display('comments',$this)}
    {COMMENTS_ROW_ID|att_gallery('comments',$this)}
    {COMMENTS_ROW_ID|att_downloads('comments',$this)}
</div>
<!-- ENDIF -->

 

Добавлено 28 минут спустя:

анимированные GIF плагин конвертирует в jpg ?

Добавлено 3 часа спустя:

Благодарю Павла.

исправленная версия attach2


Відредаговано: Kabak (06.04.2023 14:08, 1 рік тому)
webitproff
#14 07.04.2023 20:23

на странице полной новости получаю ошибку

Deprecated: Implicit conversion from float -77.77777777777777 to int loses precision 
in /plugins/attach2/inc/attach2.functions.php on line 805 

 

вызываю галерею так

<!-- IF {PAGE_ID|att_count('page',$this,'images')} > 0 -->
<div class="block">
	<h3>{PHP.L.att_gallery}</h3>
	{PAGE_ID|att_gallery('page',$this)}
</div>
<!-- ENDIF -->

 

сам код в 805-й строке

imagecopyresampled($newimage, $oldimage, $x_pos, $y_pos, 0, 0, (int)$width, (int)$height, (int)$width_orig, (int)$height_orig);

за менил на

imagecopyresampled($newimage, $oldimage, $x_pos, $y_pos, 0, 0, $width, $height, $width_orig, $height_orig);

ошибка пропала, но правильно ли? прошу знающих подсказать.

пхп 8.1

Добавлено 8 часов спустя:

теперь ругается только так

Deprecated: Implicit conversion from float -146.66666666666669 to int loses precision in /plugins/attach2/inc/attach2.functions.php on line 805 
Deprecated: Implicit conversion from float 933.3333333333334 to int loses precision in /plugins/attach2/inc/attach2.functions.php on line 805 

ошибка, сразу после того как при редактировании страницы добавил картинку и публикуешь

Добавлено 22 секунды спустя:

но страницу тут же перезагрузить - ошибка исчезает...

Добавлено 9 минут спустя:

ели дошло как пдключить разные шаблоны

полная новость page.tpl

<!-- IF {PAGE_ID|att_count('page',$this,'images')} > 0 -->
<div class="uk-card uk-card-default">
	{PAGE_ID|att_gallery('page',$this,'','attach2.gallery.pagefull')}
</div>
<!-- ENDIF -->

в списках page.list.tpl

<!-- IF {PHP.cot_plugins_active.attach2} AND {PAGE_ID|att_count('page',$this,'images')} > 0 -->
<div class="uk-inline thumbnail uk-cover-container">
	<div data-att-display="all">
		{PAGE_ID|att_gallery('page',$this,'','attach2.gallery.pagelist')}
	</div>
</div>
<!-- ENDIF -->

гду вас должны быть свои шаблоны attach2.gallery.pagefull.tpl для полной страницы и attach2.gallery.pagelist.tpl соответственно для страниц в списках/категории

Добавлено 1 минута спустя:

помогите пофиксить ошибку

Deprecated: Implicit conversion from float -***** to int loses precision in 

буду признателен

Добавлено 2 минуты спустя:

и еще пожелание, может отдельным репозиторием выложить код плагина на https://github.com/Cotonti

думаю причины очевидны

аккаунт удален - не срослось с разработчиками
ушел на другой движок

Відредаговано: webitproff (08.04.2023 06:11, 1 рік тому)
Kort
#15 08.04.2023 09:51

Откуда это все берется??? У меня плагин в исходном виде прекрасно работает на любых версиях php / cotonti.

SED.by - создание сайтов, разработка плагинов и тем для Котонти

1234>>>