Crear .archivo ics con javascript o jquery

Estoy tratando de crear un .ics archivo cuando un usuario hace clic en un botón.

Hasta ahora el código que tengo es

msgData1 = $('.start-time').text();
msgData2 = $('.end-time').text();
msgData3 = $('.Location').text();

var icsMSG = "BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//Our Company//NONSGML v1.0//EN\nBEGIN:VEVENT\nUID:[email protected]\nDTSTAMP:20120315T170000Z\nATTENDEE;CN=My Self ;RSVP=TRUE:MAILTO:[email protected]\nORGANIZER;CN=Me:MAILTO::[email protected]\nDTSTART:" + msgData1 +"\nDTEND:" + msgData2 +"\nLOCATION:" + msgData3 + "\nSUMMARY:Our Meeting Office\nEND:VEVENT\nEND:VCALENDAR";

$('.button').click(function(){
    window.open( "data:text/calendar;charset=utf8," + escape(icsMSG));
});

Esta descarga un .ics archivo, pero cuando trato de abrir en iCal me dice que no puede leer el archivo.

¿Cuáles son los valores de tiempo de inicio, tiempo final, y la Ubicación que usted está utilizando?
Al final he usado addthisevent.com Una muy buena y simple plugin.

OriginalEl autor joshuahornby10 | 2013-10-02

4 Kommentare

  1. 12

    He utilizado el ics.js solución mencionado por InsanelyADHD.

    Un problema con la solución fue que el Chrome no detectar el tipo de archivo correctamente y trató de abrir el archivo de texto con el editor.

    He cambiado la función de descarga para abrir el texto simplemente con:

    window.open( "data:text/calendar;charset=utf8," + escape(calendar));

    Mi fork en Github es icsFormatter.js

    Acerca de la licencia: he contactado con el autor original para incluir la GPL después de que lo voy a incluir uno también.

    probablemente, usted debe especificar qué calendario es. Mi conjetura es que es el resultado de (isc).descargar(‘nombre’) ?
    Usted debe corregir el ejemplo de la fecha final.
    ¿Su tenedor trabajo en iOS? Que era un problema con el original.

    OriginalEl autor smartbart24

  2. 6

    Hay un proyecto de código abierto para esto:

    Es 100% JavaScript y trabajado en todos los navegadores modernos excepto IE 9 y abajo.

    Si usted está interesado en cómo obtener los archivos de trabajo, usted puede comprobar su origen. Utilizan las siguientes bibliotecas para realizar el levantamiento de objetos pesados:

    Ya que no hay licencia está definido por defecto, Todos los Derechos Reservados. Abre un tema para eso.
    este ics.js también no es compatible con 6 > safari versión.
    La edición original no está bien mantenido y contiene fallos críticos. La horquilla es fuerte en este. Usar el tenedor. github.com/connorbode/ics.js
    github.com/connorbode/ics.js también está muerto ahora.
    downvote para enlace roto

    OriginalEl autor InsanelyADHD

  3. 4

    Tiene dos de colon para el organizador de la dirección: «MAILTO::[email protected]»

    Si esto no soluciona el problema, tendrás que nos muestran el total de ical corriente, como es recibido por iCal.

    Finalmente, y suponiendo que start_time y end_time está utilizando el formato correcto para el campo de ubicación, usted puede necesitar ajustar líneas (http://tools.ietf.org/html/rfc5545#section-3.1) y huir de ciertos personajes (http://tools.ietf.org/html/rfc5545#section-3.3.11). En otras palabras, usted puede desear mirar en iCalendar bibliotecas.

    OriginalEl autor Arnaud Quillaud

  4. 0

    He utilizado icsFormatter que se ha mencionado y por smartbart24. Pero yo estaba obligado a soportar IE abajo a la versión 7, por lo que tuve que ajustar un poco las cosas.

    Utilizar icsGen, mi horquilla de icsFormatter, usted tiene que tener php 4 o 5 instalado en su servidor web.

    OriginalEl autor RegisteredUser

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Recent Articles

Python «set» con duplicados/elementos repetidos

Hay una forma estándar de representar un "conjunto" que puede contener elementos duplicados. Como yo lo entiendo, un conjunto tiene exactamente un cero o...

Python: generador de expresión vs rendimiento

En Python, ¿hay alguna diferencia entre la creación de un generador de objetos a través de un generador de expresión versus el uso de...

Cómo exportar/importar la Masilla lista de sesiones?

Hay una manera de hacer esto? O tengo que tomar manualmente cada archivo de Registro? InformationsquelleAutor s.webbandit | 2012-10-23

no distingue mayúsculas de minúsculas coincidentes en xpath?

Por ejemplo, para el xml a continuación <CATALOG> <CD title="Empire Burlesque"/> <CD title="empire burlesque"/> <CD...