Uradobri

На Пикабу
Дата рождения: 30 августа
266 рейтинг 1 подписчик 3 подписки 6 постов 1 в горячем
6

Телефонный справочник на node.js + react

Как-то я делал подобный справочник на jQuery и на удивление нашлись люди кому он пригодился. Ввиду того что есть спрос, того что я пока ищу работу и того, что я начал учить реакт, решил переделать бек и сделать фронт на реакте для практики. Местами конечно одинаковые задачи выполняются по разному, но это все ради эксперимента.

Так же если будет какой-то фидбек по этому справочнику - выпущу пару обновлений.

Основное отличие справочника от предыдущего в том, что добавлена функция новостей и событий.

Так же в справочнике почти нет верстки, что бы вы могли сделать визуал как вам надо, а если лень - можно оставить дефолтный. Если кто-то сделает дизайн - выпущу обновление в котором заверстаю по этому дизайну :D


Первая страница Новости

На ней выводится по 10 новостей на страницу с отображением даты и автора.

Нажав на кнопку "Читать далее", вы провалитесь на страницу новости.

На вкладке ЛК - Новости можно отредактировать, удалить и добавить новую новость

Так же на вкладке ЛК - Пользователи, можно создать, изменить и удалить нового пользователя. При первом запуске приложения - автоматически создается админский аккаунт с логином admin и паролем 12345

Далее есть вкладка событий, основное отличие от новостей только в том, что у них нет отдельной страницы как у новостей и количество символов меньше, по редактированию аналогично новостям

Далее идет страница справочника

Поле поиска слева - отвечает за поиск по категориям, поиск в центре - поиск по людям.

Что бы добавить категорию заходим ЛК - Категории.

На этой странице так же выводится список всех категорий, можно добавлять новые, удалять и редактировать. Но перед тем как добавить человека - нужно создать подкатегорию. Переходим ЛК - Подкатегории

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

В категориях и подкатегориях есть цифра 0 - это порядок вывода записи.

Далее что бы добавить человека идем в ЛК - Люди.

Тут выбираем в первом выпадающем меню категорию, затем подкатегорию и вводим человека в поле.

Почему формат ФИО:Должность:Внешний телефон:Внутренний телефон:Описание; ?

Все просто вы можете собрать людей в таблицу эксель и просто ее отформатировать в такой вид и вставить в поле. Ограничений на единовременное введение людей нет. Если вы хотите оставить поле пустым - просто пропустите его оставив :.

Например ФИО::

:Внутренний телефон:Описание;

Так же можно редактировать данные человека и удалять его.

Ссылка на гит https://github.com/ura2rist/Work-Portal

Подробный гайд как установить, команды на главной странице репозитория

Моя телега @urifcof

Показать полностью 9
15

Готовый телефонный справочник на NODE.JS с админкой

Всем здравствуйте. Начну с истории.

Устроился я на работу техником(в тех отдел), через какое-то время ковыряться с компами поднадоело и поговорив с начальником мне предложили заняться разработкой. Опыт верстки и программирования на php был. Первой задачей была "сделать телефонный справочник", погуглив я не нашел готовых решений, тогда начальник предложил WordPress. Ну не долго думая поставил на наш сервер WP, начал пробовать сделать и понял, что все как-то не так.

Во-первых не нравилось то, что слишком много доп функций в админке, много лишнего.

Во-вторых вп подключает в шаблон то, что мне не нужно, а переверстывать желание небыло.

В-третьих скорость работы, нужно было быстро выдавать информацию, записей в бд больше 3к и почему-то WP справлялся с этим крайне долго.

Начав искать новые варианты я наткнулся на node.js, и подумал "а почему бы не написать все самому". К тому же идея управлять бекэндом и фронтом при помощи одного языка мне очень нравилась.

Сказано - сделано, начал учить и сразу писать. Было много трудностей, куча камней и т.д, к тому же начальник уже стучал по голове со словами "ну когда уже". Ну пришлось "поговнокодить" т.к это изрядно ускоряло процесс.

В общем справочник был сдан, была куча правок, куча переделок но все готово и работает. Только вот "говнокод" не давал мне спать по ночам, я просыпался в поту думая о том, что можно было все сделать не идеально но гораздо лучше.

В общем, я созрел и решил сделать еще один справочник, по функционалу проще но все еще удобный для юзера. Справочник я запланировал выложить в общий доступ.

Для чего?

Во-первых это опыт.

Во-вторых я люблю заниматься подобным.

В-третьих мне хочется услышать критику и исправить его недостатки т.к сам я ввиду отсутствия опыта просто их могу не заметить.

В-четвертых хочется помочь людям которым тоже понадобиться такая штука.

Тут присутствую 2 группы кнопок

1) Left(main)

2)Center(second)

Для удобства понимания на данный момент используется в качестве кнопок branch(отделение) и floor(Этаж), но в целом можно задать все что угодно.

