Тестирование версии 1.10.7.008 от 9 мая 2020 года 1.X

465
Тестирую на локалке под апачем и Php7.1. Встречающиеся варнинги и ошибки пытаюсь исправить. Сразу оговорюсь, я не специалист по Инстанту, просто разбираюсь в коде. У разработчиков может быть свой взгляд на это. Но у меня работает. На сегодня 11 пунктов.



1) /forum
"undefined index: class in smarty_tpl->tpl_vars['class']". Для решения нужно в 2 файлах (\templates\_default_\components\com_forum_list.tpl и com_forum_view.tpl) строчку инициализации class на строчку выше поднять
Код PHP:
  1. {if $row % 2}{$class='row11'}{else}{$class='row2'}{/if}
  2. <div class="row {$class}">
  3. <!-- {if $row % 2}{$class='row11'}{else}{$class='row2'}{/if} -->
2) /forum/thread13-1.html#30 Добавление новой темы на форуме если не задать ключевики
Notice: Undefined variable: y in \includes\keywords.inc.php on line 187
Warning: array_count_values() expects parameter 1 to be array, null given in \includes\keywords.inc.php on line 187
Warning: Invalid argument supplied for foreach() in \includes\keywords.inc.php on line 235


Код PHP:
  1. расскомментировать на 177 строке $y = array();

3) /board
Объявления( ! ) Notice: Undefined index: RSS in \cache\_default_^f1ea3fa222e3a0ac97722fde93de40404e8f9b28_0.file.com_board_cats1.tpl.php on line 38
Добавляем в en и ru languages\ru\components\board.php

$_LANG['RSS'] ='RSS';

4) /board/read5.html

Notice: Undefined offset: 1 in \cache\_default_^4bdc54b9479e31f9b7bf3ff7cf408434238b0203_0.file.com_comments_list.tpl.php on line 144
В 2-х местах (~78 строка)
Код PHP:
  1. \templates\_default_\components\com_comments_list.tpl
  2.  
  3. вместо {if $comments[$next].level > $comment.level}
  4. поставить
  5. {if isset($comments[$next].level) && $comments[$next].level > $comment.level}
5) /catalog
Универсальный каталог ( ! ) Notice: Undefined index: RSS in \cache\_default_^cf094ab8a285e7fc466247084008b64c55d32edb_0.file.com_catalog_index.tpl.php on line 25
Добавляем в en и ru \languages\ru\components\catalog.php
$_LANG['RSS'] ='RSS';

6) /clubs/addphoto1040.html Добавление фото в альбом
Выводится add_photo.php::$_POST = Array ( ) - см. ниже
и
Notice: Undefined index: cfg in \cache\_default_^a2066c1f1a873d498639ec659b0ff8dafc995015_0.file.com_photos_add1.tpl.php on line 108
Notice: Trying to get property of non-object in \cache\_default_^a2066c1f1a873d498639ec659b0ff8dafc995015_0.file.com_photos_add1.tpl.php on line 10


56 строка в \templates\_default_\components\com_photos_add1.tpl
это
{if $cfg.seo_user_access || $is_admin}
заменить на
Код PHP:
  1. {if (isset($cfg.seo_user_access) && $cfg.seo_user_access) || $is_admin}
  2.  
  3. или / и в \components\clubs
  4. добавить assign('cfg', $model->config)-> в:
  5. cmsPage::initTemplate('components', 'com_photos_add1')->
  6. assign('no_tags', false)->
  7. assign('is_admin', $inUser->is_admin)->
  8. assign('cfg', $model->config)-> //добавить
  9. assign('autocomplete_js', $autocomplete_js)->
  10. display('com_photos_add1.tpl');
и из 9 components\clubs\add_photo.php строки убрать чтобы не высвечивалось add_photo.php::$_POST = Array
Код PHP:
  1. echo 'add_photo.php::$_POST = '; print_r($_POST); echo '<br>';
7) /blogs/1/newpost.html Новая запись в блоге
Notice: Undefined index: cat_id in \components\blogs\frontend.php on line 545
Notice: Undefined index: allow_who in \cache\_default_^509a1d7a78ba3550f32e8106f664f4084169f241_0.file.com_blog_edit_post.tpl.php on line 63


В 29 и 30 строке \templates\_default_\components\com_blog_edit_post.tpl

Код PHP:
  1. <option value="friends" {if $mod.allow_who=='friends'} selected {/if}>{$LANG.TO_MY_FRIENDS}</option>
  2. <option value="nobody" {if $mod.allow_who=='nobody'} selected {/if}>{$LANG.TO_ONLY_ME}</option>
  3. поменять на
  4. <option value="friends" {if (isset($mod.allow_who) && $mod.allow_who=='friends')} selected {/if}>{$LANG.TO_MY_FRIENDS}</option>
  5. <option value="nobody" {if (isset($mod.allow_who) && $mod.allow_who=='nobody')} selected {/if}>{$LANG.TO_ONLY_ME}</option>
8)

Notice: Undefined index: bloglink in \plugins\p_related_posts\plugin.php on line 337
на 337 строке
$found_posts[$key]['blog_url'] = $model->getBlogURL($post['bloglink']);
исправить на
$found_posts[$key]['blog_url'] = $model->getBlogURL($post['blog_link']);

