bestit

bestit

+12
Репутация
11
Рейтинг
#1 По редакторам в 2.12.2 21 октября 2019 в 20:50

Не определяется Mobile Detect как телефон

Олег Васильевич я
Эта проблема на стороне браузера Windows телефона или где? Я покрутил настройки браузера в телефоне. Вообще никак не меняется отображение сайта при изменении параметра Полная версия или Мобильная. Не меняется даже вид главной страницу Yandex.ru. Странно, на Android вид сайта разный при аналогичной настройке. Опять этот чудесный Windows...

С другой стороны, если бы даже и корректно определилось, все равно поддержки windows не заявлена для Tiny mobile.
TinyMCE mobile is designed to run on iOS Safari and Android Chrome.

Итого, меня в данной ситуации все устраивает. Нужные мне кнопки есть на всех устройствах.
#2 По редакторам в 2.12.2 21 октября 2019 в 19:28
Да, еще есть ограничение мобильного редактора. TinyMCE mobile is designed to run on iOS Safari and Android Chrome.

Я проверил на Winodws 10 mobile телефоне — при редактировании доступен обычный вид редактора. При этом кнопки вставки ссылки и картинки тоже есть! То есть на виндофоне вид Tiny как на компьютере. Только все мелко и кнопки выстраиваются в столбец. А на android телефоне набор кнопок был ограничен. Но после перехода на опцию 'mobile' получаем мобильный редактор.

Вид редактора на Windows10 mobile (не зависит от настройки опции 'mobile')


Вид редактора на Android при стандартной настройке InstantCMS (тема silver)


Вид мобильной версии редактора на Android при включенной опции 'mobile' смотрите в моем предыдущем сообщении.
#3 По редакторам в 2.12.2 21 октября 2019 в 18:56


@bestit, от icms это не зависит.
Вот мой тикет на гитхабе timymce github.com/tinymce/tinymce/issues/4978

Если кратко, то мало плагинов поддерживают мобильные. Там есть ссылка, где можно "читать новости" по этой теме.

Zau4man

@Zau4man, спасибо за ссылки!
Почитал и как понял мой плохой английский, для TinyMCE с 4.7 и выше есть встроенная мобильная тема, не требующая дополнительного конфигурирования. Но у нее есть ограничения на какие-то плагины.

Я залез в конфиг файл /wysiwyg/tinymce/wysiwyg.class.php и увидел, что мобильная тема в ICMS по умолчанию переключена на тему silver.


Попробовал переключить на мобильную и все, что мне нужно заработало!!


Открываем на редактирование страницу


Нажимаем значок "Книжечка" посредине. Открывается мобильный редактор, в верхней части которого полоса с кнопками. Оно прокручивается.


Там оказались нужные мне кнопки вставка и удаление ссылки и вставка картинки.


Делаем ссылку. Длинным тапом удерживаем нужное слово, выделяем его, нажимаем кнопку "ссылка", в верхней части появляется настройка. Ссылка, сам текст и еще пару параметров. Они прокручиваются. Пишем url и жмем готово.

После окончания редактирования выходим из мобильного редактора по стрелке "назад" в верхнем левом углу мобильного редактора и возвращаемся в обычный редактор, где и сохраняем страницу.
#4 По редакторам в 2.12.2 21 октября 2019 в 14:17
Всем доброго дня.
Столкнулся с такой особенностью настройки редактора TinyMCE5 в InstantCSM 2.12.2
Редактор настроен в админке как нужно, т.е. включены все необходимые для оформления кнопки. На настольных ПК все прекрасно работает. Но иногда бывает необходимость что-то поправить на ходу прямо со смартфона, и вот здесь редактор отображает другой набор кнопок (не тот, что указан в админке).

В целом почти все, что нужно есть, но кнопок "Ссылка" и "Картинка" явно не хватает. Подскажите, пожалуйста, где нужно "подкрутить гайки" чтобы нужные кнопки появились при редактировании со смартфона?
#5 InstantCMS 2.12.2 Проблема с перемещением виджетов между страницами 21 октября 2019 в 13:11


Были проблемы с шаблоном \ виджетами с включенными темами в SiteKreator, с маской на Всех страницах.

@noname

Можно подробнее об этих проблемах?
SiteKreator, как я понимаю и как я его использую, просто позволяет создавать наборы стилей, управлять ими (включить, выключить, сохранить, загрузить) и подключать их поверх стандартных стилей. По сути это скины сайта. Это мне позволяет настроить внешний вид сайта не трогая системные стили, что в свою очередь позволяет без проблем обновлять систему и минимизировать время на восстановление своего стиля.

