Александр Туниеков
С нами с 19 декабря 2015; Место в рейтинге пользователей: #154 часа назад
Значит пришла пора научится искать ошибки.
Помогите подсказать с выводом результатов в HTML, через Sendit 3
Сегодня в 02:35
Не работает. Не сохраняет значение поля сортировки.
MODX Revolution 2.8.6
Minishop2 4.1.1
mSearch2 1.14.70
upd
В категории, где создано кастомн...
msSortFields 13
Вчера в 17:38
Перестал работать доп, методы запроса изменились похоже, у кого то было такое?
Различное количество выводимых изображений в modInstagram2 2
Вчера в 11:28
Спасибо за теплые слова Антон.
Документацию пока не начинал делать. Надо бы…
Умные люди советую отдельный проект под документацию и демку поднимат...
MiniShop3 - 1.0.0-alpha 17
13 декабря 2024, 20:27
>Во вторых, компьютер не может ничего такого что в него не заложили.
Это не так. Генеративные сети давно могут. Например, они сами обучились по...
Испытание ИИ Cursor 7
13 декабря 2024, 14:24
Возник вопрос, цена то да, меняется через msOnGetProductPrice или msOnGetProductFields, а самое главное то, что никто не задавался вопросом, что сорти...
Событие msOnGetProductPrice установить old_price 2
12 декабря 2024, 15:55
не помогло к сожалению, подскажите пожалуйста, в каком направлении вы бы продолжили искать?
msOneClick. Ошибка, не появляется модальное окно 2
11 декабря 2024, 15:29
Разобрался!
Использую редактор Tinymcerte
В системных настройках нужно отключить Относительные URL!
Теперь обычные внутренние ссылки корректные...
Jevix чудит 8
11 декабря 2024, 13:12
Спасибо, точно, забыл про это поле. Может есть пример сниппета на запись в это поле? Не могу понять как обратиться к нужному файлу, получить его поле ...
[UserFiles] - Файлы пользователя. 188
11 декабря 2024, 11:13
Спасибо добрейшее. А тип поля «Текстовая область», как-то можно сменить на TinyMCE RTE?
[ExtraFields] Поле "не появляется/не включить" в "Настройках форм/шаблон Това... 2
Я хочу себе такую лицензию. Я, вполне уверен, что из-за этого ни я ни покупатели ничего не потеряют.
Вы можете обижаться на мои высказывания сколько вам угодно. Мне, конечно, слегка тоже обидно, но обижаться или не обижаться может каждый. Прям не знаю что дальше написать. Мне хотелось бы чтоб вы меня простили, но и прогибаться под ваше мировоззрение тоже не хочется.…
Иногда это эффективно. Например для привлечения внимания. Я не ожидал и не планировал, что у вас будет такая реакция. Но может быть подсознание постаралось :-). Прет счас агрессия.
Мне все равно кто и что нарушает. У всех есть свобода воли. Если кто-то что-то и нарушает это просто проявление их каких-либо проблем и ошибок. Может быть. Не мне их судить.
Вы ничего не нарушаете :-). Закона о свободных лицензиях в России нет. Нет закона нет нарушения. Судить вас за то, что вы отрыли замечательный сайт? За то что пишете хорошие уроки? За то что вы успешно ведете свой бизнес?..
Черт. Блин. Заколебало. Перфоманс есть перфоманс. Не всем он нравиться. Смена идеологии — это как-бы «дикая агрессия» от инициатора процесса. Потом будет попроще. Хотел же блин вроде только немного повыпедриваться, а получилось как всегда :-).
Пример зацепил и хочется полностью убедить в своей правоте…
Вы правы конечно. Но и я тоже прав. Проблема в вере в справедливость суда. Я как-то в это не очень верю. При некоторой наглости адвокатов и при некоторой смазанной «некомпетентности» суда, все что угодно произойти может. И на мой взгляд адекватный контроль таких ситуацией невозможен.
Source code — это исходный код программы. Из которого, сделав нужные изменения кода и компиляцию, можно получить работающею программу. В транспортном пакете, папки _build нет. Для того чтобы сделать другой транспортный пакет с нужными правками функционала программы, нужно восстанавливать папку _build. Программу с закрытым кодом тоже можно восстановить. Смысл говорить, что транспортный пакет — это Source code, если для получения другого экземпляра установочного пакета программы нужно восстанавливать часть исходного кода. Таким образом транспортный пакет не может быть определен как Source code. Уважаемый судья компания «рога и копыта» отказывается предоставить мне Source code программы распространяемой по всеми любимой и уважаемой, достоянием общественности, Высшим достижением демократии, полностью Свободной Лицензии GPL. Они не уважаю Законы. Прошу Вас компенсировать нам наш моральный ущерб на 1 000 000$ чтоб впредь они не смели нарушать наши Законы. И не подвергали нас опасности погрузиться во власть беззакония и Хаоса.
Чет я разошелся :-). Именно так как я написал вряд ли будет, но что-нибудь похожее кто-нибудь и может попробовать провернуть. Пример наглого наезда, с моей точки зрения, я написал. Надеюсь моя точка зрения понятна. Не хотелось бы эту тему растягивать. Все таки наверно для политических дебатов сайт не предназначен.
Конечно у меня нет вывода списка контрагентов. Мне он не нужен был.
Если просто нужен список контрагентов, то
$Orgs = $modx->getIterator('Orgs', array());
И вперед. Но просто список не всегда нужен. Кому показывать? Доступен всем зашедшим на сайт без разбора? Или допустим продавцам на фронте? Или им не список нужен, а комбокс?
Нет не предполагалось. Но могу сделать. В принципе, подготовить компонент под ваш тип задач, наверно, день два работы. Но все нюансы вашей задачи мне еще не понятны. Может и две недели на обдумывание и 3 дня на программирование.
И, как всегда, денежный вопрос :-). За работу над компонентом я некоторую сумму уже получил. Просто я его еще сразу и на продажу и для всех запланировал. Иначе бы не парился над его универсальностью.
Ну общем понимаете, что работа денег стоит. Просто так, рассчитывая потом продать, делать нет смысла. Получиться нечто никому не нужное. У каждой задачи своя специфика. Делать универсальное, не зная специфики всех возможных задач, не круто.
Ну надеюсь моя позиция ясна. Вы можете поработать над задачей вашего клиента сами. Или поработать на этим вместе со мной :-). Как мне кажется, моя заготовка уже облегчила вам жизнь. Хотя не знаю на сколько. Фронт для продавцов, например, мне не кажется таким уж совсем легким. Не пробовал. Не знаю. Но если, что мне интересно…
Я перед тем как задавать вопросы пробую сам разобраться. Диалог с техподдержкой сразу становиться конструктивней :-).
Довольно мало во фронте и несколько неупорядоченно. Хотя больше то наверно не нужно.
сниппеты:
getDefaultUserOrg — Показывает форму редактирования или просмотра данных организации.
Если пользователь в группе Администраторы, то есть права на редактирование, показывает чанк editOrgOuter со строками из чанка editOrgRow. Иначе форму просмотра viewOrgOuter. Параметр onlyView ='1' также показывает viewOrgOuter с editOrgRow для вставки данных организации в какую-нибудь другую форму. (Планировалось, что один пользователь может находиться в разных организациях. Но пришлось урезаться, а название сниппета осталось.)
В форме editOrgOuter, кнопка пользователи переход на страницу пользователей организации со сниппетом
editOrgsUsers — Показывает пользователей организации и инвайты в нее.
Сниппет — показывает таблицу пользователей. Чанки editUserOrgOuter и editUserOrgRow. В таблице кнопки:
Редактирование группы прав пользователя и отключение пользователя. При отключении пользователя его права становятся нулевыми.
То есть функция $Orgs->testAccess($access) из класса organizations.class.php вернет false на любое право. Право — это строка вида «edit_org_data». Настраивается в админке.
$Orgs->getDefaultOrg($userId); возвращает id организации.
В чанке editUserOrgOuter так же таблица инвайтов организации, модальная форма редактирования прав пользователя и модальная форма создания инвайта. Про инвайты пока пропустим.
Сниппет checkAccess проверяет права. Если успешно, то возвращает чанк trueTpl. Иначе параметр falseMsg. Можно перед показом какого-либо ресурса проверить права.
CheckConteiner inviteReg и loginRegisterHook используются при регистрации пользователя. Написаны под [Login] и как они подойдут для других компонентов не знаю. Я их не юзал.
Для подсказок DaData нужно bootstrap, bootstrap3-typeahead.min.js, orgs.js из папки assets\components\organizations\js
Посмотреть код и как это выглядит можно на демо-сайте http://z9233215.bget.ru/
Как разработчику компонента мне кажется все очевидным. Я еще не знаю какие проблемы и вопросы у Вас могут возникнуть. Попробуйте разобраться. Задавайте вопросы. Может Вы потом захотите написать хороший урок по компоненту :-).
«Выпад» в сторону Modstore и др. был просто примером моего первоначального понимания GPL.
Текст моей «лицензии» несет в себе совсем другую цель, чем лицензия GPL. Поэтому я и не планировал разбираться с ней. Но Ваш пост полезен. Еще раз спасибо.
Цель моей «лицензии», в общем — то, несколько уменьшить влияние власти и госструктур на общество. Они мне как-то не нравятся :-).
Может быть вам это не сильно нужно? Может зачем компонент вы уже поняли, а использовать пока не планируете?
У MODx, например, далеко не все возможности задокументированы. Приходиться искать информацию в поиске. Есть своя цена и за внятное описание и своя цена за освоение информации. Если вы хотите разобраться, то я постараюсь вам помочь. А если в этом нет насущной необходимости, то зачем напрягаться и мне и вам? :-)
Я конечно умныйблин повыпендриваться полезло. Не понял, что к чему. В праве продавать вроде никто не сомневается. Речь только об обязанности исходники предоставить.Транспортный пакет — это не Source Code. _build нет. В лицензии сказано предоставь Source Code.
modstore.pro как услуга продавца. Тем кто хочет оплатить труд автора. Что-то я не догоняю суть претензии. GPL вроде распространять код под своей лицензией не заставляет. Ссылка на Source Code есть. Что мешает продаваться в modstore.pro?
А вдруг я хочу голый под под лучами солнца позагарать? :-)
Не знаю, только купившим или вообще всем, но скорей всего у них это где-то прописано и учитывается.
На modstore.pro чувствуется, что GPL далеко не всем понятна. Возможно, и владельцу магазина. Умиляют авторы, что пишут что-то вроде «вот мы тут вам исходник предоставили, пожертвовали так сказать собой, можете ставить бесплатно». Просто по условиям GPL, они обязаны предоставить исходник пользователям и они могут свободно его изменять и свободно распространять. И дрюкнуть через суд их может любой пользователь.
Я пример просто привел. Мне зарабатывать на чужих багах нет желания. Я типо умный, гордый. Типо и так на хлеб с маслом себе заработаю :-).
Надеюсь мои сложносочиненные предложения Вас не запутали ;-).
2) В принципе, я, думаю, людям можно доверять. Хотя, конечно, бывает разное, но, большая часть неблаговидных поступков, как я думаю, совершается либо из нужды либо при недостаточной информированности.
Например, лицензия MODx — GPL. Она требует, чтобы любое ПО производное от MODx было доступно всем для скачивания модифицирования и распространения. Де-юре, магазин modstore.pro уже сам по себе противоречит GPL. ПО не является свободно доступным для скачивания. Теоретически, я могу как пользователь ПО производного от MODx подать в суд магазин и отсудить энную сумму у магазина за нарушение магазином моих прав по лицензии GPL :-). К счастью, русская правовая система до таких извращений еще не дошла. Но в общем-то активно к ним стремиться.
Моя «лицензия» нацелена на то, чтобы вообще отвязать покупку и продажу ПО от правового поля. Умение доверять необходимо и для бизнеса и для общества в целом. Никакие договора отсутствие извратов не гарантируют. Строить доверительные отношения на принципе правового насилия изначально ущербно :-).
Пожалуйста. Хотя эпитет титаническая работа удивляет. 3 месяца — это не так много, для путного компонента.
Для текущих задач, ChangePack мне подходит. Работает как и задумывался. Хотя интересно сделать лучше. Можно выделять на каждую копию сайта пул id и после создания ресурса перезаписывать его id разрешенным id. Возможно подойдет для 2-5 разработчиков. Но это уже без «версионировать код через Git». Неясно будет ли компонент полезным. И захотят ли его, например, купить :). Сейчас буду текущим проектом заниматься. Дорабатывать нет времени.
Умная фраза :). С налета не поймешь, что это такое Gitify умеет делать и зачем он нужен. Да и в поиске modx синхронизация копий сайта Gitify не отсвечивал :).
Ладно это я несколько раздражен. Зацепила ваша фраза :).
Можно несколько поподробней как Gitify разрешает конфликты с Id.
Ничего не понятно. С честь чего «объект временно сохраняется в памяти». Мм… это понял — билд же делается. Схема работы: с базы локального сайта делается extract в файлы Gitify, файлы Gitify синхронизируются с репозиторием git, другой разработчик синхронизирует репозиторий git со своими файлами Gitify и делает билд данных в свою копию сайта.
Интересно :). Только как быть с рабочим сайтом, который находиться где-то на хостинге где есть только apache и ftp. Как его обновлять?
Не слишком приятно :(. В коде может ссылка на id ресурса. При изменении его id нужно править код.
Вообщем, если дорабатывать компонент, нужно довольно много продумать. Когда буду и буду ли вообще я этим заниматься пока неясно :).