#HTTP_HEADER{Content-Type: text/javascript; charset=utf-8} #HTTP_HEADER{Vary: Accept-Encoding} [(#REM) Script pour activer le déplacement par cliquer-glisser des documents des albums et des portfolios. Pour prendre en compte les portfolios, «objet» et «id_objet» doivent être présents dans l'environnement. A chaque déplacement d'un document qui modifie l'arbre DOM, on met à jour une liste qui indique tous les déplacements, et qu'on place comme valeur du champ caché «_deplacements» du formulaire. La liste des déplacements est de la forme : objetX => (associer => (a,b)) => (dissocier => (y,z)) objetY => ... Pour identifier les documents et les objets auxquels ils sont liés, on se sert de l'attribut html/jquery «data». On affecte les datas dont on a besoin en amont des autres traitements. - objets conteneurs : «objet», «id_objet» - chaque document : «id_document», «objet_initial» et «id_objet_initial» Arbre DOM : ALBUMS #albums .boite-album conteneur général .liste_items liste de documents .item document PORTFOLIOS #portfolios conteneur général .liste_items liste de documents #docX.item document ][(#REM) Paramètres : objet type d'objet pour inclure les documents de ses portfolios id_objet identifiant de l'objet poste formulaire posté ou pas ][ (#SET{albums,'#albums .boite-album'})][ (#SET{portfolios, #AUTORISER{joindredocument,#ENV{objet},#ENV{id_objet}}|?{'#portfolios',''}})][ (#SET{conteneurs_documents,[(#GET{albums}) .liste_items][,(#GET{portfolios}) .liste_items]}) ][(#REM)