Зайдя на страницу справочника у вас будет показана левая группа, после выбора отделения, в центре появится вторая группа с этажами которые находятся внутри отделения. После выбора этажа вам дадут номера телефонов которые находятся в выбранном отделение, на выбранном этаже.

Так же есть поиск в 2 режимах. Поиск по все базе вне зависимости от выбранного отделения, и поиск внутри выбранного отделения.

Предельно простой функционал для пользователя.

На этом часть юзера все. По части админа все сложнее. Для начала я не захотел делать доступ к админке через бд, логин и пас я просто написал в переменные, по этому аккаунт всего один. Сделано это не из-за лени, просто я правда не видел смысла т.к проект не большой и не коммерческий.


Если кто-то будет пользоваться этим справочником то доступ

Адресс админки: домен/panel/admin

login: 'admin',

password: 'wwqe1rws'

Меняется в файле passport.js



Тут перед нами разворачивается 2 кнопки.

Первая - просто добавление кнопок и людей.

Вторая более запутанная для настройки связей и удаления записей.

Первым делом на кнопки Edit вас встретит поиск, при помощи него вы ищите человека с которым хотите делать манипуляции.

Вторая кнопка Assign all. В ней вы настраиваете связи групп кнопок. Т.е в данном случае какие этажи должны быть в отделениях.  Тут же и удаляется эта связь.

Следующая кнопка Edit button, тут вы переименовываете кнопки.

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

Последняя кнопка assign, она предназначена для  того, что бы настроить связи у записи.

Для начала обратим внимание на поле link main - тут вы указываете какому отделению принадлежит этот контакт, таких полей 2. В Одном вы можете порвать связь, во втором вы добавляете новую.

В поле link main data вы указываете этаж у связки записей "отделение-контакт". В поле link second вы можете порвать эту связь.

Т.е последовательность добавления такая

На вкладке add добавляем кнопки и записи, идем в edit, жмем Assign all и настраиваем этажи для отделений. Затем ищем запись, жмем assign у нужной и присваиваем ее к отделению, затем указываем на каком этаже внутри этого отделения нужно выводить запись.

Админка получилась запутанная но все же все достаточно просто.

Я понимаю, что скорее всего это Сизифов труд т.к в компаниях редко ведут актуальный справочник но нам понадобился.

В общем я открыт для критики и советам

Код справочника https://github.com/ura2rist/Open-Phone-Book

Так же если есть какие-то вопросы или т.п то можно написать в телегу @urifcof там я тоже сразу окажу поддержку)

Показать полностью 7

Бойтесь кисок

Многие слышали по синдром Капгра. Если коротко это синдром подмены, больной думает что его друзей или родственников заменили на двойников или же наоборот, совершенно незнакомых людей принимает за знакомых. Есть что-то вроде шуточного похожего созвучного заболевания, называется синдром Кэтгра(От слова cat), или же синдром подмены кота.

Один из больных этим синдромом считал, что за ним по всюду следят ФСБ, в какой-то момент все дошло до того, что он сказал жене "Не доверяй коту", ему казалось, что его любимого котика подменили спецслужбы, для того что бы следить за ним.

Так что не доверяйте котикам, у них слишком много тайн ><

Бойтесь кисок
18

Как Гарри Поттер учит нас избежать " смерти вуду"

Смерть вуду - или же смерть от страха/стресса/тревоги. Можно сказать, что это смерть людей которые верят в магию, колдовство и т.п. Например если подопытный верит в силу шаманов и какой-то шаман "кастанет проклятие", человек начнет паниковать и умрет. Есть куча примеров когда члены племени умирали после того как шаман наносил удар своими чарами. Человек начинает бояться, плохо есть, спать и т.д, все это пагубно сказывается на его здоровье и он умирает. Иначе говоря смерть вуду в народе имеет определение "умер от страха". Конечно все это можно отнести не только к чему-то сверхъестественному, подобные случаи встречаются и в повседневной жизни, например когда пациенту говорят, что он болен и после приема у врача, у человека резко ухудшается состояние, это отнюдь не всегда связанно с болезнью напрямую, очень часто бывает, что люди сами себя накручивают.

Казалось бы, а причем тут Гарри Поттер? А все просто, вселенная Поттера учит нас тому, что смех действительно продлевает жизнь в каком-то смысле. Помните момент с Боггартом в фильме "Гарри Поттер и узник Азкабана" когда Римус Люпин учил ребят заклинанию "ридикулус". Для тех кто не в курсе "боггарт" это что-то вроде призрака который принимает форму ваших страхов. Так вот, что бы победить боггарта(ваш страх), вам нужно применить заклинание ридикулус представив ваш страх в комичном образе. Нам как бы дают понять, если высмеивать то что вас пугает, то это не будет так пагубно влиять на организм. Казалось мысль на поверхности, но пока я не узнаю про термин "Смерть вуду", даже не обращал на это внимание.

Показать полностью
164

Синдром Котара или почему с ним так сложно бороться

