Дата  Запланированые курсы
30.07 Рисование на компьютере при помощи планшета (базовый курс)
30.07 Adobe After Effects. Создание анимации и эффектов
13.08 Средства векторной графики. Adobe Illustrator
27.08 Поисковая оптимизация (SEO)
03.09 Введение в тестирование программного обеспечения
10.09 DEV-J-MP+. Расширенная комплексная программа "Разработчик прикладного программного обеспечения (Язык Java)"
10.09 DEV-J10. Программирование на платформе Java. Введение в язык Java
10.09 MOC-20740B. Установка, Хранение и Вычисления с Windows Server 2016
10.09 Поисковая оптимизация (SEO) для профессионалов
10.09 DEV-J-CP. Комплексная программа "Разработчик прикладного программного обеспечения (Язык Java)"
10.09 Поисковая оптимизация (SEO) для профессионалов
10.09 Компьютерное проектирование в системе AutoCAD (базовый курс)
10.09 MOC-10985. Введение в базы данных SQL
10.09 Основы создания веб-сайтов. Adobe Dreamweaver
10.09 DEV-C22. Стандарт С++11, С++14, С++17 для прикладного программирования
17.09 MOC-20761. Создание запросов данных при помощи Transact-SQL
17.09 DEV-J20. Программирование на платформе Java. Стандартные пакеты
17.09 Средства растровой графики. Adobe Photoshop
24.09 DEV-J30. Программирование на платформе Java. Разработка многоуровневых приложений
24.09 MOC-20741B. Сетевая инфраструктура на основе Windows Server 2016
01.10 MOC-20762. Разработка баз данных SQL
01.10 Компьютерное проектирование в системе AutoCAD (базовый курс)
01.10 Профессиональная верстка сайтов. HTML5 и CSS3
01.10 DEV-С-CP+. Расширенная комплексная программа «Разработчик прикладного программного обеспечения (Языки С и C++)»
01.10 DEV-C10. Процедурное программирование. Языки С/C++
01.10 Основы алгоритмизации и программирования (Группа I)
01.10 Основы алгоритмизации и программирования (Группа II)
02.10 DEV-J-MP+. Расширенная комплексная программа "Разработчик прикладного программного обеспечения (Язык Java)"
02.10 DEV-J10. Программирование на платформе Java. Введение в язык Java
08.10 MOC-20764. Администрирование инфраструктуры баз данных SQL
08.10 MOC-20742B. Инфраструктура идентификации на основе Windows Server 2016
08.10 DEV-J60. Технологии разработки корпоративных приложений на платформе Java Enterprise Edition (Java EE)
08.10 Введение в тестирование программного обеспечения
08.10 QA-QAAB. Автоматизация тестирования ПО (Базовый курс)
15.10 Компьютерное проектирование в системе AutoCAD (профессиональный курс)
15.10 Средства векторной графики. Adobe Illustrator
15.10 DEV-OCPJP. Подготовка к сдаче сертификационных экзаменов серии Oracle Certified Professional Java Programmer
22.10 MOC-20744A. Безопасность инфраструктуры средствами Windows Server 2016
22.10 Введение в тестирование программного обеспечения
22.10 MOC-10987. Настройка производительности и оптимизация баз данных SQL
22.10 Основы создания веб-сайтов. Adobe Dreamweaver
24.10 NET-DLINKSW-LAB. Технологии коммутации современных сетей Ethernet. Лабораторный практикум
25.10 DEV-J20. Программирование на платформе Java. Стандартные пакеты
29.10 MOC-10961B. Автоматизация администрирования с Windows PowerShell
07.11 DEV-C20. Объектно-ориентированное программирование. Базовый уровень. Язык С++
12.11 Профессиональная верстка сайтов. HTML5 и CSS3
12.11 Компьютерное проектирование в системе AutoCAD (базовый курс)
19.11 DEV-J30. Программирование на платформе Java. Разработка многоуровневых приложений
26.11 Средства растровой графики. Adobe Photoshop
26.11 Поисковая оптимизация (SEO)
03.12 Компьютерное проектирование в системе AutoCAD (базовый курс)
03.12 DEV-C21. Объектно-ориентированное программирование. Углубленное изучение. Язык С++
10.12 Основы создания веб-сайтов. Adobe Dreamweaver
10.12 Поисковая оптимизация (SEO) для профессионалов
10.12 Средства векторной графики. Adobe Illustrator
17.12 Компьютерное проектирование в системе AutoCAD (профессиональный курс)
09.01 DEV-C22. Стандарт С++11, С++14, С++17 для прикладного программирования
14.01 DEV-OCPJP. Подготовка к сдаче сертификационных экзаменов серии Oracle Certified Professional Java Programmer
04.02 DEV-QT10. Прикладное программирование на С++ с использованием Qt. Базовый уровень
11.02 DEV-J60. Технологии разработки корпоративных приложений на платформе Java Enterprise Edition (Java EE)
11.03 Введение в тестирование программного обеспечения
11.03 Введение в тестирование программного обеспечения
Открыт набор на осенний семестр в Академию информатики для школьников Открыт набор на осенний семестр на программы второго высшего образования
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Экспортирование расписания с сайта
Тур Антон
#1 Оставлено : 9 декабря 2006 г. 0:02:29(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 26.09.2006(UTC)
Сообщений: 104
Баллов: 312

