Наумов Алексей

Наумов Алексей

С нами с 31 марта 2013; Место в рейтинге пользователей: #13
Наумов Алексей
05 января 2015, 10:27
0
У меня жуткий костыль, код разбросан в 10 местах, суть такая:
1. В низу страницы есть код скрытой формы, эта форма отображается при помощи fancybox при загрузке картинки.
2. В форме есть input type=file, загрузка файлов идет по одному
3. Сама форма отправляется на сервер через ajax (jquery forms)
4. На севере висит php скрипт файл сохраняет и выдает в ответ сформированный html код со ссылкой на картинку и маленьким превью.
Наумов Алексей
03 января 2015, 10:08
1
0
Я делал так:

1. Немного модернизируем js файл от тикетс (точнее делаем копию оригинального и указываем путь к нему в настройках), мой файл
fishspace.ru/assets/components/tickets/js/web/fish_default.js
мои изменения отмечены комментариями // FishSpace
2. в форму добавления комментария добавляем код ниже textarea
<div>
  	  <p>
  	    <a id="commentImagesUpload" href="#"><i class="icon-camera"></i>Прикрепить изображение</a>
  	  </p>
  	  <div id="commentImagesPanel"></div>
  	</div>
В момент написания комментария прикрепленные фотки вставляются внутрь commentImagesPanel (и соответственно у пользователя есть предпросмотр их), а в момент нажатия кнопки «написать комментарий» — html код с комментарями добавляется в textarea (это делает скрипт из п.1) и все отправляется на сервер.

3. На ссылку commentImagesUpload нужно повесить ajax загрузчик файлов, у меня так:
$('#commentImagesUpload').click(function(){
    ImageUpload(true);
    return false;
  });
функция ImageUpload у меня довольно навороченная и приводить ее код не буду. Суть ее в том, что бы показать всплывающее окно, которое позволит выбрать файл и загрузить его на сервер. На сервере скрипт загружает картинку, делает для нее превью, и возвращает ответ в json:

$html_code = '<a href="myimage.jpg"><img src="mythumb.jpg" />';
$result = array('success' => true, 'html' => $html_code);
return htmlspecialchars(json_encode($result), ENT_NOQUOTES);
В общем такой костыль у меня прикручен.
Наумов Алексей
23 декабря 2014, 08:56
0
Ну нет, лучше прочитать публикации здесь bezumkin.ru/modx/minishop2/classes/, особенно 2 последние

немного сложновато для первого раза, но зато можно все сделать.
Наумов Алексей
19 декабря 2014, 14:45
0
Если товара miniShop2, то лучше не шаблон проверять, а class_key = 'msProduct'.
Наумов Алексей
10 декабря 2014, 12:11
+1
Не очень охота читать так много кода и текста, но прочитав «проблему» в конце пара замечаний:

1. Комментарии добавляются не к странице, а к thread, который может быть, например, page-155, или mycustomthread, в общем какой угодно. Поэтому на одной странице вы можете вывести разные комментарии, из разных thread…
2.… но в тоже время вроде нельзя делать несколько вызовов TicketsComment, т.к. вроде возникает проблема в javascript =)

короче смотрите что такое thread, и как это устроено в БД.
Наумов Алексей
08 декабря 2014, 11:53
0
=)))
у каждого свое видение того, как что-то работать может. Все, читающие эту публикацию, безусловно рады нововведениям, но исходя из своего опыта, пытаются «усовершенствовать» функционал, предлагая разные пути, в надежде, что будет найден «идеал». Так что мы не критикуем, а предлагаем и обсуждаем. Вот)
Наумов Алексей
08 декабря 2014, 11:35
0
Хотя, и это уже не всех устраивает, не знаю как дальше быть.
устраивает, читай самые первые комментарии!
Наумов Алексей
08 декабря 2014, 10:40
0
Я подразумевал включение.
Может мы по разному пользуемся галереями, в моем сценарии галерея есть у 1-2 шаблонов на сайте, мне проще их включить, чем после каждого добавления шаблона бегать отключать.
Наумов Алексей
08 декабря 2014, 09:23
0
Спасибо!

ms2gallery_disable_for_templates — ура)

Хотя логичнее было сделать просто ms2gallery_templates, по умолчанию — пустую.
Наумов Алексей
28 ноября 2014, 14:20
0
Откуда, из phpmyadmin вестимо, modx_site_content
Наумов Алексей
28 ноября 2014, 09:50
0
Самый простой метод — дополнение Personalize
Наумов Алексей
28 ноября 2014, 09:03
0
Вот, хранит:


задумка понятная, реализуемая, я так делал.

А если вы имеете ввиду, что у комментария нет url, то все верно, у него нет url, ибо комментарий — это не ресурс.
Наумов Алексей
27 ноября 2014, 15:37
+1
Перед последним if выведите sql запрос и посмотрите его, попробуйте запустить в phpmyadmin:

$q->prepare();
echo $q->toSql();
die;
наверняка где-то ошибка
Наумов Алексей
25 ноября 2014, 11:29
+3
5 шаблонов это норм, почему бы и нет?)

Не нравится — оставляйте в шаблоне doctype, head и body, а весь остальной код в страницы убирайте

Я обычно под каждую сущность завожу шаблон, таким образом у меня получаются шаблоны типа Главная, Текст, Раздел Каталога, Товар, Отзывы и т.д., но при этом в шаблонах очень простой код, никаких условий или чего то подобного.
Наумов Алексей
24 ноября 2014, 08:53
0
$dataobject = $modx->newObject($classname);
$dataobject->set($field, $value);
$dataobject->save();
$id = $dataobject->get(''id);
что, не работает?
Наумов Алексей
19 ноября 2014, 14:11
+3
а фраза «будет тормозить 500 товаров» убедительна?
Наумов Алексей
19 ноября 2014, 13:55
0
У меня есть сайт, в котором 50000 товаров, не тормозит, все ок.
Да еще вся база раз в сутки автоматически синхронизируется, обновляются цены, наличии, меняется ассортимент.

И дополнительные поля у меня есть, около 20, да еще они все продублированы в TV полях)) итого 20*50000 TV полей))
Наумов Алексей
19 ноября 2014, 13:29
0
Лучше на начальном этапе поправить пару небольших ошибок, чем потом думать, куда пол сайта пропало из-за верстки или какого нибудь тега незакрытого