p.s. на тестовом чистом сайте я отключил компонент SiteKreator и проделал все те же манипуляции по перемещению виджета, как в моем последнем видео. Все тоже самое. Чистый html блок сразу можно поставить на "посадочное место". Этот же блок, отправленный в Неиспользуемые при повторной попытке вернуть на тоже место в aside не садится на "посадочное место". Чтобы его "посадить" нужно целиться в сторону.
Это позволяет сделать вывод, что компонент SiteKreator не при чем.
#6 InstantCMS 2.12.2 Проблема с перемещением виджетов между страницами 20 октября 2019 в 20:06


@bestit,
Нажмите F12, ткните там console и снимите видео еще раз.

Ris

F12, Консоль.
youtu.be/xah2V7oRPPQ

Еще поэкпериментировал на другом чистом сайте. Там aside справа. Поставил виджет, утянул в неиспользуемые, затем потянул обратно в aside. И на свое посадочное место не хочет садиться. Выяснилось, что на самом деле блок виджета таки можно засунуть в aside, но при этом нужно блок тянуть и размещать не точно на его посадочное место, а в стороне от него! Как бы сбивается прицел look
Надо тянуть левее или правее в зависимости от того aside слева или справа, отслеживая когда подсветится место посадки виджета.

Если же тянешь чистый (не настроенный) блок из списка виждетов, он четко дает себя приземлить на посадочное место. Как-то так.
youtu.be/oGC_QkqKMW0

p.s. Браузер Mozilla Firefox 69.0.3
#1 InstantCMS 2.12.2 Проблема с перемещением виджетов между страницами 20 октября 2019 в 18:28
Добрый вечер.

На сайте в боковой панели (aside) есть несколько настроенных стандартных виджетов (типа html блок и меню). Появилась необходимость перекинуть их со "Все страницы" на "Главная страница". Все в пределах одного шаблона default. Переместил виджеты в "Неиспользуемые", пытаюсь вытащить их и разместить уже на главной странице в боковую панель — и система показывает, что типа здесь их не получится разместить. В меню — пожалуйста, в основной контент — то же можно. А в aside — нет. Приходится тянуть в aside дефолтные пустые виджеты и заново настраивать их путем копирования настроек из виджетов, отправленных в "Неиспользуемые".

InstantCMS 2.12.2. Из дополнений только использую SiteKreator 22.2.0 для настройки css
Прикладываю видео. youtu.be/qKpPM4NBTC4
#7 EXIF фотогалереи выводит информацию в некорректном виде 1 августа 2019 в 11:44

@bestit, спасибо, изучу ваши правки и внесу в релиз.

Fuze
Fuze, благодарю, что обратили внимание на мой пост.

Дополню, что к сожалению, производители оборудования по-своему заполняют поля exif, хотя и существует стандарт (который, правда, тоже меняется со временем).

Вот, например, смартфон Lenovo так заполняет поля о себе:


Поэтому в моем коде в месте проверки на совпадение Make со значением 'Lenovo' нужно обернуть trim()-ом
Ну или вообще как-то иначе реализовать этот блок. Плохо, что в коде явно что-то прописывается. Решение не получается универсальным, я ведь далеко не все камеры проверил, только те, фото с которых были под рукой.
Может быть лучше получать оба поля, затем проверять вхождение первого во второе и по результату записывать в $camera только Model или Make.' '.Model.

Но тут Nikon выпендрился из всех. Он записывает в Make не просто 'Nikon', а 'NIKON CORPORATION'. Это снова усложняет предложенную проверку.
#8 EXIF фотогалереи выводит информацию в некорректном виде 31 июля 2019 в 23:32
Мой вариант решения. Немного исправил обработку данных exif в функции img_get_params в /system/libs/files.helper.php

1. Модель камеры выводится корректно с именем производителя. Протестировал на имеющихся фото от Nikon, Canon, Fujifilm, Nokia Lumia, Apple iPhone, Meizu, Lenovo, Sony Errcsson.
Здесь оказалось, что в параметр exif 'IFD0.Model' Canon и Nikon, а также смартфон Lenovo прописывают не только модель аппарата, но и имя компании. Хотя для этого есть отдельное поле 'IFD0.Make'. Для этих берем только 'Model' Остальные фирмы разделяют данные на два поля, поэтому для них данные объединяем Make+Model.

2. Выдержка (exposuretime) отображается всегда в виде 1/число (в сек.)

3. Фокусное расстояние (focallength) отображается целым числом (в мм.)

