Разработка сайта для Вашего бизнеса. Веб дизайн. Дизайн логотипа, фирменного стиля, рекламная фотография . Комплексный рекламный креатив.

Ralex. We do the work.
На рынке с 1999го года. Средняя ценовая категория. Ориентация на эффективность решений.
Ознакомтесь с нашим портфолио
Узнайте больше о услугах
Свяжитесь с нами:
E-mail: [email protected]
Tel: (044) 587 - 84 - 78
Custom web design & дизайн и разработка сайта "под ключ"
Креативный, эффективный дизайн. Система управления сайтом (СУС).
Custom flexible разработка систем электронной коммерции
Система e-commerce разрабатывается под индивидуальные потребности. Гибкая функциональность.
Search Engine Optimzation & оптимизация под поисковые системы (SEO)
Постоянная оптимизация и мониторинг сайта в поисковых системах. Достигаем результата быстро и эффективно
Custom logo design & дизайн логотипа и фирменного стиля
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.
профессиональная рекламная фотография
креативно, смело, качественно
Custom logo design & рекламный креатив. дизайн рекламы
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.

Відображення подій Google Calendar на вашому PHP Web-сайті за допомогою XPath

  1. Google Calendar і API даних Google
  2. Фид Google Calendar
  3. Як зробити фид Google Calendar загальнодоступним
  4. Малюнок 1. спадаючі меню Google Calendar для обраного календаря
  5. Малюнок 2. Зміна видимості календаря
  6. Перевірка фида Google Calendar
  7. Лістинг 1. Приклад запису про подію фида Google Calendar: ID і мітки часу
  8. Лістинг 2. Приклад запису про подію фида Google Calendar: заголовок, автор і статус
  9. Таблиця 1. Можливі значення для елемента gd: eventStatus

Наша взаимовыгодная связь https://banwar.org/

XPath і SimpleXML забезпечують оптимальний баланс між читабельністю і багатослівністю в API XML-аналізу

Кілька років тому, працюючи позаштатним Web-розробником, я створив Web-портал на PHP для спільноти власників і шанувальників певної моделі автомобіля (зазвичай такі спільноти називаються автоклубами, і вони дуже популярні там, де я живу). За кілька років до зустрічі зі мною деякі керівники клубу вивчили основи Web-дизайну та самостійно створили Web-сайт. Згодом сайт розрісся і на ньому виникла велика кількість спеціальних сторінок з інформацією про календарні події, причому багато хто з них застаріли. Оскільки головною метою сайту було інформування широкої громадськості та членів спільноти про заходи, ці сторінки були переповнені інформацією про календарні події.

Згодом ці розрізнені копії календаря подій спільноти вийшли з-під контролю. На деяких сторінках в бічних панелях містилися анонси давно минулих подій. Навіть при нормальному управлінні і ефективному Web-дизайні підтримка декількох копій даних календаря подій на окремих сторінках є витратним за часом і схильним до помилок процесом. Замість того щоб Web-сайт працював на автоклуб, виявилося, що автоклуб працює на свій Web-сайт. Вони зв'язалися зі мною в надії, що я зможу показати кращий шлях.

Клуб хотів мати сайт з форумом, на якому члени клубу могли б обговорювати свої улюблені автомобілі, і головною сторінкою новин, на якій розміщувалися б повідомлення про останні події та оголошення. На цій сторінці новин вони хотіли б інформувати зростаюче співтовариство про такі події, як зборів, спільні поїздки на узбережжі і в сільську місцевість, а також загальні зустрічі членів клубу, на яких обговорюються внески і бюджет. Найголовніше - керівники сайту не хотіли підтримувати десяток або більше копій календаря подій. Вони хотіли вводити інформацію в календар подій в одному місці і мати можливість звертатися до цієї інформації з будь-якого місця сайту.

Google Calendar і API даних Google

Таке рішення надають додатки інтерактивного планування (наприклад, Google Calendar). Централізуя відображення і управління подіями, користувачі Google Calendar можуть спільно використовувати і підтримувати дані подій на одному сайті, що усуває один з безлічі можливих джерел помилок процесу організації подій. Мої друзі можуть відвідувати інтерактивний календар, щоб бути в курсі майбутніх подій і дій, не плутаючись в застарілої інформації на розрізнених Web-сторінках. Мабуть, інтерактивні додатки планування є ідеальним рішенням.