Тут уже был пост на тему этого синдрома, но там особо не описывалась самая забавная часть этого синдрома. Больные ну очень любят коверкать доводы и аргументы врачей, переворачивать факты.

Пример такой.

Пациент считавший себя мертвым, был убежден что у мертвецов не течет кровь. Врач сделал ход конем, он сделал небольшой прокол на пальце пациента, показав ему что у него течет кровь, причем нормальная(не густая, какая должна быть при отсутствии циркуляции крови в организме). И вместо того, что бы прийти к выводу что он все таки живой, пациент ему ответил "Ну значит все таки у мертвецов кровь течет" :D

4

Ошибка выжившего или "как перестать верить в чушь"

Не знаю насколько уместен будет этот пост на данном сайте, но может кому-то будет интересно.

Сразу оговорюсь, я не являюсь атеистом(возможно являюсь аутистом, но это другая история), мои взгляды в вопросах религии близки к агностицизму и скептицизму.

Ввиду своей упрямости, я часто веду скажем так "споры" с близкими людьми по поводу веры, в те моменты когда эта вера заходит на мои интересы. Нет, я не пытаюсь навязать свое мнение, не пытаюсь насмехаться над верой, просто когда мне говорят "ты просто ДОЛЖЕН в это верить" или "чудеса случаются", это некий триггер для меня, люди подобными высказываниями как бы дают мне право начать оспаривать их позицию.

Все бы ничего, но как правило в этих спорах выдвигается аргумент вроде "вот у меня есть друг/родственник который сильно болел, начал молиться и выздоровел, хоть врачи уже пророчили смерть". Как правило у меня в принципе происходит ступор, ведь люди находят ответ в каком-то мистическом вмешательстве, вместо того что бы обратиться к логике.

Есть несколько логичных ответов которые мне приходят на ум:

1)Начнем с того, что организм людей весьма интересен и так бывает, что люди порой побеждают смертельные болезни, особенно если учесть постоянное развитие медицины. Так почему тогда оппоненты отставляют работу врачей на второй план? Почему они полностью исключают то, что возможно именно врач и является причиной выздоровления?

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

3)Если уж приборы и аппаратура дает сбой, то почему не может дать "сбой" человек? Да, в первом пункте я говорил о том, что это врачи "вытаскивают" этих людей с того света, но может быть и обратная сторона. Был у меня случай, есть знакомый N, так вот у него нашли рак кожи, казалось бы - страшный диагноз, с раком не шутят, но когда начали делать новые анализы, другие врачи сказали что это не рак, а доброкачественная опухоль, которую просто нужно вырезать. Чудо? Нет, просто ошибка первого врача ввиду малого опыта.

Это те причины над которыми я даже не задумывался, они взяты за стандарт, самое простое и логичное объяснение.

Я немного отошел от темы. Это было небольшое предисловие, за которым последует вся суть поста, которая окажется еще короче.

Суть в том, что контр-аргументом в таких спорах является систематическая ошибка выжившего или ошибка выжившего. Есть условно группа из 10 человек, которые умирали от тяжелой болезни. Все 10 человек начали молиться, по истечению условного месяца умерло 8 человек, при этом 2 остались живы и исцелились. Само собой эти 2 начнут всем рассказывать о том, что им помогла вера, о том что "вот я начал молиться и меня это спасло", при этом 8 бедолаг уже не смогут вам рассказать, что молитвы то особо не работают. Делая вывод по только по выжившей группе это и есть та самая "ошибка выжившего". Конечно это термин относится не только к вопросу который затрагиваю я, но другие вопросы я затрагивать не буду.

Если заглянуть в википедию, то формулировка выгляди так

"Системати́ческая оши́бка вы́жившего (англ. survivorship bias) — разновидность систематической ошибки отбора, когда по одной группе («выжившим») есть много данных, а по другой («погибшим») — практически нет, в результате чего исследователи пытаются искать общие черты среди «выживших» и упускают из вида, что не менее важная информация скрывается среди «погибших»."

В общем это пожалуй конец поста, просто хотел донести мысль, что "я молился и излечился" не является аргументом, если вы используете подобное то советую пересмотреть вашу обойму аргументов т.к этот патрон явно холостой и заденет оппонента только звуком. А тем кто изначально не воспринимал подобные высказывания, я думаю тоже будет полезно знать как это называется, по крайней мере сказать "ошибка выжившего" куда быстрее, чем объяснять этот термин своими словами.

Перед прощанием хочу повторить, я не являюсь атеистом, я уважаю ваши взгляды и веру, просто если уж хотите ее отстаивать то найдите аргументы сильнее, а не используйте это. Надеюсь всем понравилось(ну или хоть кому-то), возможно для кого-то я принес пользу. Оставайтесь такими же классными, всем пока! =)

Ошибка выжившего или &quot;как перестать верить в чушь&quot;
Показать полностью 1
Отличная работа, все прочитано!