Ris

Ris

+657
Репутация
3768
Рейтинг
#1 Мигратор человеков INS1->INS2 13 мая 2015 в 20:55

живу без ее лет 3-4

Петрмаг

Я жил вообще без всех этих пыхапе и хтмл 40 лет, пока не вышла новая версия 1.10.6 в январе и я не решил посмотреть, что это такое и с чем это едят.
#2 Мигратор человеков INS1->INS2 13 мая 2015 в 20:15

Копия сайта и базы, только потом эксперименты проводим

Петрмаг

Вообще все эксперименты проводятся на локальной копии сайта. А при достижении блестящих результатов делается копия локального сайта на какой-нибудь тестовый хостинг. И только потом…
#3 Мигратор человеков INS1->INS2 13 мая 2015 в 18:46

Еще обратный мигратор сделайте, с 2 на 1 чтобы импортировать, думаю тоже пригодится.

letsgo

Думаю, это сделает кто-нибудь другой.
Не я точно.
Одно дело "досолить" хэш пароля, и совсем другое дело его расшифровать обратно.
#1 Мигратор человеков INS1->INS2 13 мая 2015 в 18:35
Перенос контента с одной ветки на другую не вызывает больших сложностей при помощи dbforge Studio for Mysql, а вот с переносом пользователей возникли проблемы ввиду отложения солей в паролях.
Для решения этой проблемы, на основе мигратора статей от Pasha был допилен мигратор пользователей.
Предварительно нужно перенести таблицу cms_users в базу двойки. Поскольку такая таблица уже есть, нужно переобозвать её в "cms_users1".
Для этого экспортируйте при помощи phpmyadmin таблицу "cms_users" в формате cms_users.sql из базы первой версии сайта, откройте ноутпадом++ экспортированный файл с таблицей "cms_users" и поменяйте оптом все cms_users на cms_users1
Затем импортируйте тем же phpmyadmin таблицу в новую базу на второй версии.

Потом импортируйте её в новую базу.

После чего, загрузите в корень сайта файл users_migr.php и запустите его так site.ru/users_migr.php
По отработке скрипта таблица cms_users1 будет удалена.

Прошу учитывать, что поле email имеет уникальный индекс, поэтому импортирована будет только первая запись с неуникальным имейлом, а остальные просто пропущены.

Все пользователи помещаются в группу "пользователи". Распределить пользователей по группам и раздать права администратор должен вручную!
Прикрепленный файл
usersmigr_e82rl.zip 2 Кб
#4 [ЕСТЬ РЕШЕНИЕ] авто-авторизация после регистрации. 12 мая 2015 в 19:32
Блицкриг,
По поводу редиректа: есть в файле \system\core\controller.php такая функция
  1. /**
  2.   * Редирект на главную страницу
  3.   */
  4. public function redirectToHome(){
  5. $this->redirect(href_to_home());
  6. }
  7.  
Вероятно, для редиректа на профиль нужно создать в той же папке функцию с переадресацией на профиль текущего юзера.

Если Вы не сильно торопитесь — попробую сделать такое. В пхп вообще ничего не смыслю, поэтому придется делать методом научного тыканья… раз профессионалы помочь не хотят...

В общем редирект на профиль пользователя после авторизации можно организовать двумя способами:
1. Прямо в файле \system\controllers\auth\actions\register.php в 233 строке вместо $this->redirectToHome вписать $this->redirect(href_to('users', $user->id));
2. Вписать туда же $this->redirectToUser, а в файле \system\core\controller.php создать новую функцию
  1. public function redirectToUser(){
  2. $this->redirect(href_to('users',$user->id));
  3. }
Сразу предупреждаю, толку от этих редиректов ровным счетом никакого, потому что новозарегистрированный пользователь пока не авторизован, сессия не начата и никакого id у этого юзера нет. Поэтому оба эти способа выбрасывают на site.ru/users то есть на список пользователей.
При этом выдается надпись об успешной регистрации, но вход на сайт не произведен.
#5 Не работает напоминание пароля, 1.10.6 11 мая 2015 в 18:26
Stecc,
Так ведь стояло 544 на всё с рекурсией.
Поставил на все папки и файлы 777 — заработало.

