doc/general.fr.md
author veltr
Tue, 05 Jun 2012 17:55:24 +0200
branchnew-model
changeset 909 aa0e42229784
permissions -rw-r--r--
Started reworking on documentation
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
909
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     1
# Architecture générale du Metadataplayer #
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     2
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     3
ATTENTION !
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     4
Cette documentation se réfère à la v.3 du Metadataplayer, actuellement disponible dans la branche **new-model** du repository
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     5
http://www.iri.centrepompidou.fr/dev/hg/metadataplayer
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     6
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     7
## Bibliothèques extérieures ##
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     8
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
     9
Les bibliothèques utilisées par le Metadataplayer sont regroupées dans *src/libs*
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    10
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    11
### LAB.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    12
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    13
- **Fichier**: LAB.min.js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    14
- **Licence**: MIT.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    15
- **Rôle**: Charge les autres bibliothèques extérieures et les widgets.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    16
- **Utilisé par**: Code principal.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    17
- Du fait de ce mode de chargement, il s’agit de la seule bibliothèque nécessaire au moment de l’initialisation du code.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    18
- **Site**: http://labjs.com/
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    19
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    20
### jQuery ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    21
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    22
- **Fichier**: jquery.min.js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    23
- **Licence**: Double, MIT et GPL.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    24
- **Rôle**: Gère les actions du code sur la structure du document HTML (DOM)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    25
- **Utilisé par**: Code principal et tous les widgets.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    26
- **Site**: http://jquery.org/
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    27
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    28
### jQuery UI ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    29
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    30
- **Fichiers**: jquery-ui.min.js et jquery-ui.css
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    31
- **Licence**: Double, MIT et GPL.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    32
- **Rôle**: Fournit des éléments d’interface utilisateurs, tels que *Sliders*
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    33
- **Utilisé par**: Widgets, Controller (pour le volume) et Slider (pour le *Slider de progression*)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    34
- **Site**: http://jqueryui.com/
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    35
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    36
### Underscore ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    37
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    38
- **Fichier**: underscore-min.js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    39
- **Licence**: MIT.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    40
- **Rôle**: Fournit des fonctionnalités orientées programmation fonctionnelle pour manipuler tableaux, objets et fonctions.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    41
- **Utilisé par**: Code principal et widgets.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    42
- **Site**: http://documentcloud.github.com/underscore/
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    43
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    44
### Popcorn ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    45
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    46
- **Fichier**: popcorn-complete.min.js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    47
- **Licence**: MIT.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    48
- **Rôle**: Fournit une gestion de la lecture de vidéos HTML5.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    49
- **Utilisé par**: Players HTML5 et Youtube, ainsi que pour la communication avec le reste du Metadataplayer lorsque l’un de ces players est utilisé.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    50
- **Site**: http://popcornjs.org/
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    51
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    52
### Mustache ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    53
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    54
- **Fichier**: mustache.js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    55
- **Licence**: MIT.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    56
- **Rôle**: Permet de remplir des gabarits (*templates*) HTML.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    57
- **Utilisé par**: widgets.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    58
- **Site**: http://mustache.github.com/
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    59
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    60
### Raphael ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    61
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    62
- **Fichier**: raphael-min.js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    63
- **Licence**: MIT.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    64
- **Rôle**: Fournit une interface de dessin vectoriel (utilise SVG ou VML selon les navigateurs)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    65
- **Utilisé par**: Widgets et Sparkline
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    66
- **Site**: http://raphaeljs.com/
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    67
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    68
### ktbs4js Tracemanager ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    69
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    70
- **Fichier**: tracemanager.js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    71
- **Licence**: LGPL.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    72
- **Rôle**: Permet de s’interfacer avec le système de gestion de traces KTBS, créé par Olivier Aubert (Liris)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    73
- **Utilisé par**: TraceWidget
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    74
- **Site**: http://github.com/oaubert/ktbs4js
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    75
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    76
## Code principal (core) du Metadataplayer ##
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    77
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    78
Dans la version *release* du metadataplayer, les fichiers Javascript et CSS sont répartis entre le *core* et les *widgets*.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    79
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    80
*LdtPlayer-core.js* est compilé à partir de plusieurs fichiers Javascript situés (sauf LAB.min.js) dans *src/js*:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    81
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    82
### header.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    83
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    84
Contient les crédits du Metadataplayer, ainsi que les informations sur la licence (*CeCILL-C*)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    85
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    86
### LAB.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    87
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    88
cf. Bibliothèques extérieures.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    89
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    90
### init.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    91
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    92
Définit l’objet *IriSP*, qui sert d’espace de nommage pour tout le Metadataplayer.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    93
Contient la classe *IriSP.Metadataplayer*, dont l’instanciation est la porte d’entrée principale du code.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    94
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    95
### pop.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    96
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    97
Contient *IriSP.PopcornReplacement*, c’est à dire une version simplifiée de Popcorn pour communiquer avec des lecteurs vidéos non-supportés par Popcorn.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    98
Au moment de la création de cette partie, l’interfaçage Popcorn-jwplayer n’était pas satisfaisant, à remplacer éventuellement par de vrais players/plugins pour Popcorn.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
    99
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   100
### utils.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   101
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   102
Contient quelques fonctions utilitaires, telles que *IriSP.loadCss*, qui est l’équivalent pour les fichiers CSS de LAB.js.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   103
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   104
### model.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   105
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   106
Contient les classes de gestion du modèle de données Cinelab, regroupées sous l’espace de nommage *IriSP.Model*.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   107
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   108
### widgets.js ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   109
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   110
Contient la classe de base *IriSP.Widgets.Widget*, qui fournit les fonctionnalités de base pour les widgets.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   111
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   112
### players ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   113
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   114
Les fichiers de ce répertoire permettent d’interfacer le *Popcorn Replacement* (cf. *pop.js*) avec des lecteurs vidéo tiers.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   115
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   116
Existent actuellement:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   117
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   118
1. **player.jwplayer**, pour communiquer avec JwPlayer, utilisé pour lire des flux RTMP sur la plateforme *Ligne de temps*
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   119
2. **player.dailymotion**, pour lire des vidéos du *Youtube à la française*
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   120
3. **player.allocine**, pour le player de allocine.net
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   121
4. **player.mashup**, pour le player de bout à bout Flash créé par Thibaut Cavalié.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   122
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   123
### serializers ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   124
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   125
Les Sérialiseurs servent d’interface entre les formats de données utilisés pour les échanges avec les serveurs.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   126
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   127
Deux sérialiseurs existent à l’heure actuelle:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   128
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   129
1. **PlatformSerializer**, pour lire les flux JSON fournis par la plateforme *Lignes de Temps*.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   130
2. **PlatformAnnotateSerializer**, pour communiquer avec l’API d’ajout d’annotations de la plateforme, dont le format est légèrement différent.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   131
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   132
## Widgets ##
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   133
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   134
Les Widgets sont des modules, visibles ou non, permettant de rajouter des fonctionnalités au Metadataplayer.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   135
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   136
Situés dans le répertoire *src/widgets*, ils contiennent nécessairement un fichier de code *NomDuWidget.js* et, optionnellement un fichier de style *NomDuWidget.css*
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   137
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   138
#### Options courantes ####
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   139
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   140
- Les widgets affichant des annotations possèdent l’option *annotation\_type*, qui peut prendre les valeurs suivantes:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   141
    - Chaîne de caractères: prend en compte les types d’annotations dont le titre contient la chaîne. Exemple: "chap" permet notamment d’afficher les annotations dans le type d’annotation "Chapitrage"
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   142
    - Tableau de chaînes: pour prendre en compte plusieurs types d’annotations
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   143
    - false: pour prendre en compte toutes les annotations du projet
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   144
- *requires*, qui permet d’encapsuler un widget dans un autre.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   145
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   146
Voici la liste des widgets actuellement disponibles, avec leurs options:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   147
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   148
### HelloWorld ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   149
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   150
- **Rôle**: Widget d’exemple démontrant l’API de création de widgets
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   151
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   152
    - **text**: (défaut: "world"), texte à afficher après "Hello, "
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   153
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   154
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   155
### Slider ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   156
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   157
- **Rôle**: Barre de progression et *Slider* indiquant la position de la tête de lecture vidéo et permettant de la déplacer.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   158
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   159
   - **minimized\_height**: (défaut: 4), hauteur en pixels du *Slider* en mode minimisé
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   160
   - **maximized\_height**: (défaut: 10), hauteur en pixels du *Slider* en mode maximisé (lorsque la souris passe dessus)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   161
   - **minimize\_timeout**: (défaut: 1500), durée en millisecondes avant que le *Slider* ne se minimise. À une valeur de 0, le *Slider* ne se minimise plus.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   162