9) /registration При регистрации
Notice: Undefined index: phone in \cache\_default_^82a46a0cfd34ca82c8c69bcf23371e784828a9d3_0.file.com_registration.tpl.php on line 227
в строке 152 \templates\_default_\components\com_registration.tpl
<input name="phone" type="text" class="text-input" id="phone" value="{$item.phone}" style="width:300px">
заменить на
<input name="phone" type="text" class="text-input" id="phone" value="{if isset($item.phone)}{$item.phone}{/if}" style="width:300px">

10) После регистрации
Notice: Undefined index: values in \components\registration\frontend.php on line 247
Notice: Undefined index: errors in \components\registration\frontend.php on line 249
Warning: Invalid argument supplied for foreach() in \components\registration\frontend.php on line 249

В \components\registration\frontend.php
после 246 строки
$form_input = cmsForm::getFieldsInputValues($form_id);
заменить блок
Код PHP:
  1. $item['formsdata'] .= $inDB->escape_string(cmsCore::arrayToYaml($form_input['values']));
  2. // Проверяем значения формы
  3. foreach ($form_input['errors'] as $field_error) {
  4. if($field_error){ cmsCore::addSessionMessage($field_error, 'error'); $errors = true; }
  5. }
  6. на
  7. if (isset($form_input['values'])){
  8. $item['formsdata'] .= $inDB->escape_string(cmsCore::arrayToYaml($form_input['values']));
  9. }
  10. // Проверяем значения формы
  11. if (isset($form_input['errors'])){
  12. foreach ($form_input['errors'] as $field_error) {
  13. if($field_error){ cmsCore::addSessionMessage($field_error, 'error'); $errors = true; }
  14. }
  15. }
11) От пользователя новая запись в блоге /blogs/primer-bloga-admina/primer-zapisi-v-bloge.html
вылетает с
DATABASE ERROR:
SELECT p.id,
p.title,
p.seolink AS post_link,
p.content_html AS content,
b.seolink AS blog_link,
img.fileurl,
MATCH(p.title) AGAINST('Пример записи в блоге') AS rel
FROM cms_blog_posts p
JOIN cms_blogs b ON b.id = p.blog_id
LEFT JOIN cms_upload_images img ON img.target_id = p.id AND img.target = 'blog_post' AND img.component = 'blogs'
WHERE MATCH(p.title) AGAINST('Пример записи в блоге' IN BOOLEAN MODE)
AND p.allow_who = 'all'
AND b.allow_who = 'all'
AND b.owner = 'user'
AND p.id NOT IN(1)
GROUP BY p.id
ORDER BY rel DESC
LIMIT 4
Unknown column 'p.content_html' in 'field list'

Добавил поле content_html как MEDIUMTEXT в cms_blog_posts после content

Код PHP:
  1. ALTER TABLE `cms_blog_posts` ADD `content_html` MEDIUMTEXT NOT NULL AFTER `content`;
Меняем цвет шрифта в комментариях
Комментарии (10)
Fuze 14 мая 2020 в 22:17 +1
Всё это конечно хорошо, но подобные посты ни к чему.
Либо перебирайтесь на форум, либо рабочие моменты (а это именно они) обсуждайте в личных беседах. На каждый десяток багов писать пост в блоге не стоит.

Раз уж потрудились, столько написали, я удалять не буду, но на будущее так делать не нужно. Впредь будет удаляться подобное.

Напоминаю, первая ветка официально не поддерживается. То, что выпускается, делается заинтересованным кругом лиц без нашего участия.
Igor-san 15 мая 2020 в 13:08 +2
Понял
Андрей 14 мая 2020 в 23:11 +1
Благодарю за помощь.
3, 4, 5 пункты исправил, сейчас займусь остальными
Андрей 14 мая 2020 в 23:16 +1
по п.7, строчкой выше условие так же прописано, но там используется "||" вместо "&&"
оставить как есть или тоже заменить на "&&"?
Igor-san 15 мая 2020 в 13:08 +1
Речь про
Код PHP:
  1.  
<option value="all" {if !isset($mod.allow_who) || $mod.allow_who=='all'} selected {/if}> ?
Нет, тут ошибок быть не должно возникнуть
Андрей 14 мая 2020 в 23:26 +1
9, 10 готовы
Андрей 14 мая 2020 в 23:28 +1
по остальным пунктам вопросы, давайте в ЛС, чтобы не засорять тему...?
Igor-san 15 мая 2020 в 13:12 +1
Можно конечно через личку, но имхо неправильно. Я сам часто поисковиками пользуюсь для решения проблем, и если бы они через личку решались, то не всем бы стали доступны. Если администрация не разрешает блоги вести , то может в форуме есть правильное место для этой ветки? https://instantcms.ru/forum/thread31053-12.html тут можно надеюсь?
Fuze 15 мая 2020 в 14:52 +1
Если администрация не разрешает блоги вести
Разрешает. Я говорю о том, что рабочие моменты необходимо решать без записей в блоге. Если я на каждый коммит на гите буду писать пост, выглядеть это будет странно.
А в данном случае вообще, правая нога не знает что делает левая. Андрей, вы выкладывайте хотя бы рабочие версии, а разрабатываемые тестируйте, обсуждайте на форуме. Оттестировали, выпустили версию.
Алексей Тимофеев 15 мая 2020 в 20:06 +4
Fuze, да пусть пишут. Это же здорово что ребята работают с энтузиазмом. smile