Если всё заработает — потом выставите 644 на includes/config.php
#6 Не работает напоминание пароля, 1.10.6 10 мая 2015 в 23:58
Майкл,
Извиняюсь, стал жертвой своей невнимательности. На время установки второго сайта на поддомен запретил права на запись на все папки основного сайта.
Восстановил права — все работает нормально!
#7 Не работает напоминание пароля, 1.10.6 10 мая 2015 в 21:22
Анал_огично. Только что проверил.
Приходит письмо на почту, в письме ссылка, которая открывается, как пустая страница:

http://*********.ru/registration/remind/f808cc77273c3*********32e1eb30c5
#8 Автоматическая генерация заголовков. 10 мая 2015 в 20:07
Нил,
Аналогично сделано еще в 11-ом годе при помощи Coza Nostra и других понимающих людей:
newostrie.ru/

Потом была предпринята вполне успешная попытка сделать новый компонент на 1.10.6 (из фака, конечно, но отдельный).
otsrie.ru/

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

Посмотрите как это устроено в компоненте FAQ если первая ветка. Тот же принцип

Нил

Вот как раз в первой ветке в админке отображается сам контент, а во второй пустые строки. Оно хочет заголовков.
#1 Автоматическая генерация заголовков. 10 мая 2015 в 19:51
Имеется надобность автоматом заполнять поле "title" при размещении контента в компоненте "Анекдоты". Эти самые анекдоты такой тип контента, который заголовков не имеет по определению. А в админке контент выводится с отображением только заголовков.
Отсель мораль. Нужно либо автоматом генерировать заголовки, либо отображать в админке начало самого контента для работы администраторов с этим контентом.
Для экономии базы было бы предпочтительней отображать в админке первые 30 символов самого контента, а не формировать дополнительные 30 символов в заголовок.
Кто что сможет посоветовать по этому поводу и как можно это реализовать?
#9 урлы в двойке 10 мая 2015 в 11:19
Самое просто решение — поменять везде в статьях нижнее подчеркивание на дефис.
Запустить в phpmyadmin такой скрипт:
UPDATE `cms_con_articles` SET `content`= REPLACE (content, '_', '-');
UPDATE `cms_con_articles` SET `slug`= REPLACE (slug, '_', '-');

И оно без разбора заменит все нижние подчеркивания на дефисы.
#10 Не обязательно email 9 мая 2015 в 19:22
При авторизации через логинзу емайл не нужен.
А уж аккаунты в соцсетях есть у всех поголовно, даже у затерянных в тайге лесничих.
#11 Двушка на поддомен 8 мая 2015 в 17:57
Совет по установке на поддомен. Не надо включать в настройках www домена автоподдомен!
Это приводит к тому, что все папки начинают адресоваться относительно www/data/username/www/maindomain/
Как потом не устанавливай сайт — адресацию папок настроить невозможно.
Поэтому нужно выставить в настройках домена "автоподдомены — отключено", создать субдомен вручную, скопировать в папку субдомена файлы и далее следовать подсказкам установщика.
#12 [ЕСТЬ РЕШЕНИЕ] instantmaps 2 импорт большого файла 7 мая 2015 в 18:10
www.devart.com/ru/dbforge/mysql/studio/

Рекомендации лучших сабаководов!
#13 [ЕСТЬ РЕШЕНИЕ] Проблема с меню 7 мая 2015 в 15:11
UPDATE `cms_таблица` SET `колонка со ссылками`= REPLACE (колонка со ссылками, 'www.site.ru', 'http://site.ru');
Русские буквы заменить на названия таблиц и колонок.

К примеру при исправлении ссылок в комментариях это выглядело так:
UPDATE `cms_comments` SET `content`= REPLACE (content, 'www.site.ru', 'http://site.ru');

Ну и таким вот скриптом по всем таблицам, где есть ссылки. laugh

Пещерный вариант — открыть бэкап базы в ноутпаде++ и автозаменой по всей базе… часа полтора.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.