- Utilise la bibliothèque: jQuery UI
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   163
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   164
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   165
### Controller ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   166
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   167
- **Rôle**: Boutons Lecture/Pause, Rechercher, Ouvrir l’annotateur et contrôle du volume
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   168
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   169
    - **disable\_annotate\_btn**: (défaut: false), permet de désactiver le bouton d’ouverture de l’annotateur s’il est à *true*
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   170
    - **disable\_search\_btn**: (défaut: true), permet de désactiver le bouton de recherche d’annotations
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   171
- Utilise la bibliothèque: jQuery UI
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   172
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   173
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   174
### Arrow ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   175
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   176
- **Rôle**: Dessine la flèche indiquant la position de l’annotation
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   177
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   178
    - **arrow\_height**: (défaut: 16), hauteur en pixels de la flèche
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   179
    - **arrow\_width**: (défaut: 24), largeur en pixels de la flèche
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   180
    - **base\_height**: (défaut: 0), hauteur entre le bas de la flèche et le bas du widget. Nécessaire si l’on souhaite faire un widget aux bords arrondis.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   181
    - **base\_curve**: (défaut: 0), rayon de courbure des bords arrondis du widget.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   182
    - **fill\_url**: URL d’une image de remplissage pour le widget
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   183
    - **fill\_color**: (défaut: "#ffffff" = blanc), couleur de remplissage du widget. Peut-être remplacé par un dégradé sous la forme angle en degrés-couleur de début-couleur de fin, ex: "90-#000-#fff"
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   184
    - **stroke\_color**: (défaut: "#b7b7b7" = gris), couleur de la bordure du widget.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   185
    - **stroke\_width**: (défaut: 1.5), épaisseur en pixels de la bordure du widget.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   186
    - **animation\_speed**: (défaut: 20), vitesse de déplacement de la flèche.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   187
    - **pilot\_widget**: (défaut: "Annotation"), widget commandant la position de la flèche.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   188
