EventView/Parts/Location.LocationPartManager($locations, $field, categoryPart)

Gère l'emplacement de la réunion avec les différents types d'emplacement. Les emplacements sont cumulables, il peut en avoir des différents. Les différents select et différentes valeurs du select seront générer via les différentes classes qui héritent de ALocationPart et qui se trouve dans le tableau LocationPartManager.PARTS.

new LocationPartManager($locations, $field, categoryPart)

Parameters:
Name Type Description
$locations external:jQuery Div qui contient les emplacements
$field external:jQuery Champ qui contient l'emplacement et qui sera sauvegardé
categoryPart CategoryPart Partie de la catégorie

Members

package _$field :external:jQuery

Champ qui contient l'emplacement et qui sera sauvegardé

package _$locations :external:jQuery

Div qui contient les emplacements

package _cached :Object:.<number:, Object:.<number:, ALocationPart:>>

Contient les données des différents emplacements qui ont été généré et mis en cache si jamais on change de localisation.

package _category :CategoryPart

Partie de la catégorie

locations :Object:.<number:, ALocationPart:>

Contient les données des différents emplacements

static FAKE_LOCATION_PART

Liste des différentes classes qui gère les différentes parties des emplacements, sans se baser sur la localisation

static PARTS

Liste des différentes classes qui gère les différentes parties des emplacements

Methods

package _generateIndex() → {number}

Génère un index pour les emplacements.
Returns:
number

_generate_select(id, selected) → {external:jQuery}

Génère le select en htm
Parameters:
Name Type Description
id number Id du select
selected string Valeur par défaut
Returns:
external:jQuery

async, package _on_change_action() → {Promise:.<void:>}

Est appelé lorsqu'un champ ou un select est modifié. Ecrit et formatte les données des champ visuels dans le champ de sauvegarde. Attend que toutes les promesses liés aux différents champs soient résolus.
Returns:
Promise:.<void:>

package _on_select_changed(event)

Est appelé lorsque le select d'un emplacement est modifié. Cache les emplacements qui ne sont pas séléctionné et affiche celui qui est séléctionné. Désactive les options des sélects qui ont atteint leur nombre maximum d'utilisation. Ou réactive les options si possible.
Parameters:
Name Type Description
event Event

package _update_all_selects()

Met à jour les selects.

package _update_selects(id)

On désactives les options des selects qui ont atteind leurs nombre maximale d'utilisation et on réactive celles qui ne l'ont pas atteinte. Les selects n'ayant qu'une seule option seront désactivés.
Parameters:
Name Type Description
id number Index du select qui est modifié. Celui-ci ne pourra pas être désactivé.

add(Part, location)

Ajoute un emplacement. L'emplacement sera générer le html et les données seront sauvegardé dans LocationPartManager.locations.
Parameters:
Name Type Description
Part
location string Emplacement de l'évènement lié à la classe correspondante

init(event)

Initialise la partie. Si un ou plusieurs emplacements existent déjà, les parties d'emplacements (hérite de ALocationPart) seront générer. Sinon, un emplacement de type Location sera généré.
Parameters:
Name Type Description
event * Evènement du plugin `Calendar`

invalid_action()

Action à faire si un des emplacements n'est pas valide.

is_valid() → {boolean}

Si les emplacements sont correspondent à leurs valeurs attendus ou non.
Returns:
boolean

remove(id)

Supprime un emplacement. Supprime le html et les données sauvegardé liés ainsi que les données liés en cache si elles existent.
Parameters:
Name Type Description
id number Id de l'emplacement à supprimer

update_first_location(val) → {external:jQuery}

Change ma vaeur du premier select trouver
Parameters:
Name Type Description
val string
Returns:
external:jQuery

async waitComplete() → {Promise:.<void:>}

Attend que toutes les promesses liés aux différents champs soient résolus.
Returns:
Promise:.<void:>

static AddExtraLocationType(extra)

Ajoute un type de localisation qui ne se pbase pas sur la localisation
Parameters:
Name Type Description
extra

static AddLocationType(location_type)

Ajoute un type de localisation
Parameters:
Name Type Description
location_type