Не так давно открыл для себя удобную программу - календарик Mozilla Sunbird. Здорово помогает планировать время. Естественно, в свой календарь я каждую неделю вручную ввожу список занятий на ФПС.
И вдруг меня осенило: почему бы не добавить на сайт возможность экспортирования расписания в формате ics (который использует Mozilla Sunbird)? Благо, в программе предусмотрена возможность подключать "удалённые" календари из сети.
По-моему, получилось бы довольно мило.
Естественно, я отдаю себе отчёт в том, что заниматься этим никто не будет, да и пользователей Sunbird'а наберутся единицы. Но, согласитесь, концепт интересный.
Такую задачку можно было бы подкинуть изучающим PHP или ASP. [:D]
Если кому интересно, ссылки по теме:
www.mozilla.org/projects/calendar/sunbird/ - Страничка Sunbird на mozilla.org.
www.prism.gatech....7v/iCalendarFormat.html - Краткое описание формата ICS.
www.ietf.org/rfc/rfc2445.txt - полное описание спецификации iCalendar.
en.wikipedia.org/wiki/ICalendar - хорошая статья в Википедии.

Помимо Mozilla Sunbird формат ICS понимают 30 Boxes, AiAi, Active Desktop Calendar, Apple's iCal application, Darwin Calendar Server, Contactizer and iPod, Chandler, Drupal with its event module, eventSherpa, FirstClass, Google Calendar, Jalios JCMS, KOrganizer, Kronolith, Lotus Notes, Lovento, почивший Mozilla Calendar, Lightning (примочка к Mozilla Thunderbird), Mulberry, Plum Canary Chirp, Novell Evolution, Nuvvo, Rainlendar, ScheduleWorld, Simple Groupware, TimeTrade's enterprise scheduling server, Upcoming.org, WebCalendar, Windows Calendar, Ximian Evolution, Zimbra Collaboration Suite, Microsoft Outlook.
Реклама
Dimitry.Ketov
#2 Оставлено : 9 декабря 2006 г. 18:51:22(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

xCal она понимает?
Тур Антон
#3 Оставлено : 9 декабря 2006 г. 23:50:02(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 26.09.2006(UTC)
Сообщений: 104
Баллов: 312