4. Дополнительно вывел эквивалентное фокусное расстояние (focallengthin35mmfilm). Отображается целым числом (в мм.) Мне это интересно.

5. Что касается даты, оказалось, что Photoshop меняет при обработке exif параметр 'IFD0.DateTime'. Сносит дату съемки и ставит дату сохранения файла. Ну типа, "того ты же пофотошопил, значит это уже не оригинал". Поэтому из 3-х вариантов получения даты создания в функции, этот исключил (комментирован).

  1.  
  2. function img_get_params($path){
  3.  
  4. $s = getimagesize($path);
  5. if ($s === false) { return false; }
  6.  
  7. $exif_data = array();
  8. $exif = (function_exists('exif_read_data') && $s['mime'] === 'image/jpeg' ? (@exif_read_data($path, null, true)) : null);
  9. if($exif){
  10. if(isset($exif['COMPUTED']['ApertureFNumber'])){
  11. $exif_data['aperturefnumber'] = $exif['COMPUTED']['ApertureFNumber'];
  12. } elseif(isset($exif['EXIF']['FNumber'])){
  13. $num = explode('/', $exif['EXIF']['FNumber']);
  14. $exif_data['aperturefnumber'] = 'f/'.($num[0]/$num[1]);
  15. }
  16. if(isset($exif['EXIF']['ExposureTime'])){
  17. $num = explode('/', $exif['EXIF']['ExposureTime']);
  18. $exif_data['exposuretime'] = ($num[0] == 1) ? $exif['EXIF']['ExposureTime'] : '1/'.round($num[1]/$num[0]).'s';
  19. } elseif(isset($exif['IFD0']['ExposureTime'])){
  20. $exif_data['exposuretime'] = $exif['IFD0']['ExposureTime'];
  21. }
  22. $make = false;
  23. if(isset($exif['IFD0']['Make'])){
  24. if ($exif['IFD0']['Make']!='NIKON CORPORATION'&&$exif['IFD0']['Make']!='Canon'&&$exif['IFD0']['Make']!='Lenovo '){
  25. $exif_data['camera'] = $exif['IFD0']['Make'];
  26. $make = true;
  27. }
  28. }
  29. if(isset($exif['IFD0']['Model'])){
  30. $exif_data['camera'] = $make ? $exif['IFD0']['Make'].' '.$exif['IFD0']['Model'] : $exif['IFD0']['Model'];
  31. }
  32. // if(isset($exif['IFD0']['DateTime'])){
  33. // $exif_data['date'] = $exif['IFD0']['DateTime'];
  34. // } elseif(isset($exif['EXIF']['DateTimeOriginal'])){
  35. if(isset($exif['EXIF']['DateTimeOriginal'])){
  36. $exif_data['date'] = $exif['EXIF']['DateTimeOriginal'];
  37. } elseif(isset($exif['EXIF']['DateTimeDigitized'])){
  38. $exif_data['date'] = $exif['EXIF']['DateTimeDigitized'];
  39. }
  40.  
  41. if(isset($exif['EXIF']['ISOSpeedRatings'])){
  42. $exif_data['isospeedratings'] = $exif['EXIF']['ISOSpeedRatings'];
  43. if(is_array($exif_data['isospeedratings'])){
  44. $exif_data['isospeedratings'] = current($exif_data['isospeedratings']);
  45. }
  46. }
  47.  
  48. if(isset($exif['EXIF']['FocalLength'])){
  49. $num = explode('/', $exif['EXIF']['FocalLength']);
  50. $exif_data['focallength'] = floor($num[0]/$num[1]).'mm';
  51. }
  52.  
  53. if(isset($exif['EXIF']['FocalLengthIn35mmFilm'])){
  54. $exif_data['focallengthin35mmfilm'] = $exif['EXIF']['FocalLengthIn35mmFilm'].'mm';
  55. }
  56.  
  57. if(isset($exif['IFD0']['Orientation'])){
  58. $exif_data['orientation'] = $exif['IFD0']['Orientation'];
  59. }
  60. }
  61.  
  62. $orientation = 'square';
  63. if($s[0] > $s[1]){
  64. $orientation = 'landscape';
  65. }
  66. if($s[0] < $s[1]){
  67. $orientation = 'portrait';
  68. }
  69.  
  70. return array(
  71. 'orientation' => $orientation,
  72. 'width' => $s[0],
  73. 'height' => $s[1],
  74. 'mime' => $s['mime'],
  75. 'exif' => $exif_data,
  76. 'filesize' => round(filesize($path))
  77. );
  78.  
  79. }
  80.  
