µToDo µJaxed

µToDo это усовершенствованный microToDo, так понравившийся мне однажды. Идея списка дел в виде одного файла по-прежнему присутствует, но мне захотелось сделать некоторые усовершенствования. С µToDo µJaxed может одновременно работать несколько пользователей, данные хранятся на сервере, усовершенствован интерфейс.

Начало проекта:
02/02/2010

Текущая версия:
1.2

Создатель виджета microTodo руководствовался идеей сделать самодостаточный файл, который даёт возможность хранить список задач и отображать время их выполнения. Для работы со списком используется один единственный HTML файл, а данные хранятся в Cookies. Главное достоинство виджета - подходит любой сервер, не нужны никакие базы данных и настройки. Однако, хотелось бы развить идею, пойти дальше.

Моим развитием идеи, наверное, никого не удивить - я захотел сделать список сортируемым и чтобы с ним могло работать несколько человек одновременно. Из прежнего microTodo остались рожки да ножки, но он обзавёлся всем этим функционалом и по-прежнему состоит из одного файла.

  • Для спецэффектов и AJAX я использовал библиотеки jQuery и jQueryUI подгружаемые с сервера Google Code, чтобы не засорять файл лишним кодом.
  • При запросах не осуществляется каких-то адских проверок и чисток, оставим идею неприкосновенной - простое решение простой задачи.
  • Чтобы решение не выглядело винигретом из HTML, Javascript и PHP я разделил проект на три секции:
    1. создал легкий класс, манипулирующий списком;
    2. ниже идёт инициализация класса и обработка запросов;
    3. в самом конце идёт статический код страницы если никаких команд не подавалось;

Получилось практически разделение на MVC, хе хе.

В версии 1.1

  • Добавилась сортировка списка
  • Автосохранение формы при вставке текста Ctrl+V
  • Возможность вставлять множество дел в список за один раз.

В версии 1.2

  • Усовершенствован код класса
  • Добавлены комментарии к коду
  • Большой проблемой оказалась рассинхронизация данных при удалении элемента в одном клиенте и сортировке в другом, как мне кажется эту проблему я решил.

Демонстрация

Исходный код

BlackCrystalЛаборатория → µToDo µJaxed

sfMarkitupPlugin

fbHidePoll

Markdown Preview API

sfDoctrineCultureFlagsPlugin

vkInviter

Rame

Classes

µToDo µJaxed

Salabim

Óрум

Joker IRC bot

Правила и соглашение

1999-2009 BlackCrystal ¬|г Clan.    2007-2012 BlackCrystal Ltd.    2011-2012 BlackCrystal Club.