На сайте производителя об этом, к сожалению, не говорится. В Википедии сказано, что xCal - это XML-compliant representation of the iCalendar standard. И действительно, если посмотреть примеры форматов xCal и iCalendar на www.in...l.html, можно заметить, что структуры их очень схожи.
Кроме того, удалось узнать, что Mozilla Calendar is not able to subscribe to xCal (calsch archive) data. SunBird - это продолжение Mozilla Calendar, поэтому, решив, что поддержка xCal, возможно, появилась, я попытался подключить к своему календарю файл www.in...al.xcs. Mozilla SunBird и так не была особо расторопной, а тут вообще ушла в глубокие раздумья, но в итоге всё же выдала сообщение об ошибке.
Так что с большой долей уверенности можно говорить о том, что SunBird не понимает xCal. Может быть, проблему можно решить при использовании какого-нибудь плагина, но о существовании оного мне не известно.
А вообще при подключении удалённого календаря предлагается выбрать либо iCalendar, либо CalDAV.
Dimitry.Ketov
#4 Оставлено : 10 декабря 2006 г. 21:05:51(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

Антон, если вы освоите XSLT (www.w3schools.com/xsl/default.asp) [что в современном мире для программиста будет только плюсом], то на основе XML расписания сможете получить iCal, который можно будет публиковать на avalon.ru
Тур Антон
#5 Оставлено : 13 декабря 2006 г. 4:09:35(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 26.09.2006(UTC)
Сообщений: 104
Баллов: 312

Дмитрий Владимирович, спасибо за совет. Наверно, попытаюсь ознакомиться с новой технологией во время зимних праздников. Так что, боюсь, воспользоваться календариком удастся не очень скоро. [:)]
Хотел посмотреть в Озоне книжки по XSLT. На русском языке их не так много, они довольно старые и... они закончились. А у оригинальных англоязычных изданий цены кусаются.
Dimitry.Ketov
#6 Оставлено : 13 декабря 2006 г. 16:55:47(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">quote:<hr height="1" noshade id="quote"><i>Originally posted by Тур Антон</i>
<br />Дмитрий Владимирович, спасибо за совет. Наверно, попытаюсь ознакомиться с новой технологией во время зимних праздников. Так что, боюсь, воспользоваться календариком удастся не очень скоро. [:)]
Хотел посмотреть в Озоне книжки по XSLT. На русском языке их не так много, они довольно старые и... они закончились. А у оригинальных англоязычных изданий цены кусаются.
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">
Советую начать отсюда www.books.ru/shop/books/11178 не смотря на "старость", хехе.
Все отсальное найдете в интернете [:)] на www.w3schools.com/xsl/default.asp
Lucky
#7 Оставлено : 13 декабря 2006 г. 18:27:54(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

Этой книги www.books.ru/shop/books/11178 уже давно нет в продаже ... Дмитрий, может знаете ссылку на электронный вариант этой книги? Гугол и электронные библиотеки не помогли.
Тур Антон
#8 Оставлено : 13 декабря 2006 г. 19:52:02(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 26.09.2006(UTC)
Сообщений: 104
Баллов: 312

На исходниках.ру продают DVD-диски, набитые компьютерной литературой. www.shop.ishodniki.ru/shop.php?to=dvd1#3 1 диск - 400 рублей, 4 диска - 600.
С одной стороны, предложение, вроде бы, интересное, поскольку цена четырёх дисков, на которых записаны сотни книг, сопоставима со стоимостью одной толстой книжки.
С другой же стороны, неизвестно в каком там всё это качестве, да и перспектива читать книгу с монитора не особо радует.
Хотя... если уж кто-то книжку отсканировал и даже записал на диск, можно предположить, что где-нибудь в Интернете она должна была всплыть. Надо лучше искать. [:)]
К тому же на www.unixreview.co...989/ur0312l/ur0312l.htm сказано, что на английском уже есть второе издание. Так что, может быть, скоро оно доберётся и до нас.
Dimitry.Ketov
#9 Оставлено : 13 декабря 2006 г. 20:43:36(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

Тому, кто возьмется писать конвертер - задарю эту книжку [;)]
Lucky
#10 Оставлено : 13 декабря 2006 г. 21:01:42(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

Дмитрий, а зачем он вам нужен?
ICS это даже не XML = это мертвый язык
Dimitry.Ketov
#11 Оставлено : 13 декабря 2006 г. 21:32:41(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">quote:<hr height="1" noshade id="quote"><i>Originally posted by Lucky</i>
<br />Дмитрий, а зачем он вам нужен?
ICS это даже не XML = это мертвый язык
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">