Пример:
#9 EXIF фотогалереи выводит информацию в некорректном виде 29 июля 2019 в 22:54
Дополняю.
Выводимая "дата съемки" не соответствует данным EXIF-а.
Фотографии иконы по exif сделана 16.06.2019 10:38
А выводится сейчас в качестве даты съемки дата загрузки этого фото в альбом.
В БД в таблице cms_photos есть два поля с датой:
date_pub и date_photo. Первая, как я понимаю, дата публикации. А вторая, по идее, должна быть датой съемки из exif. Но сейчас здесь сохраняется дата загрузки фотографии в альбом.

Подведу итого.
Данные из exif забираются, но обработка и сохранение некоторых значений не совсем корректны.

focallength:нужно сохранять в БД одним целым числом, поделив числитель на знаменатель. Т.е. вместо 4000/10 записать 400. Вместо 1960/100 нужно, округлив до целого, записать 20.

exposuretime: тут неоднозначно. Для зеркалки Nikon D750 и Canon EOS 5D Mark II все выводится корректно! Для старой мыльницы Canon PowerShot A520, и беззеркалки Fujifilm X-T10 (2015 год) и числитель и знаменатель нужно делить на 10. Вместо 10/900 записать в БД 1/90

Дата съемки из exif или не считывается или присутствует логическая ошибка при ее сохранении в БД. Т.к. сейчас сохраняется дата загрузки этого фото.
#1 EXIF фотогалереи выводит информацию в некорректном виде 27 июля 2019 в 23:04
Здравствуйте.

Использую InstantCMS 2.12.2.
Загружаю фотографии в альбомы стандартной Галереи. При просмотре фотографии система отображает данные EXIF из фотографий.
В не корректном виде отображаются:
1. Выдержка. Показывает 10/900 вместо 1/90 (на фото сделанное на Fujifilm X-T10). При этом на фото с Nikon D750 выдержка выводится корректно.
2. Фокусное расстояние. Показывает 5500/100 вместо 55[мм] или 4000/10 вместо 400[мм]. Этот параметр на фото с Nikon и с Fujifilm отображается одинаково некорректно. Примеры фото прикладываю.

Впечатление такое, что или в библиотеке exif или потом при выводе на экран зачем то умножаются числитель и знаменатель на 10. Но не всегда, т.к. выдержка на фото с Nikon 1/250 — отобразилась корректно.

Подскажите, пожалуйста, где и что можно исправить?

p.s. дополню, что указанные значения хранятся уже в некорректном виде в БД.
значение поля 'exif' для утят:
---
aperturefnumber: f/8.0
exposuretime: 1/250
isospeedratings: 200
focallength: 4000/10

значение поля 'exif' для иконы:
---
aperturefnumber: f/4.0
exposuretime: 10/900
isospeedratings: 3200
focallength: 5500/100
Прикрепленный файл
fuji_3u80e.jpg 88 Кб
#10 По редакторам в 2.12.2 6 июля 2019 в 01:11


@bestit, yadi.sk/i/wlmrHUTSZHOfSQ

Loadырь
Спасибо! С вашей подсказкой разобрался почему у меня не отображается значок загрузки в строке ссылка. Я не прописал в настройках ни один разрешенный для загрузки тип для группы Администраторы!
#11 По редакторам в 2.12.2 5 июля 2019 в 22:43


@bestit, другие виды файлов грузятся по кнопке "ссылка".

Loadырь
Поясните пожалуйста. Прошу прощения, я туплю. Кнопка "ссылка" в редакторе делает гиперссылку в тексте на введенный линк. Я здесь не вижу функционал "загрузить файл на сервер" чтобы потом сделать ссылку на него:

А вот кнопка вставить картинку позволяет загрузить файл на сервер:
#12 По редакторам в 2.12.2 5 июля 2019 в 17:29
Друзья, подскажите пожалуйста, что за опции в самом низу страницы настроек редактора TinyMCE?


Вот я выбрал разные типы документов, и что как и где я могу теперь это использовать?
С загрузкой фото и медиа через TinyMCE все работает и понятно, а вот с другими видами файлами не разобрался.
p.s. если я верно понял, в InsnatCMS нет штатного механизма загрузки и прикрепления файлов к контенту. Кроме картинок. И нужно покупать компонент "Мультизагрузка". Это так?
#13 По редакторам в 2.12.2 5 июля 2019 в 17:18
Кстати, при выделенном слове контекстное меню продолжает работать и можно например сформировать ссылку. И это не мешает пользоваться контекстным меню браузера.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.