- Utilise la bibliothèque: Raphael
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   189
- Utilise un fichier CSS: non
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   190
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   191
### Annotation ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   192
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   193
- **Rôle**: Affiche les informations relatives à une annotation au moment où celle-ci est jouée
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   194
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   195
    - **annotation\_type**: (défaut: "chapitrage"), cf. *Options courantes*, plus haut.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   196
    - **show\_top\_border**: (défaut: false), afficher ou non la bordure en haut du widget (au cas où il est utilisé sans/avec le widget *Arrow*)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   197
    - **site\_name**: "Lignes de Temps", nom du site à afficher lorsque l’on clique sur les boutons de partage pour réseaux sociaux.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   198
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   199
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   200
### CreateAnnotation ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   201
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   202
- **Rôle**: Permet de créer une annotation en affichant un formulaire
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   203
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   204
    - **show\_title\_field**: (défaut: true), affiche un champ permettant de saisir le titre de l’annotation.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   205
    - **creator\_name**: nom d’utilisateur du créateur de l’annotation.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   206
    - **creator\_avatar**: URL de l’image de profil du créateur de l’annotation.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   207
    - **tags**: (défaut: false), liste des tags à afficher, sous la forme d’un tableau d’objets type [ { id: "tag-001", title: "" } ]. Si la valeur est false, affiche les tags les plus utilisés du projet.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   208
    - **max\_tags**: (défaut: 8), nombre de tags à afficher.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   209
    - **polemics**: boutons polémiques à afficher, sous la forme d’un tableau d’objets indiquant mot-clé à ajouter, couleur du fond du bouton, couleur du bouton, ex: [ { keyword: "++", background\_color: "#00a000", text\_color: "#ffffff" } ]
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   210
    - **annotation\_type**: (défaut: "Contributions"), cf. *Options courantes*, plus haut.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   211
    - **api\_serializer**: (défaut: "ldt\_annotate"), sérialiseur à utiliser pour l’envoi des annotations.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   212
    - **api\_endpoint\_template**: URL de l’API, où {{id\}\} est remplacé par l’ID du projet, ex: "http://ldt.iri.centrepompidou.fr/ldtplatform/api/ldt/annotations/{{id}}.json".
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   213
    - **api\_method**: (défaut: "PUT"), méthode HTTP utilisée pour envoyer les annotations. La plateforme *Lignes de temps* utilise PUT, mais cette méthode devrait être réservée pour la création d’une ressource dont l’URL est connue à l’avance.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   214
    - **close\_widget\_timeout**: (défaut: 0), durée en millisecondes avant que le widget ne soit refermé après l’envoi d’une annotation. Si la valeur est 0, le widget ne se referme pas.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   215
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   216
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   217
### Polemic ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   218
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   219
- **Rôle**: Affiche la *timeline polémique*, c’est à dire les tweets colorés en fonction de la syntaxe polémique. Selon le volume de tweets, deux modes de représentation existent:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   220
    - Avec un faible volume, les tweets sont des carrés dessinés individuellement.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   221
    - Avec un volume élevé, les colonnes présentent les volumes agrégés de tweets par couleur.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   222
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   223
    - **element\_width**: (défaut: 5), largeur en pixels d’une tranche de tweets.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   224
    - **element\_height**: (défaut: 5), hauteur en pixels d’un tweet, en mode faible volume.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   225
    - **max\_elements**: (défaut: 15), nombre de tweets dans une colonne à partir duquel le mode de représentation change.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   226
    - **annotation\_type**: (défaut: "tweet"), cf. *Options courantes*, plus haut.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   227
    - **defaultcolor**: (défaut: "#585858" = gris), couleur des tweets qui n’ont pas d’annotation polémique.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   228
    - **foundcolor**: (défaut: "#fc00ff" = mauve), couleur d’affichage des tweets correspondant à un résultat de recherche.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   229
    - **polemics**: couleurs polémiques à afficher, en fonction d’une recherche de termes, type [ { keywords: [ "++" ], color: "#1D973D" } ]
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   230
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   231
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   232
### Tweet ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   233
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   234
- **Rôle**: Affiche furtivement le contenu d’un tweet
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   235
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   236
    - **hide_timeout**: (défaut: 5000), durée en millisecondes, avant que l’affichage du Tweet ne se referme
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   237
    - **polemics**: identique au paramètre *polemics* du widget *Polemic*
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   238
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   239
### Sparkline ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   240
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   241
- **Rôle**: Affiche une courbe indiquant l’évolution du volume d’annotations au cours du temps.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   242
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   243
    - **annotation\_type**: cf. *Options courantes*, plus haut.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   244
    - **lineColor**: (défaut: "#7492b4" = gris-bleu), couleur de la courbe
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   245
    - **fillColor**: (défaut: "#aeaeb8" = gris), couleur de la surface sous la courbe
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   246
    - **lineWidth**: (défaut: 2), épaisseur en pixels de la courbe
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   247
    - **slice\_count**: (défaut: 20), nombre des tranches horaires dans lesquelles les annotations sont réparties pour calculer la courbe
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   248
    - **height**: (défaut: 50), hauteur en pixels de la courbe
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   249
    - **margin**: (défaut: 5), marge en pixels au-dessus de la courbe
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   250
- Utilise la bibliothèque: Raphael
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   251
- Utilise un fichier CSS: non
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   252
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   253
### Tagcloud ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   254
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   255
- **Rôle**: Affiche un nuage de mots-clés
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   256
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   257
    - **include\_titles**: (défaut: true), utiliser le contenu du champ titre des annotations pour calculer le nuage de mots-clés.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   258
    - **include\_descriptions**: (défaut: true), utiliser le contenu du champ description des annotations pour calculer le nuage.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   259
    - **include\_tag\_texts**: (défaut: true), utiliser les textes des tags liés aux annotations pour calculer le nuage de mots-clés.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   260
    - **tag\_count**: (défaut: 30), nombre maximum de mots-clés à afficher.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   261
    - **stopword\_language**: (défaut: "fr"), code de langue correspondant à une liste de mots vides à exclure du nuage.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   262
    - **custom\_stopwords**: (défaut: []), liste de mots-vides à exclure du nuage.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   263
    - **exclude\_pattern**: (défaut: false), expression régulière à exclure du nuage.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   264
    - **annotation\_type**: (défaut: false), cf. *Options courantes*, plus haut. Concerne les annotations dont les contenus sont utilisés pour calculer le nuage.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   265
    - **segment\_annotation\_type**: (défaut: false), permet de définir la segmentation du nuage de mots-clés et de calculer un nuage pour chaque segment du type d’annotation choisi. Lorsque ce paramètre est à *false*, un seul nuage est calculé pour toute la durée de la vidéo.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   266
    - **min\_font\_size**: (défaut: 10), taille de caractères (en pixels) pour le mot le moins fréquent.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   267
    - **max\_font\_size**: (défaut: 26), taille de caractères (en pixels) pour le mot le plus fréquent.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   268
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   269
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   270
### AnnotationsList ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   271
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   272
- **Rôle**: Affiche une liste d’annotations
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   273
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   274
    - **ajax\_url**: (défaut: false), spécifie un gabarit d’URL lorsque les annotations doivent être chargées par une API spécifique (API de segment). Dans l’URL, {{media}} sera remplacé par l’ID du média, {{begin}} par le *timecode* de début en millisecondes, {{end}} par le *timecode* de fin en millisecondes. Si le réglage est à *false*, les annotations affichées seront celles chargées à l’initialisation du Widget. Sur la plateforme *Lignes de Temps*, cette URL est http://ldt.iri.centrepompidou.fr/ldtplatform/api/ldt/segments/{{media}}/{{begin}}/{{end}}?callback=?
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   275
    - **ajax\_granularity**: (défaut: 300000 ms = 5 minutes), spécifie la durée qui doit être chargée par l’API de segment, de part et d’autre du timecode courant (cf. ci-dessus) 
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   276
    - **default\_thumbnail**: imagette à afficher par défaut à côté d’une annotation lorsque l’annotation n’a pas d’imagette.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   277
    - **foreign\_url**: spécifie un gabarit d’URL lorsque l’annotation n’a pas d’information d’URL et que l’annotation est dans un autre projet. Dans l’URL, {{media}} sera remplacé par l’ID du média, {{project}} par l’ID du projet, {{annotationType}} par l’ID du type d’annotation, {{annotation}} par l’ID de l’annotation. Sur la plateforme *Lignes de temps*, cette URL est http://ldt.iri.centrepompidou.fr/ldtplatform/ldt/front/player/{{media}}/{{project}}/{{annotationType}}#id={{annotation}}
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   278
    - **annotation\_type**: (défaut: false), cf. *Options courantes*, plus haut.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   279
    - **refresh\_interval**: (défaut: 0), intervalle auquel le widget recharge en Ajax la liste des annotations (que l’on utilise l’API de segment ou non)
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   280
    - **limit\_count**: (défaut: 10), nombre maximum d’annotations à afficher simultanément.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   281
    - **newest\_first**: (défaut: false), *true*: classe les annotations par ordre antéchronologique de création, *false*: classe les annotations par ordre chronologique de leur timecode vidéo.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   282
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   283
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   284
### Media ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   285
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   286
- **Rôle**: Affiche le média en cours, ainsi que la liste des autres médias du projet. Utilisé principalement pour les mashups
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   287
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   288
    - **default\_thumbnail**: imagette à afficher par défaut à côté d’un média lorsque le média n’a pas d’imagette.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   289
    - **media\_url\_template**: spécifie un gabarit d’URL lorsque le média n’a pas d’information d’URL, par exemple: "http://ldt.iri.centrepompidou.fr/ldtplatform/ldt/front/player/{{media}}/"
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   290
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   291
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   292
### Tooltip ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   293
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   294
- **Rôle**: Affiche une infobulle, utilisé uniquement comme *widget inclus* dans d’autres widgets.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   295
- Pas d’options
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   296
- Utilise un fichier CSS: oui
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   297
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   298
### Trace ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   299
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   300
- **Rôle**: Envoi des traces au serveur KTBS
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   301
- **Options**:
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   302
    - **js\_console**: (défaut: false), écriture ou non des traces dans la console du navigateur.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   303
    - **url**: (défaut: "http://traces.advene.org:5000/"), URL du serveur de traces
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   304
    - **requestmode**: (défaut: "GET"), méthode HTTP utilisée pour l’envoi des traces (seul *"GET"* permet le *cross-domain*).
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   305
    - **syncmode**: (défaut: "sync"), envois groupés (mode *"delayed"*) ou non (*"sync"*) des traces
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   306
- Utilise la bibliothèque: ktbs4js tracemanager
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   307
- Utilise un fichier CSS: non
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   308
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   309
### Mediafragment ###
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   310
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   311
- **Rôle**: Gère les URLs à la norme *Mediafragment*: change la position de la tête de lecture en fonction de l’URL et inversement.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   312
- Une URL finissant par #id=*id de l’annotation* pointe sur une annotation, par #t=*temps en secondes* vers un timecode de la vidéo.
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   313
- Pas d’options
aa0e42229784 Started reworking on documentation
veltr
parents:
diff changeset
   314
- Utilise un fichier CSS: non