Он Антону нужен, и нам не помешает.
А на счет мертвости - дык альтернативы-то нет...
Lucky
#12 Оставлено : 14 декабря 2006 г. 14:56:42(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

Чем дальше в лес тем больше дров ...
Дмитрий, а зачем конвертор? Ведь можно создавать файлы с определенным форматом, а те кто захочет может использовать их.

Антон, есть ли файл который вам удалось открыть sunbird'ом? Пытаюсь открыть пример отсуда www.innerjoin.org...import-export-xCal.html но открывается только календарь
Dimitry.Ketov
#13 Оставлено : 14 декабря 2006 г. 16:07:40(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">quote:<hr height="1" noshade id="quote"><i>Originally posted by Lucky</i>
<br />Чем дальше в лес тем больше дров ...
Дмитрий, а зачем конвертор? Ведь можно создавать файлы с определенным форматом, а те кто захочет может использовать их.
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">
Можно создавать файлы с определенным форматом..... например конвертером из внутреннего представления расписания из XML в ICS.
Дело в том что внутренння начинка сайта сделана на DB-&gt;XML/XSLT-&gt;HTML, нужно всего-лишь DB-&gt;XML/XSLT-&gt;ICS.
Lucky
#14 Оставлено : 14 декабря 2006 г. 16:43:59(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

вот такой xml
Код:
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;iCalendar&gt;
    &lt;vcalendar&gt;
        &lt;prodid&gt;-//Mozilla.org/NONSGML Mozilla Calendar V 1.0 //EN&lt;/prodid&gt;
        &lt;version&gt;2.0&lt;/version&gt;
        &lt;vevent&gt;
            &lt;uid&gt;200201012-8560@somewhere.net&lt;/uid&gt;
            &lt;summary&gt;some test&lt;/summary&gt;
            &lt;dtstamp&gt;20060629T220000Z&lt;/dtstamp&gt;
            &lt;dtstart value="DATE"&gt;20061214&lt;/dtstart&gt;
            &lt;description&gt;some test description&lt;/description&gt;
            &lt;url&gt;http://www.somewhere.net/sometestpage.html&lt;/url&gt;
        &lt;/vevent&gt;
    &lt;/vcalendar&gt;
&lt;/iCalendar&gt;

преобразую при помощи
Код:
&lt;?xml version='1.0'?&gt;
&lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt;
&lt;xsl:output method="text" /&gt;
&lt;xsl:template match="iCalendar"&gt;
    &lt;xsl:text&gt;BEGIN:VCALENDAR
&lt;/xsl:text&gt;

    &lt;xsl:text&gt;VERSION:&lt;/xsl:text&gt;&lt;xsl:value-of select="vcalendar/version" /&gt;
    &lt;xsl:text&gt;PRODID:&lt;/xsl:text&gt;&lt;xsl:value-of select="vcalendar/prodid" /&gt;
    
    &lt;xsl:apply-templates select="vcalendar/vevent" /&gt;
    
    &lt;xsl:text&gt;END:VCALENDAR&lt;/xsl:text&gt;
&lt;/xsl:template&gt;

&lt;xsl:template match="vevent"&gt;
    &lt;xsl:text&gt;BEGIN:VEVENT&lt;/xsl:text&gt;
    &lt;xsl:text&gt;UID:&lt;/xsl:text&gt;&lt;xsl:value-of select="uid" /&gt;
    &lt;xsl:text&gt;DTSTART;VALUE=DATE:&lt;/xsl:text&gt;&lt;xsl:value-of select="dtstart" /&gt;
    &lt;xsl:text&gt;DTSTAMP;VALUE=DATE:&lt;/xsl:text&gt;&lt;xsl:value-of select="dtstamp" /&gt;
    &lt;xsl:text&gt;URL:&lt;/xsl:text&gt;&lt;xsl:value-of select="url" /&gt;
    &lt;xsl:text&gt;SUMMARY:&lt;/xsl:text&gt;&lt;xsl:value-of select="summary" /&gt;
    &lt;xsl:text&gt;DESCRIPTION:&lt;/xsl:text&gt;&lt;xsl:value-of select="description" /&gt;
    &lt;xsl:text&gt;END:VEVENT&lt;/xsl:text&gt;
&lt;/xsl:template&gt;

&lt;/xsl:stylesheet&gt;


т.е. получаю
Код:

BEGIN:VCALENDAR#155
VERSION:2.0PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V 1.0 //ENBEGIN:VEVENTUID:200201012-8560@somewhere.netDTSTART;VALUE=DATE:20061214DTSTAMP;
VALUE=DATE:20060629T220000ZURL:http://www.somewhere.net/sometestpage.htmlSUMMARY:some testDESCRIPTION:some test descriptionEND:VEVENTEND:VCALENDAR

Обратите внимание, как делается перенос строки(сделано один раз) - закрывающий элемент xsl:text переносится на другую строку(как сделать это лучше пока не понимаю)
Не могу понять как такой формат глотает sunbird - естественно подставляю нормальный файл <b>1.ics</b>
Код:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//innerjoin.org//NONSGML Innerjoin Events Publisher V1.0//EN
BEGIN:VEVENT
UID:200201012-8560@innerjoin.org
DTSTART;VALUE=DATE:20061214
DTSTAMP;VALUE=DATE:20060630
URL:
http://www.somewhere.net/sometestpage.html
SUMMARY:
some test summary
DESCRIPTION:
some test description
END:VEVENT
END:VCALENDER

Dimitry.Ketov
#15 Оставлено : 14 декабря 2006 г. 17:21:35(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

Удобнее объявить сущность nl
Код:

&lt;!DOCTYPE xsl:stylesheet [&lt;!ENTITY nl "#xd;#xa;"&gt;]&gt;

и использовать для форматирования.
Lucky
#16 Оставлено : 14 декабря 2006 г. 18:30:30(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

мысль про DOCTYPE пришла мне сразу, но результата нет
Код:
&lt;xsl:text&gt;BEGIN:VCALENDAR&lt;/xsl:text&gt;&nl;
получаем
BEGIN:VCALENDAR#xd;#xa;
Lucky
#17 Оставлено : 14 декабря 2006 г. 18:50:46(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

Дмитрий, может стоит в форуме завести раздел посвященный XML?
Lucky
#18 Оставлено : 14 декабря 2006 г. 22:07:25(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

А вот объясните почему!!! надо писать & #xa0;(пробел убрать)
Код:
&lt;xsl:text&gt;BEGIN:VCALENDAR&lt;/xsl:text&gt;& #xa0;
и это будет работать?

Потому что это сущность, а не пробельный симывол [;)]
Lucky
#19 Оставлено : 15 декабря 2006 г. 13:37:10(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 27.09.2003(UTC)
Сообщений: 219
Баллов: 657

<blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">quote:<hr height="1" noshade id="quote"><i>Originally posted by Lucky</i>
<br />Потому что это сущность, а не пробельный симывол [;)]
<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote"> класно [:D]
Неа. Это не сущность, а просто код символа.
Если написать & #xd;& #xa; , то ничего не произойдет - не будет переноса. Скорее всего причина в том, что обозначает этот символ(& #xa0; неразрывный пробел), т.е. он как бы стягивает к себе текст слева и перевод строки справа.
Dimitry.Ketov
#20 Оставлено : 15 декабря 2006 г. 15:14:24(UTC)
Ранг: Активный Участник

Группы: Зарегистрированные пользователи
Зарегистрирован: 01.12.2002(UTC)
Сообщений: 3,382
Баллов: 10,146
Откуда: Russia Санкт-Петербург

[:)]

Спешу огорчить, но это сущности, именованая или две символьных.
Хоть по значению это и перевод строки - xml парсер будет использовать ее литеральное значение, в отличие от пробелов и переводов строк, которые парсером будут восприняты как спецвльные симыолы - разделители.
Хоть поверте, хоть проверте.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.