Під час розробки Web-сайту за допомогою системи керування вмістом Drupal (див. Розділ " ресурси ") Я рекомендував керівникам клубу використовувати Google Calendar для підтримки календаря подій. Спочатку ідея прижилася, і продуктивність значно підвищилася, оскільки для поновлення створених мною бічних панелей легко було використовувати адміністративний інтерфейс Drupal. Але з часом успіхи клубу привели до зростання числа подій, які вимагали повідомлення , і редагування бічній панелі подій з простої процедури перетворилося в набридливу рутинну роботу.

Вихід з цього скрутного становища забезпечив API даних Google і його можливості доступу до даних подій Google. API даних Google надає реалізацію протоколу Atom Publishing Protocol (APP) - API Web-сервісів для читання та оновлення різних типів документів і інформації. Існують також інтеграційні API сторонніх розробників для Microsoft®.NET і мов програмування Java ™, Python і PHP, які інкапсулюють більшу частину функціональності API даних Google в наборі об'єктно-орієнтованих класів-оболонок (wrapper classes).

Провівши деякі дослідження, я зміг доповнити Drupal-сайт автоклубу постійно оновлюваною бічною панеллю "Події", в якій відображаються дані про самих останніх календарних події з облікового запису Google Calendar.

Фид Google Calendar

API даних Google надає багато Atom-фідів (feed), що містять документи і інформацію для значної частини Web-сервісів, пропонованих Google. Google Calendar не є винятком, надаючи кілька фідів, інкапсулюючих основну частину даних Google Calendar. Є фіди з HTTP-аутентифікації і загальнодоступні. Для вилучення і взаємодії з аутентіфіціруемимі фідамі HTTP-клієнт повинен надати інформацію для аутентифікації разом з GET-запитом HTTP. Аутентіфіціруемий фид може також оновлювати обліковий запис Google Calendar за допомогою POST-запитів HTTP. HTTP-клієнти, що використовують аутентіфіціруемие фіди, можуть додавати і видаляти події, підписуватися і скасовувати підписку на календарі, створювати і видаляти календарі з облікового запису Google.

Google Calendar API надає фіди для доступу до всіх індивідуальним календарів, до яких має доступ користувач з графічного призначеного для користувача інтерфейсу Google Calendar. Сюди відносяться календарі, що належать користувачеві, календарі, що належать кому-небудь ще, але на які користувач підписаний, і календарі, які користувач імпортував в режимі "тільки читання". Ці календарі мають свої власні аутентіфіціруемие приватні (private) і загальнодоступні (public) фіди подій, в яких перераховуються індивідуальні події в календарі. У даній статті увага концентрується на загальнодоступних фідах подій.

Як зробити фид Google Calendar загальнодоступним

Для створення загальнодоступного фида подій календаря Google Calendar, яких може бути кілька для одного облікового запису, необхідно увійти в Google Calendar, вибрати Вас календар для обробки і натиснути маленьку стрілку вниз біля назви календаря. Після натискання цієї стрілки поруч з назвою фида з'являється меню. Виберіть пункт Calendar Settings, обведений на малюнку 1.

Малюнок 1. спадаючі меню Google Calendar для обраного календаря
XPath і SimpleXML забезпечують оптимальний баланс між читабельністю і багатослівністю в API XML-аналізу   Кілька років тому, працюючи позаштатним Web-розробником, я створив Web-портал на PHP для спільноти власників і шанувальників певної моделі автомобіля (зазвичай такі спільноти називаються автоклубами, і вони дуже популярні там, де я живу)

Потім додаток Google Calendar відкриває сторінку, на якій можна вибрати різні параметри календаря, наприклад, часовий пояс для подій і назва календаря. Важливий параметр загальнодоступних фідів - ознака того, чи є сам календар загальнодоступним чи передачі. Щоб зробити календар спільно використовуваних і доступним через загальнодоступний фид подій, натисніть посилання Change sharing settings, показану на малюнку 2.

Малюнок 2. Зміна видимості календаря

На сторінці відобразиться вкладка Share this calendar, в якій можна вибрати варіант Share all information on this calendar with everyone. Потім відобразиться ряд спливаючих діалогових вікон із запитом про те, чи дійсно ви хочете зробити календар загальнодоступним. Дайте відповідь Yes і не забудьте зберегти настройки, натиснувши кнопку Save в нижній частині вкладки. Натисніть кнопку Back to Calendar для продовження додавання подій в календар.

Перевірка фида Google Calendar

Приклад фида Google Calendar міститься в файлі full.xml вихідного коду, посилання для завантаження якого наведена в розділі " Завантаження ". Також надано посилання на фід-заглушку, який використовується в прикладах коду в даній статті (див. Розділ" ресурси ").

Фіди подій містять різні елементи, що описують подію, наприклад, заголовок події, опис, місце і час проведення події. Google Calendar підтримує також список людей, запрошених на подію, у вигляді списку адрес електронної пошти, на які передаються подробиці про подію при його оновленні. Якщо ці адреси електронної пошти представляють користувачів Google Calendar, вони можуть відповідати на запрошення через додаток, і подія також зберігає їх статус присутності (attendance status). Інтеграція з інформацією про присутність виходить за рамки даної статті, яка присвячена базової інформації про події, такий як заголовок події, місце та час його проведення. У лістингу 1 показана запис про подію в прикладі фида.

Лістинг 1. Приклад запису про подію фида Google Calendar: ID і мітки часу

<Entry> <id> http://www.google.com/calendar/feeds/foss.sanjuan%40gmail.com/public/full/ s19o15ve3nn209gv5qf6c43ao4 </ id> <published> 2007-08-12T15: 45: 40.000Z </ published> <updated> 2007-08-12T15: 53: 37.000Z </ updated> ... ...

Елемент id надає унікальний ідентифікатор URI (Uniform Resource Identifier), який ідентифікує цю подію в системі Google Calendar. Він не тільки містить унікальний номер, але також ідентифікує фид, з якого подія було вилучено. Елементи published і updated використовують формат мітки часу RFC 3339. Елемент updated вказує останнім часом відредагувати подію, або, в разі нового події, час його створення.

Після елементів id, published і updated йдуть елементи з більш читабельною інформацією, показані в лістингу 2. Ця інформація може бути відображена в бічній панелі або на сторінці подій.

Лістинг 2. Приклад запису про подію фида Google Calendar: заголовок, автор і статус

... ... <title type = "text"> Linux Install Fest </ title> ... ... <author> <name> Open Source San Juan </ name> <email> foss.sanjuan@gmail. com </ email> </ author> ... ... <gd: eventStatus value = "http://schemas.google.com/g/2005#event.confirmed" /> ... ...

Елемент title - це проста рядок, що ідентифікує подію. Вона не обов'язково повинна бути унікальною. Елемент author складається з елементів name і email. Автором події є користувач Google Calendar, який ввів подія в календар. Якщо встановити відповідним чином права доступу по запису для аутентіфіціруемих фідів, користувачі Google Calendar, які не є власниками календаря, можуть створювати події в календарі іншого користувача. У таблиці 1 описані можливі значення елемента status.

Таблиця 1. Можливі значення для елемента gd: eventStatus

Значення Опис http://schemas.google.com/g/2005#event.cancelled Подія скасовано. http://schemas.google.com/g/2005#event.confirmed Подія підтверджено. http://schemas.google.com/g/2005#event.tentative Подія заплановано умовно.

Категории
  • Биология
  • Математика
  • Краеведению
  • Лечебная
  • Наука
  • Физике
  • Природоведение
  • Информатика
  • Новости

  • Новости
    https://banwar.org/
    Наша взаимовыгодная связь https://banwar.org/. Запустив новый сайт, "Пари Матч" обещает своим клиентам незабываемый опыт и возможность выиграть крупные суммы.


    Наши клиенты
    Клиенты

    Быстрая связь

    Тел.: (044) 587-84-78
    E-mail: [email protected]

    Имя:
    E-mail:
    Телефон:
    Вопрос\Комментарий: