From: vincent@cubedesigners.com Date: Tue, 29 Sep 2009 08:26:43 +0000 (+0000) Subject: (no commit message) X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=2aee19c09402930a0b9e0bc668458744ec2b04d3;p=cubeextranet.git --- diff --git a/.htaccess b/.htaccess new file mode 100644 index 000000000..9db36f473 --- /dev/null +++ b/.htaccess @@ -0,0 +1,8 @@ +Options +FollowSymlinks + +RewriteEngine on +RewriteBase / + +RewriteRule ^ajax/supprimeFichier/([0-9]+)/(.*)$ index.php/ajax/supprimeFichier/$1/$2 [L] +RewriteRule ^telecharger/([0-9]+)/(.*)$ index.php/telecharger/$1/$2 [L] +RewriteRule ^([-_a-zA-Z0-9/]+)$ index.php/$1 [L] \ No newline at end of file diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 000000000..afbc192c0 Binary files /dev/null and b/favicon.ico differ diff --git a/images/extranet/close.png b/images/extranet/close.png new file mode 100644 index 000000000..ca2b14da8 Binary files /dev/null and b/images/extranet/close.png differ diff --git a/images/extranet/delete.png b/images/extranet/delete.png new file mode 100644 index 000000000..074aed9a1 Binary files /dev/null and b/images/extranet/delete.png differ diff --git a/images/extranet/devis.png b/images/extranet/devis.png new file mode 100644 index 000000000..258850792 Binary files /dev/null and b/images/extranet/devis.png differ diff --git a/images/extranet/devis2page1.png b/images/extranet/devis2page1.png new file mode 100644 index 000000000..dd6daaf11 Binary files /dev/null and b/images/extranet/devis2page1.png differ diff --git a/images/extranet/devis2page2.png b/images/extranet/devis2page2.png new file mode 100644 index 000000000..1e256b627 Binary files /dev/null and b/images/extranet/devis2page2.png differ diff --git a/images/extranet/down.png b/images/extranet/down.png new file mode 100644 index 000000000..86fee5bb8 Binary files /dev/null and b/images/extranet/down.png differ diff --git a/images/extranet/duplicate.png b/images/extranet/duplicate.png new file mode 100644 index 000000000..69b321240 Binary files /dev/null and b/images/extranet/duplicate.png differ diff --git a/images/extranet/edit.png b/images/extranet/edit.png new file mode 100644 index 000000000..1986ecd30 Binary files /dev/null and b/images/extranet/edit.png differ diff --git a/images/extranet/facture-brouillon.png b/images/extranet/facture-brouillon.png new file mode 100644 index 000000000..22d2e02dd Binary files /dev/null and b/images/extranet/facture-brouillon.png differ diff --git a/images/extranet/facture.png b/images/extranet/facture.png new file mode 100644 index 000000000..7c09e1932 Binary files /dev/null and b/images/extranet/facture.png differ diff --git a/images/extranet/favicon.ico b/images/extranet/favicon.ico new file mode 100644 index 000000000..afbc192c0 Binary files /dev/null and b/images/extranet/favicon.ico differ diff --git a/images/extranet/logo.png b/images/extranet/logo.png new file mode 100644 index 000000000..07f34258a Binary files /dev/null and b/images/extranet/logo.png differ diff --git a/images/extranet/postit.png b/images/extranet/postit.png new file mode 100644 index 000000000..825217f05 Binary files /dev/null and b/images/extranet/postit.png differ diff --git a/images/extranet/print.png b/images/extranet/print.png new file mode 100644 index 000000000..0b5e61b8c Binary files /dev/null and b/images/extranet/print.png differ diff --git a/images/extranet/typographp/Ajouter/Creer-un-devis-8b2af4.png b/images/extranet/typographp/Ajouter/Creer-un-devis-8b2af4.png new file mode 100644 index 000000000..15f46ec2d Binary files /dev/null and b/images/extranet/typographp/Ajouter/Creer-un-devis-8b2af4.png differ diff --git a/images/extranet/typographp/Ajouter/Creer-un-nouveau-client-8b751d.png b/images/extranet/typographp/Ajouter/Creer-un-nouveau-client-8b751d.png new file mode 100644 index 000000000..12512bf1e Binary files /dev/null and b/images/extranet/typographp/Ajouter/Creer-un-nouveau-client-8b751d.png differ diff --git a/images/extranet/typographp/Ajouter/Creer-un-projet-750e47.png b/images/extranet/typographp/Ajouter/Creer-un-projet-750e47.png new file mode 100644 index 000000000..d4faed2e6 Binary files /dev/null and b/images/extranet/typographp/Ajouter/Creer-un-projet-750e47.png differ diff --git a/images/extranet/typographp/Ajouter/Creer-une-facture-9872b8.png b/images/extranet/typographp/Ajouter/Creer-une-facture-9872b8.png new file mode 100644 index 000000000..132d28a0f Binary files /dev/null and b/images/extranet/typographp/Ajouter/Creer-une-facture-9872b8.png differ diff --git a/images/extranet/typographp/BoutonOK/Cliquez-ici-pour-vous-identifier-853bc1.png b/images/extranet/typographp/BoutonOK/Cliquez-ici-pour-vous-identifier-853bc1.png new file mode 100644 index 000000000..ec1cb20ec Binary files /dev/null and b/images/extranet/typographp/BoutonOK/Cliquez-ici-pour-vous-identifier-853bc1.png differ diff --git a/images/extranet/typographp/BoutonOK/Enregister-db6ab5.png b/images/extranet/typographp/BoutonOK/Enregister-db6ab5.png new file mode 100644 index 000000000..5c3da8174 Binary files /dev/null and b/images/extranet/typographp/BoutonOK/Enregister-db6ab5.png differ diff --git a/images/extranet/typographp/BoutonOK/Enregistrer-d88202.png b/images/extranet/typographp/BoutonOK/Enregistrer-d88202.png new file mode 100644 index 000000000..6f84380cd Binary files /dev/null and b/images/extranet/typographp/BoutonOK/Enregistrer-d88202.png differ diff --git a/images/extranet/typographp/BoutonOK/Enregistrer-et-previsualiser-ed1943.png b/images/extranet/typographp/BoutonOK/Enregistrer-et-previsualiser-ed1943.png new file mode 100644 index 000000000..2976c7812 Binary files /dev/null and b/images/extranet/typographp/BoutonOK/Enregistrer-et-previsualiser-ed1943.png differ diff --git a/images/extranet/typographp/BoutonOK/Enregistrer-mon-nouveau-mot-de-passe-8cd421.png b/images/extranet/typographp/BoutonOK/Enregistrer-mon-nouveau-mot-de-passe-8cd421.png new file mode 100644 index 000000000..2b5a16993 Binary files /dev/null and b/images/extranet/typographp/BoutonOK/Enregistrer-mon-nouveau-mot-de-passe-8cd421.png differ diff --git a/images/extranet/typographp/BoutonOK/Lancer-l-impression-38fb6c.png b/images/extranet/typographp/BoutonOK/Lancer-l-impression-38fb6c.png new file mode 100644 index 000000000..7db61f367 Binary files /dev/null and b/images/extranet/typographp/BoutonOK/Lancer-l-impression-38fb6c.png differ diff --git a/images/extranet/typographp/BoutonOK/Recevoir-mon-mot-de-passe-par-e-mail-b4f3d9.png b/images/extranet/typographp/BoutonOK/Recevoir-mon-mot-de-passe-par-e-mail-b4f3d9.png new file mode 100644 index 000000000..64fba1a6e Binary files /dev/null and b/images/extranet/typographp/BoutonOK/Recevoir-mon-mot-de-passe-par-e-mail-b4f3d9.png differ diff --git a/images/extranet/typographp/Contact/Ajouter-un-contact-5a1f3a.png b/images/extranet/typographp/Contact/Ajouter-un-contact-5a1f3a.png new file mode 100644 index 000000000..21bf2b18e Binary files /dev/null and b/images/extranet/typographp/Contact/Ajouter-un-contact-5a1f3a.png differ diff --git a/images/extranet/typographp/Onglet/CHIFFRES-0afb2a.png b/images/extranet/typographp/Onglet/CHIFFRES-0afb2a.png new file mode 100644 index 000000000..8006eb960 Binary files /dev/null and b/images/extranet/typographp/Onglet/CHIFFRES-0afb2a.png differ diff --git a/images/extranet/typographp/Onglet/CLIENTS-9da24c.png b/images/extranet/typographp/Onglet/CLIENTS-9da24c.png new file mode 100644 index 000000000..605f62422 Binary files /dev/null and b/images/extranet/typographp/Onglet/CLIENTS-9da24c.png differ diff --git a/images/extranet/typographp/Onglet/DASHBOARD-7021f3.png b/images/extranet/typographp/Onglet/DASHBOARD-7021f3.png new file mode 100644 index 000000000..69f61b11f Binary files /dev/null and b/images/extranet/typographp/Onglet/DASHBOARD-7021f3.png differ diff --git a/images/extranet/typographp/Onglet/DEVIS-211008.png b/images/extranet/typographp/Onglet/DEVIS-211008.png new file mode 100644 index 000000000..fc0831322 Binary files /dev/null and b/images/extranet/typographp/Onglet/DEVIS-211008.png differ diff --git a/images/extranet/typographp/Onglet/FACTURES-4f4939.png b/images/extranet/typographp/Onglet/FACTURES-4f4939.png new file mode 100644 index 000000000..90aa15c97 Binary files /dev/null and b/images/extranet/typographp/Onglet/FACTURES-4f4939.png differ diff --git a/images/extranet/typographp/Onglet/IDENTIFICATION-6fa172.png b/images/extranet/typographp/Onglet/IDENTIFICATION-6fa172.png new file mode 100644 index 000000000..da1732f38 Binary files /dev/null and b/images/extranet/typographp/Onglet/IDENTIFICATION-6fa172.png differ diff --git a/images/extranet/typographp/Onglet/PROJETS-f2f7f7.png b/images/extranet/typographp/Onglet/PROJETS-f2f7f7.png new file mode 100644 index 000000000..0ed1ae19a Binary files /dev/null and b/images/extranet/typographp/Onglet/PROJETS-f2f7f7.png differ diff --git a/images/extranet/typographp/Onglet/RH-08a19d.png b/images/extranet/typographp/Onglet/RH-08a19d.png new file mode 100644 index 000000000..e27d7f00c Binary files /dev/null and b/images/extranet/typographp/Onglet/RH-08a19d.png differ diff --git a/images/extranet/typographp/Onglet/TIMEREPORT-b54b46.png b/images/extranet/typographp/Onglet/TIMEREPORT-b54b46.png new file mode 100644 index 000000000..5a15b7926 Binary files /dev/null and b/images/extranet/typographp/Onglet/TIMEREPORT-b54b46.png differ diff --git a/images/extranet/typographp/OngletBlanc/Mes-Projets-en-cours-688038.png b/images/extranet/typographp/OngletBlanc/Mes-Projets-en-cours-688038.png new file mode 100644 index 000000000..b8c9f46e8 Binary files /dev/null and b/images/extranet/typographp/OngletBlanc/Mes-Projets-en-cours-688038.png differ diff --git a/images/extranet/typographp/OngletBlanc/Mes-devis-en-cours-e5db3e.png b/images/extranet/typographp/OngletBlanc/Mes-devis-en-cours-e5db3e.png new file mode 100644 index 000000000..41cff4271 Binary files /dev/null and b/images/extranet/typographp/OngletBlanc/Mes-devis-en-cours-e5db3e.png differ diff --git a/images/extranet/typographp/OngletBlanc/Mes-projets-non-factures-c29e8c.png b/images/extranet/typographp/OngletBlanc/Mes-projets-non-factures-c29e8c.png new file mode 100644 index 000000000..b822a4b9d Binary files /dev/null and b/images/extranet/typographp/OngletBlanc/Mes-projets-non-factures-c29e8c.png differ diff --git a/images/extranet/typographp/OngletBlanc/mon-timereport-2640a1.png b/images/extranet/typographp/OngletBlanc/mon-timereport-2640a1.png new file mode 100644 index 000000000..321fef3ed Binary files /dev/null and b/images/extranet/typographp/OngletBlanc/mon-timereport-2640a1.png differ diff --git a/images/extranet/typographp/Titre/Changer-mon-mot-de-passe-c46950.png b/images/extranet/typographp/Titre/Changer-mon-mot-de-passe-c46950.png new file mode 100644 index 000000000..1aaa30f16 Binary files /dev/null and b/images/extranet/typographp/Titre/Changer-mon-mot-de-passe-c46950.png differ diff --git a/images/extranet/typographp/Titre/Edition-d-un-client-4081ee.png b/images/extranet/typographp/Titre/Edition-d-un-client-4081ee.png new file mode 100644 index 000000000..a5aaa33e9 Binary files /dev/null and b/images/extranet/typographp/Titre/Edition-d-un-client-4081ee.png differ diff --git a/images/extranet/typographp/Titre/Edition-d-un-contact-cc4d14.png b/images/extranet/typographp/Titre/Edition-d-un-contact-cc4d14.png new file mode 100644 index 000000000..bc0680cc9 Binary files /dev/null and b/images/extranet/typographp/Titre/Edition-d-un-contact-cc4d14.png differ diff --git a/images/extranet/typographp/Titre/Edition-d-un-projet-50894f.png b/images/extranet/typographp/Titre/Edition-d-un-projet-50894f.png new file mode 100644 index 000000000..b9e3a4a16 Binary files /dev/null and b/images/extranet/typographp/Titre/Edition-d-un-projet-50894f.png differ diff --git a/images/extranet/typographp/Titre/Edition-des-notes-cc0713.png b/images/extranet/typographp/Titre/Edition-des-notes-cc0713.png new file mode 100644 index 000000000..8933ae9e8 Binary files /dev/null and b/images/extranet/typographp/Titre/Edition-des-notes-cc0713.png differ diff --git a/images/extranet/typographp/Titre/Imprimer-des-factures-1b0b0d.png b/images/extranet/typographp/Titre/Imprimer-des-factures-1b0b0d.png new file mode 100644 index 000000000..e50d2708f Binary files /dev/null and b/images/extranet/typographp/Titre/Imprimer-des-factures-1b0b0d.png differ diff --git a/images/extranet/typographp/Titre/Mes-parametres-654a44.png b/images/extranet/typographp/Titre/Mes-parametres-654a44.png new file mode 100644 index 000000000..0332bc6ff Binary files /dev/null and b/images/extranet/typographp/Titre/Mes-parametres-654a44.png differ diff --git a/images/extranet/typographp/Titre/Mot-de-passe-oublie-4c9e32.png b/images/extranet/typographp/Titre/Mot-de-passe-oublie-4c9e32.png new file mode 100644 index 000000000..775d972dc Binary files /dev/null and b/images/extranet/typographp/Titre/Mot-de-passe-oublie-4c9e32.png differ diff --git a/images/extranet/typographp/Titre/Veuillez-vous-identifier-c24529.png b/images/extranet/typographp/Titre/Veuillez-vous-identifier-c24529.png new file mode 100644 index 000000000..9df2d9813 Binary files /dev/null and b/images/extranet/typographp/Titre/Veuillez-vous-identifier-c24529.png differ diff --git a/images/extranet/up.png b/images/extranet/up.png new file mode 100644 index 000000000..3e92692b5 Binary files /dev/null and b/images/extranet/up.png differ diff --git a/images/extranet/view.png b/images/extranet/view.png new file mode 100644 index 000000000..3bdd45e3e Binary files /dev/null and b/images/extranet/view.png differ diff --git a/images/ws/close.png b/images/ws/close.png new file mode 100644 index 000000000..b674c795c Binary files /dev/null and b/images/ws/close.png differ diff --git a/images/ws/delete.png b/images/ws/delete.png new file mode 100644 index 000000000..b674c795c Binary files /dev/null and b/images/ws/delete.png differ diff --git a/images/ws/devis.png b/images/ws/devis.png new file mode 100644 index 000000000..258850792 Binary files /dev/null and b/images/ws/devis.png differ diff --git a/images/ws/devis2page1.png b/images/ws/devis2page1.png new file mode 100644 index 000000000..dd6daaf11 Binary files /dev/null and b/images/ws/devis2page1.png differ diff --git a/images/ws/devis2page2.png b/images/ws/devis2page2.png new file mode 100644 index 000000000..1e256b627 Binary files /dev/null and b/images/ws/devis2page2.png differ diff --git a/images/ws/down.png b/images/ws/down.png new file mode 100644 index 000000000..f0a56c85f Binary files /dev/null and b/images/ws/down.png differ diff --git a/images/ws/duplicate.png b/images/ws/duplicate.png new file mode 100644 index 000000000..69b321240 Binary files /dev/null and b/images/ws/duplicate.png differ diff --git a/images/ws/edit.png b/images/ws/edit.png new file mode 100644 index 000000000..1986ecd30 Binary files /dev/null and b/images/ws/edit.png differ diff --git a/images/ws/facture-brouillon.png b/images/ws/facture-brouillon.png new file mode 100644 index 000000000..22d2e02dd Binary files /dev/null and b/images/ws/facture-brouillon.png differ diff --git a/images/ws/facture.png b/images/ws/facture.png new file mode 100644 index 000000000..7c09e1932 Binary files /dev/null and b/images/ws/facture.png differ diff --git a/images/ws/favicon.ico b/images/ws/favicon.ico new file mode 100644 index 000000000..252c8fa2b Binary files /dev/null and b/images/ws/favicon.ico differ diff --git a/images/ws/logo.png b/images/ws/logo.png new file mode 100644 index 000000000..3582045fe Binary files /dev/null and b/images/ws/logo.png differ diff --git a/images/ws/postit.png b/images/ws/postit.png new file mode 100644 index 000000000..825217f05 Binary files /dev/null and b/images/ws/postit.png differ diff --git a/images/ws/print.png b/images/ws/print.png new file mode 100644 index 000000000..0b5e61b8c Binary files /dev/null and b/images/ws/print.png differ diff --git a/images/ws/typographp/Ajouter/Creer-un-nouveau-fluidbook-b52f95.png b/images/ws/typographp/Ajouter/Creer-un-nouveau-fluidbook-b52f95.png new file mode 100644 index 000000000..72cf976fb Binary files /dev/null and b/images/ws/typographp/Ajouter/Creer-un-nouveau-fluidbook-b52f95.png differ diff --git a/images/ws/typographp/Ajouter/Creer-un-projet-750e47.png b/images/ws/typographp/Ajouter/Creer-un-projet-750e47.png new file mode 100644 index 000000000..d4faed2e6 Binary files /dev/null and b/images/ws/typographp/Ajouter/Creer-un-projet-750e47.png differ diff --git a/images/ws/typographp/Ajouter/Creer-une-facture-9872b8.png b/images/ws/typographp/Ajouter/Creer-une-facture-9872b8.png new file mode 100644 index 000000000..132d28a0f Binary files /dev/null and b/images/ws/typographp/Ajouter/Creer-une-facture-9872b8.png differ diff --git a/images/ws/typographp/Ajouter/Creer-une-nouvelle-publication-835660.png b/images/ws/typographp/Ajouter/Creer-une-nouvelle-publication-835660.png new file mode 100644 index 000000000..d1bf425e3 Binary files /dev/null and b/images/ws/typographp/Ajouter/Creer-une-nouvelle-publication-835660.png differ diff --git a/images/ws/typographp/Ajouter/Creer-une-publication-3d0832.png b/images/ws/typographp/Ajouter/Creer-une-publication-3d0832.png new file mode 100644 index 000000000..8103ad3fa Binary files /dev/null and b/images/ws/typographp/Ajouter/Creer-une-publication-3d0832.png differ diff --git a/images/ws/typographp/BoutonOK/Cliquez-ici-pour-vous-identifier-853bc1.png b/images/ws/typographp/BoutonOK/Cliquez-ici-pour-vous-identifier-853bc1.png new file mode 100644 index 000000000..9bb3c5b6a Binary files /dev/null and b/images/ws/typographp/BoutonOK/Cliquez-ici-pour-vous-identifier-853bc1.png differ diff --git a/images/ws/typographp/BoutonOK/Enregister-db6ab5.png b/images/ws/typographp/BoutonOK/Enregister-db6ab5.png new file mode 100644 index 000000000..5c79a9895 Binary files /dev/null and b/images/ws/typographp/BoutonOK/Enregister-db6ab5.png differ diff --git a/images/ws/typographp/BoutonOK/Enregistrer-mon-nouveau-mot-de-passe-8cd421.png b/images/ws/typographp/BoutonOK/Enregistrer-mon-nouveau-mot-de-passe-8cd421.png new file mode 100644 index 000000000..86b6a5eb0 Binary files /dev/null and b/images/ws/typographp/BoutonOK/Enregistrer-mon-nouveau-mot-de-passe-8cd421.png differ diff --git a/images/ws/typographp/BoutonOK/Recevoir-mon-mot-de-passe-par-e-mail-b4f3d9.png b/images/ws/typographp/BoutonOK/Recevoir-mon-mot-de-passe-par-e-mail-b4f3d9.png new file mode 100644 index 000000000..e46edf328 Binary files /dev/null and b/images/ws/typographp/BoutonOK/Recevoir-mon-mot-de-passe-par-e-mail-b4f3d9.png differ diff --git a/images/ws/typographp/BoutonOK/editer-58d1b5.png b/images/ws/typographp/BoutonOK/editer-58d1b5.png new file mode 100644 index 000000000..1ed045795 Binary files /dev/null and b/images/ws/typographp/BoutonOK/editer-58d1b5.png differ diff --git a/images/ws/typographp/Editer/editer-58d1b5.png b/images/ws/typographp/Editer/editer-58d1b5.png new file mode 100644 index 000000000..8ccb25228 Binary files /dev/null and b/images/ws/typographp/Editer/editer-58d1b5.png differ diff --git a/images/ws/typographp/LastStep/1-Apercu-89af62.png b/images/ws/typographp/LastStep/1-Apercu-89af62.png new file mode 100644 index 000000000..3ffc80cf2 Binary files /dev/null and b/images/ws/typographp/LastStep/1-Apercu-89af62.png differ diff --git a/images/ws/typographp/LastStep/5-Apercu-82751b.png b/images/ws/typographp/LastStep/5-Apercu-82751b.png new file mode 100644 index 000000000..91a284dee Binary files /dev/null and b/images/ws/typographp/LastStep/5-Apercu-82751b.png differ diff --git a/images/ws/typographp/LastStepInactive/5-Apercu-82751b.png b/images/ws/typographp/LastStepInactive/5-Apercu-82751b.png new file mode 100644 index 000000000..976490a2f Binary files /dev/null and b/images/ws/typographp/LastStepInactive/5-Apercu-82751b.png differ diff --git a/images/ws/typographp/Onglet/CHIFFRES-0afb2a.png b/images/ws/typographp/Onglet/CHIFFRES-0afb2a.png new file mode 100644 index 000000000..8006eb960 Binary files /dev/null and b/images/ws/typographp/Onglet/CHIFFRES-0afb2a.png differ diff --git a/images/ws/typographp/Onglet/CLIENTS-9da24c.png b/images/ws/typographp/Onglet/CLIENTS-9da24c.png new file mode 100644 index 000000000..605f62422 Binary files /dev/null and b/images/ws/typographp/Onglet/CLIENTS-9da24c.png differ diff --git a/images/ws/typographp/Onglet/DASHBOARD-7021f3.png b/images/ws/typographp/Onglet/DASHBOARD-7021f3.png new file mode 100644 index 000000000..4f5d33128 Binary files /dev/null and b/images/ws/typographp/Onglet/DASHBOARD-7021f3.png differ diff --git a/images/ws/typographp/Onglet/DEVIS-211008.png b/images/ws/typographp/Onglet/DEVIS-211008.png new file mode 100644 index 000000000..fc0831322 Binary files /dev/null and b/images/ws/typographp/Onglet/DEVIS-211008.png differ diff --git a/images/ws/typographp/Onglet/FACTURES-4f4939.png b/images/ws/typographp/Onglet/FACTURES-4f4939.png new file mode 100644 index 000000000..90aa15c97 Binary files /dev/null and b/images/ws/typographp/Onglet/FACTURES-4f4939.png differ diff --git a/images/ws/typographp/Onglet/IDENTIFICATION-6fa172.png b/images/ws/typographp/Onglet/IDENTIFICATION-6fa172.png new file mode 100644 index 000000000..92edbf76e Binary files /dev/null and b/images/ws/typographp/Onglet/IDENTIFICATION-6fa172.png differ diff --git a/images/ws/typographp/Onglet/LOGIN-76d7ca.png b/images/ws/typographp/Onglet/LOGIN-76d7ca.png new file mode 100644 index 000000000..619292fc8 Binary files /dev/null and b/images/ws/typographp/Onglet/LOGIN-76d7ca.png differ diff --git a/images/ws/typographp/Onglet/PROJETS-f2f7f7.png b/images/ws/typographp/Onglet/PROJETS-f2f7f7.png new file mode 100644 index 000000000..0ed1ae19a Binary files /dev/null and b/images/ws/typographp/Onglet/PROJETS-f2f7f7.png differ diff --git a/images/ws/typographp/Onglet/PUBLICATIONS-7356f3.png b/images/ws/typographp/Onglet/PUBLICATIONS-7356f3.png new file mode 100644 index 000000000..f7c6850d8 Binary files /dev/null and b/images/ws/typographp/Onglet/PUBLICATIONS-7356f3.png differ diff --git a/images/ws/typographp/Onglet/RH-08a19d.png b/images/ws/typographp/Onglet/RH-08a19d.png new file mode 100644 index 000000000..e27d7f00c Binary files /dev/null and b/images/ws/typographp/Onglet/RH-08a19d.png differ diff --git a/images/ws/typographp/Onglet/TIMEREPORT-b54b46.png b/images/ws/typographp/Onglet/TIMEREPORT-b54b46.png new file mode 100644 index 000000000..5a15b7926 Binary files /dev/null and b/images/ws/typographp/Onglet/TIMEREPORT-b54b46.png differ diff --git a/images/ws/typographp/OngletBlanc/Mes-Projets-en-cours-688038.png b/images/ws/typographp/OngletBlanc/Mes-Projets-en-cours-688038.png new file mode 100644 index 000000000..09f1586b2 Binary files /dev/null and b/images/ws/typographp/OngletBlanc/Mes-Projets-en-cours-688038.png differ diff --git a/images/ws/typographp/OngletBlanc/Mes-devis-en-cours-e5db3e.png b/images/ws/typographp/OngletBlanc/Mes-devis-en-cours-e5db3e.png new file mode 100644 index 000000000..50e957f11 Binary files /dev/null and b/images/ws/typographp/OngletBlanc/Mes-devis-en-cours-e5db3e.png differ diff --git a/images/ws/typographp/OngletBlanc/Mes-projets-non-factures-c29e8c.png b/images/ws/typographp/OngletBlanc/Mes-projets-non-factures-c29e8c.png new file mode 100644 index 000000000..21110b694 Binary files /dev/null and b/images/ws/typographp/OngletBlanc/Mes-projets-non-factures-c29e8c.png differ diff --git a/images/ws/typographp/OngletBlanc/Mon-Timereport-36ef55.png b/images/ws/typographp/OngletBlanc/Mon-Timereport-36ef55.png new file mode 100644 index 000000000..78246eef2 Binary files /dev/null and b/images/ws/typographp/OngletBlanc/Mon-Timereport-36ef55.png differ diff --git a/images/ws/typographp/OngletBlanc/Projets-en-cours-1b3ed4.png b/images/ws/typographp/OngletBlanc/Projets-en-cours-1b3ed4.png new file mode 100644 index 000000000..e3ed4cecf Binary files /dev/null and b/images/ws/typographp/OngletBlanc/Projets-en-cours-1b3ed4.png differ diff --git a/images/ws/typographp/OngletBlanc/mon-timereport-2640a1.png b/images/ws/typographp/OngletBlanc/mon-timereport-2640a1.png new file mode 100644 index 000000000..78246eef2 Binary files /dev/null and b/images/ws/typographp/OngletBlanc/mon-timereport-2640a1.png differ diff --git a/images/ws/typographp/OngletBlanc/my-timereport-cc3841.png b/images/ws/typographp/OngletBlanc/my-timereport-cc3841.png new file mode 100644 index 000000000..9d9fceeee Binary files /dev/null and b/images/ws/typographp/OngletBlanc/my-timereport-cc3841.png differ diff --git a/images/ws/typographp/Stats/statistiques-8ed107.png b/images/ws/typographp/Stats/statistiques-8ed107.png new file mode 100644 index 000000000..daf17c988 Binary files /dev/null and b/images/ws/typographp/Stats/statistiques-8ed107.png differ diff --git a/images/ws/typographp/Stats/stats-650105.png b/images/ws/typographp/Stats/stats-650105.png new file mode 100644 index 000000000..4a85b1c28 Binary files /dev/null and b/images/ws/typographp/Stats/stats-650105.png differ diff --git a/images/ws/typographp/Step/1-Composition-f71953.png b/images/ws/typographp/Step/1-Composition-f71953.png new file mode 100644 index 000000000..72d5cbbd3 Binary files /dev/null and b/images/ws/typographp/Step/1-Composition-f71953.png differ diff --git a/images/ws/typographp/Step/1-Edition-des-liens-f57f63.png b/images/ws/typographp/Step/1-Edition-des-liens-f57f63.png new file mode 100644 index 000000000..86f781296 Binary files /dev/null and b/images/ws/typographp/Step/1-Edition-des-liens-f57f63.png differ diff --git a/images/ws/typographp/Step/1-Parametres-8acc54.png b/images/ws/typographp/Step/1-Parametres-8acc54.png new file mode 100644 index 000000000..a1d907324 Binary files /dev/null and b/images/ws/typographp/Step/1-Parametres-8acc54.png differ diff --git a/images/ws/typographp/Step/1-Personnalisation-c1ddbc.png b/images/ws/typographp/Step/1-Personnalisation-c1ddbc.png new file mode 100644 index 000000000..d3805700a Binary files /dev/null and b/images/ws/typographp/Step/1-Personnalisation-c1ddbc.png differ diff --git a/images/ws/typographp/Step/2-Personnalisation-ca029f.png b/images/ws/typographp/Step/2-Personnalisation-ca029f.png new file mode 100644 index 000000000..31d0c35cc Binary files /dev/null and b/images/ws/typographp/Step/2-Personnalisation-ca029f.png differ diff --git a/images/ws/typographp/Step/3-Parametres-663a41.png b/images/ws/typographp/Step/3-Parametres-663a41.png new file mode 100644 index 000000000..23e3a1815 Binary files /dev/null and b/images/ws/typographp/Step/3-Parametres-663a41.png differ diff --git a/images/ws/typographp/Step/4-Edition-des-liens-31c429.png b/images/ws/typographp/Step/4-Edition-des-liens-31c429.png new file mode 100644 index 000000000..3ab5b3ce6 Binary files /dev/null and b/images/ws/typographp/Step/4-Edition-des-liens-31c429.png differ diff --git a/images/ws/typographp/StepInactive/4-Edition-des-liens-31c429.png b/images/ws/typographp/StepInactive/4-Edition-des-liens-31c429.png new file mode 100644 index 000000000..8d5239783 Binary files /dev/null and b/images/ws/typographp/StepInactive/4-Edition-des-liens-31c429.png differ diff --git a/images/ws/typographp/Supprimer/del-bcc286.png b/images/ws/typographp/Supprimer/del-bcc286.png new file mode 100644 index 000000000..62f8ce963 Binary files /dev/null and b/images/ws/typographp/Supprimer/del-bcc286.png differ diff --git a/images/ws/typographp/Supprimer/editer-58d1b5.png b/images/ws/typographp/Supprimer/editer-58d1b5.png new file mode 100644 index 000000000..e7f955ed0 Binary files /dev/null and b/images/ws/typographp/Supprimer/editer-58d1b5.png differ diff --git a/images/ws/typographp/Supprimer/suppr-ae1b1b.png b/images/ws/typographp/Supprimer/suppr-ae1b1b.png new file mode 100644 index 000000000..e0dcc2fdd Binary files /dev/null and b/images/ws/typographp/Supprimer/suppr-ae1b1b.png differ diff --git a/images/ws/typographp/Supprimer/supprimer-18f8c0.png b/images/ws/typographp/Supprimer/supprimer-18f8c0.png new file mode 100644 index 000000000..2424467ef Binary files /dev/null and b/images/ws/typographp/Supprimer/supprimer-18f8c0.png differ diff --git a/images/ws/typographp/Telecharger/telecharger-77579a.png b/images/ws/typographp/Telecharger/telecharger-77579a.png new file mode 100644 index 000000000..95c1d7478 Binary files /dev/null and b/images/ws/typographp/Telecharger/telecharger-77579a.png differ diff --git a/images/ws/typographp/Titre/Ajouter-un-element-au-dashboard-79b171.png b/images/ws/typographp/Titre/Ajouter-un-element-au-dashboard-79b171.png new file mode 100644 index 000000000..4d8442aac Binary files /dev/null and b/images/ws/typographp/Titre/Ajouter-un-element-au-dashboard-79b171.png differ diff --git a/images/ws/typographp/Titre/Changer-mon-mot-de-passe-c46950.png b/images/ws/typographp/Titre/Changer-mon-mot-de-passe-c46950.png new file mode 100644 index 000000000..b87c4e61c Binary files /dev/null and b/images/ws/typographp/Titre/Changer-mon-mot-de-passe-c46950.png differ diff --git a/images/ws/typographp/Titre/Mes-parametres-654a44.png b/images/ws/typographp/Titre/Mes-parametres-654a44.png new file mode 100644 index 000000000..1fd18cf80 Binary files /dev/null and b/images/ws/typographp/Titre/Mes-parametres-654a44.png differ diff --git a/images/ws/typographp/Titre/Mot-de-passe-oublie-4c9e32.png b/images/ws/typographp/Titre/Mot-de-passe-oublie-4c9e32.png new file mode 100644 index 000000000..b707e1ae1 Binary files /dev/null and b/images/ws/typographp/Titre/Mot-de-passe-oublie-4c9e32.png differ diff --git a/images/ws/typographp/Titre/Please-login-1656e3.png b/images/ws/typographp/Titre/Please-login-1656e3.png new file mode 100644 index 000000000..d1fefb652 Binary files /dev/null and b/images/ws/typographp/Titre/Please-login-1656e3.png differ diff --git a/images/ws/typographp/Titre/Veuillez-vous-identifier-c24529.png b/images/ws/typographp/Titre/Veuillez-vous-identifier-c24529.png new file mode 100644 index 000000000..72b0dc84d Binary files /dev/null and b/images/ws/typographp/Titre/Veuillez-vous-identifier-c24529.png differ diff --git a/images/ws/typographp/Voir/voir-679cca.png b/images/ws/typographp/Voir/voir-679cca.png new file mode 100644 index 000000000..1e4183a27 Binary files /dev/null and b/images/ws/typographp/Voir/voir-679cca.png differ diff --git a/images/ws/up.png b/images/ws/up.png new file mode 100644 index 000000000..54c3b5a06 Binary files /dev/null and b/images/ws/up.png differ diff --git a/images/ws/view.png b/images/ws/view.png new file mode 100644 index 000000000..3bdd45e3e Binary files /dev/null and b/images/ws/view.png differ diff --git a/importWs.php b/importWs.php new file mode 100644 index 000000000..4c8982c13 --- /dev/null +++ b/importWs.php @@ -0,0 +1,296 @@ +con->execute('ALTER TABLE ' . $t . ' DISABLE KEYS'); +} + +$core->con->execute('TRUNCATE TABLE themes'); +$core->con->execute('TRUNCATE TABLE icones'); +$core->con->execute('TRUNCATE TABLE signatures'); +$core->con->execute('TRUNCATE TABLE langues'); + +if ($documents) { + $core->con->execute('TRUNCATE TABLE document_pages'); + $core->con->execute('TRUNCATE TABLE documents'); +} + +if ($books) { + $core->con->execute('TRUNCATE TABLE book_pages'); + $core->con->execute('TRUNCATE TABLE books'); +} + +if ($utilisateurs) { + $core->con->execute('DELETE FROM entreprises WHERE entreprise_id>242 AND entreprise_id<7'); + $core->con->execute('DELETE FROM utilisateurs WHERE utilisateur_id>278'); +} + +if ($utilisateurs) { + // Importe les entreprises + // Contrôle des entreprises déjà dans la base extranet + $entreprises = array(); + $entreprise_id = 0; + $r = $core->con->select('SELECT entreprise_id,nom FROM entreprises'); + while ($r->fetch()) { + $nom = trim(mb_strtolower(cubeText::str2URL($r->nom))); + $entreprises[$nom] = $r->entreprise_id; + $entreprise_id = max($entreprise_id, $r->entreprise_id); + } + $entreprise_id++; + // Obtient les emails des utilisateurs + $utilisateur_id = 0; + $utilisateurs = array(); + $r = $core->con->select('SELECT utilisateur_id,email FROM utilisateurs'); + while ($r->fetch()) { + $utilisateur_id = max($r->utilisateur_id, $utilisateur_id); + $utilisateurs[trim(mb_strtolower($r->email))] = $r->utilisateur_id; + } + $utilisateur_id++; + // Importe les entreprises et utilisateurs du WS dont les membres n'ont pas été reliés à l'extranet + $r = $core->con->select('SELECT * FROM ws.user WHERE extranet=0 AND (uid IN (SELECT uid FROM ws.book) OR grade>=3) ORDER BY date'); + $ws2ext = array(); + while ($r->fetch()) { + // On s'occupe de l'entreprise + $nom = trim(mb_strtolower(cubeText::str2URL($r->rs))); + $email = trim(mb_strtolower($r->email)); + if (isset($entreprises[$nom])) { + $e = $entreprises[$nom]; + } else { + $c = $core->con->openCursor('entreprises'); + $c->entreprise_id = $entreprise_id; + $c->nom = $r->rs; + $c->adresse = $r->adresse; + $c->code_postal = $r->code_postal; + $c->ville = $r->ville; + $c->pays = $r->pays; + $c->date_creation = $r->date; + $c->insert(); + $e = $entreprises[$nom] = $entreprise_id; + + $entreprise_id++; + } + // Puis de l'utilisateur + if (isset($utilisateurs[$email])) { + $c = $core->con->openCursor('utilisateurs'); + $c->ws_password = $r->password; + $c->ws_grade = $r->grade; + $c->ws_admin = 1; + $c->ws_id = $r->uid; + $c->update('WHERE utilisateur_id=\'' . $utilisateurs[$email] . '\''); + $ws2ext[$r->uid] = $utilisateurs[$email]; + } else { + $c = $core->con->openCursor('utilisateurs'); + $c->utilisateur_id = $utilisateur_id; + $c->entreprise = $e; + $c->nom = $r->nom; + $c->prenom = $r->prenom; + $c->email = $r->email; + $c->password = $r->password; + $c->adresse = $r->adresse; + $c->code_postal = $r->code_postal; + $c->ville = $r->ville; + $c->pays = $r->pays; + $c->telephone = $r->telephone; + $c->date_creation = $r->date; + $c->ws_password = $r->password; + $c->ws_grade = $r->grade; + $c->ws_admin = 1; + $c->ws_id = $r->uid; + $c->insert(); + $ws2ext[$r->uid] = $utilisateur_id; + $utilisateur_id++; + } + } + // Mets à jour les utilisateurs reliés à l'extranet + $r = $core->con->select('SELECT * FROM ws.user WHERE extranet!=0'); + while ($r->fetch()) { + $c = $core->con->openCursor('utilisateurs'); + $c->ws_password = $r->password; + $c->ws_admin = 1; + $c->ws_grade = $r->grade; + $c->ws_id = $r->uid; + $c->update('WHERE utilisateur_id=\'' . $r->extranet . '\''); + $ws2ext[$r->uid] = $r->extranet; + } + // Mets à jour les liens revendeur->client + $r = $core->con->select('SELECT * FROM ws.user u ORDER BY grade DESC,date ASC'); + while ($r->fetch()) { + if (!isset($ws2ext[$r->uid])) { + continue; + } + $c = $core->con->openCursor('utilisateurs'); + if (!isset($ws2ext[$r->admin])) { + $ws2ext[$r->admin] = 5; + } + $c->ws_admin = $ws2ext[$r->admin]; + $c->update('WHERE utilisateur_id=\'' . $ws2ext[$r->uid] . '\''); + } +} else { + $ws2ext = array(); + $r = $core->con->select('SELECT ws_id,utilisateur_id FROM utilisateurs WHERE ws_id IS NOT NULL'); + while ($r->fetch()) { + $ws2ext[$r->ws_id] = $r->utilisateur_id; + } +} +// Importe les signatures +$r = $core->con->select('SELECT * FROM ws.signature'); +while ($r->fetch()) { + $c = $core->con->openCursor('signatures'); + $c->signature_id = $r->sigid; + $c->nom = $r->titre; + $c->fbcredit = $r->fbcredit; + $c->fblink = $r->fblink; + $c->partnercredit = $r->partnercredit; + $c->partnerlink = $r->partnerlink; + $c->insert(); +} +// Importe les jeux d'icones +$r = $core->con->select('SELECT * FROM ws.icones'); +while ($r->fetch()) { + $c = $core->con->openCursor('icones'); + $c->icone_id = $r->iid; + $c->nom = $r->titre; + $c->date = $r->date; + $c->proprietaire = getWsUser($r->proprietaire); + $c->couleur = ''; + // TODO copier les fichiers du thème + $c->insert(); +} +// Import des thèmes +$r = $core->con->select('SELECT * FROM ws.theme'); +while ($r->fetch()) { + $c = $core->con->openCursor('themes'); + $c->theme_id = $r->tid; + $c->icones = $r->iid; + $c->proprietaire = getWsUser($r->proprietaire); + $c->date = $r->date; + $c->nom = $r->titre; + $c->signature = $r->sigid; + $parametres = new wsThemeParametres(); + $parametres->fromRecord($r); + $c->parametres = serialize($parametres); + $c->insert(); +} +// Importe les langues +$trad = array(); +$r = $core->con->select('SELECT * FROM ws.lang_trad,ws.lang_ord WHERE lang_trad.idlt=lang_ord.idlt'); +while ($r->fetch()) { + $idl = $r->idl; + if (!isset($trad[$idl])) { + $trad[$idl] = array(); + } + $trad[$idl][$r->ord] = $r->text; +} + +$r = $core->con->select('SELECT * FROM ws.lang'); +while ($r->fetch()) { + ksort($trad[$r->idl]); + $textes = new wsLangueTextes(); + $textes->textes = $trad[$r->idl]; + $c = $core->con->openCursor('langues'); + $c->lang = $r->idl; + $c->nom = $r->idn; + $c->nsis_lang = $r->instlang; + $c->public = $r->active; + $c->embeded = $r->embed; + $c->textes = serialize($trad[$r->idl]); + $c->insert(); +} +$docs = array(); +if ($documents) { + // Importe les documents + $r = $core->con->select('SELECT * FROM ws.document ORDER BY did'); + while ($r->fetch()) { + $c = $core->con->openCursor('documents'); + $c->document_id = $r->did; + $c->file = $r->file; + $c->proprietaire = getWsUser($r->uid); + $c->pages = $r->pages; + $c->trim = $r->trim; + $c->date = $r->date; + $c->insert(); + // TODO Copie des fichiers + $docs[$r->did] = true; + } + // Importe les pages des documents + $r = $core->con->select('SELECT * FROM ws.document_pages'); + while ($r->fetch()) { + $c = $core->con->openCursor('document_pages'); + $c->document_id = $r->did; + $c->document_page = $r->dpid; + $c->text = $r->text; + $c->links = $r->links; + $c->insert(); + } +} else { + $r = $core->con->select('SELECT document_id FROM documents'); + while ($r->fetch()) { + $docs[$r->document_id] = true; + } +} + +if ($books) { + // Importe les fluidbooks + $r = $core->con->select('SELECT * FROM ws.book ORDER BY bid'); + if ($r->count() == 0) { + break; + } + // . + $books_proprietaires = array(); + while ($r->fetch()) { + $c = $core->con->openCursor('books'); + $c->book_id = $r->bid; + $c->nom = $r->titre; + $c->lang = $r->lang; + $c->theme = $r->tid; + $books_proprietaires[$r->bid] = $c->proprietaire = getWsUser($r->uid); + $c->status = $r->status; + $c->date_status = $r->date_status; + $c->hash = $r->code; + $c->compteur_visites = 20; + $c->date = $r->date; + $parametres = new wsBookParametres(); + $parametres->fromRecord($r); + $parametres->fromXML(simplexml_load_string('' . $r->extras . '')); + $c->parametres = serialize($parametres); + $c->insert(); + } + // Importe les pages des fluidbooks + $r = $core->con->select('SELECT * FROM ws.book_pages ORDER BY bid,bpid'); + while ($r->fetch()) { + if (!isset($docs[$r->did])) { + $c = $core->con->openCursor('documents'); + $c->document_id = $r->did; + $c->proprietaire = $books_proprietaires[$r->bid]; + $c->insert(); + $docs[$r->did] = true; + } + + $c = $core->con->openCursor('book_pages'); + $c->book_id = $r->bid; + $c->document_id = $r->did; + $c->book_page = $r->bpid; + $c->document_page = $r->dpid; + $c->insert(); + } +} + +foreach($tables as $t) { + $core->con->execute('ALTER TABLE ' . $t . ' ENABLE KEYS'); +} + +function getWsUser($oldid) +{ + global $ws2ext; + if (!isset($ws2ext[$oldid])) { + $ws2ext[$oldid] = 5; + } + return $ws2ext[$oldid]; +} + +?> \ No newline at end of file diff --git a/inc/config.inc.php b/inc/config.inc.php new file mode 100644 index 000000000..db9b73bb2 --- /dev/null +++ b/inc/config.inc.php @@ -0,0 +1,68 @@ + \ No newline at end of file diff --git a/inc/extranet/Controlleur/_common.php b/inc/extranet/Controlleur/_common.php new file mode 100644 index 000000000..4dab0c9ff --- /dev/null +++ b/inc/extranet/Controlleur/_common.php @@ -0,0 +1,15 @@ + \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.extranet.ajax.php b/inc/extranet/Controlleur/class.extranet.ajax.php new file mode 100644 index 000000000..daa8768a3 --- /dev/null +++ b/inc/extranet/Controlleur/class.extranet.ajax.php @@ -0,0 +1,970 @@ + 2?' colspan="' . ($cols-1) . '"':''; + $res = extranetPage::bh(); + $res .= '
'; + $res .= ''; + $res .= '' . $core->typo->Titre($titre) . ''; + $res .= $form; + if ($bouton) { + $res .= ''; + } + $res .= '
' . cubeMedia::image(IMG . '/close.png') . '
' . $core->typo->BoutonOK($bouton) . '
'; + $res .= $extra; + $res .= '
'; + $res .= extranetPage::bf(); + echo $res; + exit; + } + + public static function page($liste, $page) + { + global $core; + $core->user->changeSettings($liste, 'page', $page); + $core->sauvePreferencesUtilisateur(); + } + + public static function parPage($liste, $nb) + { + global $core; + $core->user->changeSettings($liste, 'par_page', $nb); + $core->user->changeSettings($liste, 'page', 1); + $core->sauvePreferencesUtilisateur(); + } + + public static function sort($liste, $orderby) + { + global $core; + $settings = $core->user->getSettings($liste); + if ($orderby == 'facture_id') { + $orderby = 'CAST(facture_id AS SIGNED)'; + } + + if ($settings['orderby'] == $orderby) { + $sens = ($settings['sens'] == 'ASC')?'DESC':'ASC'; + $core->user->changeSettings($liste, 'orderby', $orderby); + $core->user->changeSettings($liste, 'sens', $sens); + } else { + $core->user->changeSettings($liste, 'orderby', $orderby); + $core->user->changeSettings($liste, 'sens', 'ASC'); + } + $core->sauvePreferencesUtilisateur(); + } + + public static function filtre($liste, $data = null) + { + global $core; + $core->user->changeSettings($liste, 'filtres', $data); + $core->user->changeSettings($liste, 'page', 1); + $core->sauvePreferencesUtilisateur(); + } + + public static function motdepasseOublie($args, &$x) + { + self::form('recupMotdepasse', 'Mot de passe oublié ?', extranetUrl::motdepasseOublie($args), __('Recevoir mon mot de passe par e-mail')); + } + + public static function mesParametres($args, &$x) + { + self::form('sauveMesParametres', 'Mes paramètres', extranetUrl::mesParametres($args), false); + } + + public static function sauveMesParametres($args, &$x) + { + global $core; + $dao = new extranetDAOUtilisateur($core->con); + $dao->changeParametres($core->user->utilisateur_id, $_POST['lang'], $_POST['login']); + $x->addRedirection(); + } + + public static function recupMotdepasse($args, &$x) + { + global $core; + $dao = new extranetDAOUtilisateur($core->con); + $utilisateur = $dao->selectByEmail($_POST['email']); + + if (!is_null($utilisateur)) { + $mail = new cubeMail(); + $mail->from = 'contact@cubedesigners.com'; + $mail->bcc = 'contact@cubedesigners.com'; + $mail->subject = '[' . __('Extranet Cubedesigners') . '] ' . __('Récupération de vos identifiants'); + $mail->to = $utilisateur->prenom . ' ' . $utilisateur->nom . '<' . $utilisateur->email . '>'; + $body = __('Bonjour,') . "\r\n\r\n"; + $body .= __('Vous avez demandé la récupération de votre mot de passe sur notre extranet.') . "\r\n"; + $body .= __('Voici toutes les informations vous permettant de vous y connecter à nouveau :') . "\r\n\r\n"; + $body .= __('Adresse') . ' : http://extranet.cubedesigners.com/' . "\r\n"; + $body .= __('Identifiant') . ' : ' . $utilisateur->email . "\r\n"; + $body .= __('Mot de passe') . ' : ' . $utilisateur->password . "\r\n\r\n"; + $body .= __('Cordialement,') . "\r\n"; + $body .= __("L'Equipe Cubedesigners"); + $mail->body = $body; + $ok = $mail->send(); + $message = $ok?__('Vos identifiants vous ont été envoyé par e-mail'):__("Une erreur s'est produite lors de l'envoi de vos identifiants"); + } else { + $message = __('Cet e-mail ne correspond à aucun utilisateur du système'); + } + $x->addAlert($message); + $x->addClosePopup(); + } + + public static function changeMotdepasse($args, &$x) + { + self::form('sauveMotdepasse', 'Changer mon mot de passe', extranetUrl::changeMotdepasse(), __('Enregistrer mon nouveau mot de passe')); + } + + public static function sauveMotdepasse($args, &$x) + { + global $core; + + $ok = true; + if ($_POST['actuel'] != $core->user->password) { + $x->addError('actuel', ''); + $ok = false; + } else { + $x->addOk('actuel'); + } + + if (strlen($_POST['nouveau']) > 10 || strlen($_POST['nouveau']) < 6 || $_POST['nouveau'] != $_POST['confirmation']) { + $x->addError('nouveau', ''); + $x->addError('confirmation', ''); + $ok = false; + } else { + $x->addOk('nouveau'); + $x->addOk('confirmation'); + } + + if ($ok) { + $dao = new extranetDAOUtilisateur($core->con); + $dao->changeMotdepasse($core->user->utilisateur_id, $_POST['nouveau']); + + $_SESSION['user_password'] = $_POST['password']; + $x->addClosePopup(); + $x->addAlert(__('Votre mot de passe a été modifié')); + } + } + + public static function formClient($args, &$x) + { + global $core; + if ($args[1] == 'new') { + $extra = ''; + } else { + $extra = '




' . extranetUrl::listeContacts($args[1]) . '
'; + } + $extra .= '



' . $core->typo->BoutonOK(__('Enregistrer')) . '

'; + + self::form('saveClient', __("Edition d'un client"), extranetUrl::formClient($args[1]), false, 2, '', $extra); + } + + public static function formContact($args, &$x) + { + if (!isset($args[2])) { + $args[2] = null; + } + self::form('saveContact', __("Edition d'un contact"), extranetUrl::formContact($args[1], $args[2])); + } + + public static function formNotes($args, &$x) + { + global $core; + self::form('saveNotes', __('Edition des notes'), extranetUrl::formNotes($args[1])); + } + + public static function saveClient($args, &$x) + { + global $core; + $dao = new extranetDAOEntreprise($core->con); + $entreprise = $dao->sauve($_POST); + if ($_POST['entreprise_id'] == 'new') { + $data = $_POST['contact']; + $data['entreprise'] = $entreprise->entreprise_id; + $data['utilisateur_id'] = 'new'; + $data['adresse'] = $entreprise->adresse; + $data['code_postal'] = $entreprise->code_postal; + $data['ville'] = $entreprise->ville; + $data['pays'] = $entreprise->pays; + $data['grade'] = 0; + $daoClient = new extranetDAOClient($core->con); + try { + $daoClient->sauve($data); + } + catch(exception $e) { + fb($e); + $dao->supprime($entreprise->entreprise_id); + } + } + + $x->addContent('listeClients', extranetUrl::listeClients()); + $x->addClosePopup(); + } + + public static function saveNotes($args, &$x) + { + global $core; + $dao = new extranetDAOClient($core->con); + $dao->sauveNotes($_POST['utilisateur_id'], $_POST['notes']); + $x->addClosePopup(); + } + + public static function saveContact($args, &$x) + { + global $core; + $dao = new extranetDAOClient($core->con); + $client = $dao->sauve($_POST); + $x->addClosePopup(); + $x->addContent('devisAdresseDisplay', extranetUrl::adresse($client->utilisateur_id, null, 'devis')); + $x->addContent('factureAdresseDisplay', extranetUrl::adresse($client->utilisateur_id, null, 'facture')); + $x->addContent('listeContacts', extranetUrl::listeContacts($client->entreprise)); + $contacts = array(); + $client_contacts = $dao->getContactsOfEntreprise($client->entreprise); + foreach($client_contacts as $c) { + $contacts[] = '' . $c->prenom . ' ' . $c->nom . ''; + } + $x->addContent('contacts_' . $client->entreprise, implode(', ', $contacts)); + + $x->addPopupDimensions(); + } + + public static function supprimeClient($args, &$x) + { + global $core; + $dao = new extranetDAOEntreprise($core->con); + $dao->supprime($args[1]); + + $x->addContent('listeClients', extranetUrl::listeClients()); + } + + public static function searchClients($args, &$x) + { + $x->addContent('listeClients', extranetUrl::listeClients()); + } + + public static function sortClient($args, &$x) + { + self::sort('clients', $args[1]); + $x->addContent('listeClients', extranetUrl::listeClients()); + } + public static function sortEquipier($args, &$x) + { + self::sort('equipiers', $args[1]); + $x->addContent('listeEquipiers', extranetUrl::listeRh()); + } + + public static function pageClient($args, &$x) + { + self::page('clients', $args[1]); + $x->addContent('listeClients', extranetUrl::listeClients()); + } + + public static function parPageClient($args, &$x) + { + self::parPage('clients', $_POST['par_page']); + $x->addContent('listeClients', extranetUrl::listeClients()); + } + + public static function filtreClients($args, &$x) + { + if (isset($args[1]) && $args[1] == 'efface') { + self::filtre('clients'); + $x->addReload(); + return; + } else { + self::filtre('clients', $_POST); + $x->addContent('listeClients', extranetUrl::listeClients()); + } + } + + public static function clientDetailCa($args, &$x) + { + global $core; + $dao = new extranetDAOEntreprise($core->con); + $client = $dao->selectById($args[1]); + return self::form('', __("Détail du chiffre d'affaire de") . ' ' . $client->nom, extranetUrl::clientDetailCa($args[1]), false); + } + + public static function clientDetailImpaye($args, &$x) + { + global $core; + $dao = new extranetDAOEntreprise($core->con); + $client = $dao->selectById($args[1]); + return self::form('', __("Détail des impayés de") . ' ' . $client->nom, extranetUrl::clientDetailImpaye($args[1]), false, 4); + } + + public static function formProjet($args, &$x) + { + self::form('saveProjet', __("Edition d'un projet"), extranetUrl::formProjet($args[1])); + } + + public static function saveProjet($args, &$x) + { + global $core; + $dao = new extranetDAOProjet($core->con); + $id = $dao->sauve($_POST); + + $x->addContent('listeProjets', extranetUrl::listeProjets()); + $x->addRedirection(SITE_PATH . 'projet/' . $id); + } + + public static function changeProjetStatus($args, &$x) + { + global $core; + $dao = new extranetDAOProjet($core->con); + $dao->changeStatus($args[1]); + + $x->addContent('listeProjet', extranetUrl::listeProjet($args[1])); + } + + public static function changeProjetsStatus($args, &$x) + { + global $core; + $dao = new extranetDAOProjet($core->con); + $dao->changeStatus($args[1]); + + $x->addContent('listeProjets', extranetUrl::listeProjets($args[1])); + } + + public static function supprimeProjet($args, &$x) + { + global $core; + $dao = new extranetDAOProjet($core->con); + $dao->supprime($args[1]); + + $x->addRedirection(SITE_PATH . 'projets'); + } + + public static function searchProjets($args, &$x) + { + $x->addContent('listeProjets', extranetUrl::listeProjets()); + } + + public static function pageProjet($args, &$x) + { + self::page('projets', $args[1]); + $x->addContent('listeProjets', extranetUrl::listeProjets()); + } + public static function parPageProjet($args, &$x) + { + self::parPage('projets', $_POST['par_page']); + $x->addContent('listeProjets', extranetUrl::listeProjets()); + } + + public static function sortProjet($args, &$x) + { + self::sort('projets', $args[1]); + $x->addContent('listeProjets', extranetUrl::listeProjets()); + } + + public static function filtreProjet($args, &$x) + { + if (isset($args[1]) && $args[1] == 'efface') { + self::filtre('projets'); + $x->addReload(); + return; + } else { + self::filtre('projets', $_POST); + $x->addContent('listeProjets', extranetUrl::listeProjets()); + } + } + + public static function formTacheNormale($args, &$x) + { + $projet = isset($args[2])?$args[2]:null; + self::form('saveTache', __("Edition d'un tâche"), extranetUrl::formTacheNormale($args[1], $projet)); + } + + public static function formTacheSousTraitee($args, &$x) + { + $projet = isset($args[2])?$args[2]:null; + self::form('saveTache', __("Edition d'un tâche sous-traitée"), extranetUrl::formTacheSousTraitee($args[1], $projet)); + } + + public static function saveTache($args, &$x) + { + global $core; + $dao = new extranetDAOTache($core->con); + $dao->sauve($_POST); + + $x->addContent('listeProjet', extranetUrl::listeProjet($_POST['projet'])); + $x->addClosePopup(); + } + + public static function supprimeTache($args, &$x) + { + global $core; + $dao = new extranetDAOTache($core->con); + $tache = $dao->selectById($args[1]); + + $dao->supprime($args[1]); + $x->addContent('listeProjet', extranetUrl::listeProjet($tache->projet)); + } + + public static function saveTimereport($args, &$x) + { + global $core; + $date = $args[1]; + $heures = $args[3]; + $tache_id = $args[2]; + $dao = new extranetDAOTimereport($core->con); + + $x->addValue('t_' . $date . '_' . $tache_id, $dao->sauve($core->user->utilisateur_id, $tache_id, $date, $heures)); + // Mise a jour des valeurs pour le projet et la tâche + $daoProjet = new extranetDAOProjet($core->con); + $projet = $daoProjet->getProjetByTache($tache_id); + foreach($projet as $p) { + $p->progression = !$p->progression?'-':$p->progression . '%'; + $p->jours_consommes = !$p->jours_consommes?'-':$p->jours_consommes; + foreach($p->taches as $t) { + if ($t->tache_id != $tache_id) { + continue; + } + $t->progression = !$t->progression?'-':$t->progression . '%'; + $t->jours_consommes = !$t->jours_consommes?'-':$t->jours_consommes; + break; + } + $x->addContent('progress_projet_' . $p->projet_id, $p->progression); + $x->addContent('consommees_projet_' . $p->projet_id, $p->jours_consommes); + $x->addContent('progress_' . $tache_id, $t->progression); + $x->addContent('consommees_' . $tache_id, $t->jours_consommes); + } + } + + public static function sortTimereport($args, &$x) + { + self::sort('timereport', $args[1]); + $x->addContent('listeTimereport', extranetUrl::listeTimereport()); + } + + public static function pageTimereport($args, &$x) + { + self::page('timereport', $args[1]); + $x->addContent('listeTimereport', extranetUrl::listeTimereport()); + } + + public static function searchTimereport($args, &$x) + { + $x->addContent('listeTimereport', extranetUrl::listeTimereport()); + } + + public static function parPageTimereport($args, &$x) + { + self::parPage('timereport', $_POST['par_page']); + $x->addContent('listeTimereport', extranetUrl::listeTimereport()); + } + + public static function filtreTimereport($args, &$x) + { + if (isset($args[1]) && $args[1] == 'efface') { + self::filtre('timereport'); + $x->addReload(); + return; + } else { + self::filtre('timereport', $_POST); + $x->addContent('listeTimereport', extranetUrl::listeTimereport()); + } + } + + public static function changeDevisStatus($args, &$x) + { + global $core; + $dao = new extranetDAODevis($core->con); + $dao->changeStatus($args[1], $args[2]); + + if (isset($args[3]) && $args[3] == 'createProjet') { + $daoProjet = new extranetDAOProjet($core->con); + $projet_id = $daoProjet->createFromDevis($args[1], $core->user->utilisateur_id); + $x->addRedirection(SITE_PATH . 'projet/' . $projet_id); + } else { + $x->addContent('listeDevis', extranetUrl::listeDevis()); + } + } + + public static function supprimeDevis($args, &$x) + { + global $core; + $dao = new extranetDAODevis($core->con); + $dao->supprime($args[1]); + @unlink(ROOT . '/devis/' . $args[1] . '.pdf'); + + $x->addContent('listeDevis', extranetUrl::listeDevis()); + $x->addContent('listeDevis', extranetUrl::listeDevis()); + } + + public static function searchDevis($args, &$x) + { + $x->addContent('listeDevis', extranetUrl::listeDevis()); + } + + public static function pageDevis($args, &$x) + { + self::page('devis', $args[1]); + $x->addContent('listeDevis', extranetUrl::listeDevis()); + } + + public static function parPageDevis($args, &$x) + { + self::parPage('devis', $_POST['par_page']); + $x->addContent('listeDevis', extranetUrl::listeDevis()); + } + + public static function sortDevis($args, &$x) + { + self::sort('devis', $args[1]); + $x->addContent('listeDevis', extranetUrl::listeDevis()); + } + + public static function filtreDevis($args, &$x) + { + if (isset($args[1]) && $args[1] == 'efface') { + self::filtre('devis'); + $x->addReload(); + return; + } else { + self::filtre('devis', $_POST); + $x->addContent('listeDevis', extranetUrl::listeDevis()); + } + } + + public static function sortDevisClient($args, &$x) + { + self::sort('devis', $args[1]); + $x->addContent('listeDevis', extranetUrl::listeDevisClient()); + } + + public static function expedieDevis($args, &$x) + { + global $core; + $dao = new extranetDAODevis($core->con); + $devis = $dao->selectByID($args[2]); + + $daoUtilisateur = new extranetDAOUtilisateur($core->con); + $devis->client = $daoUtilisateur->selectById($devis->client_id); + $devis->createur = $daoUtilisateur->selectById($devis->createur_id); + + if ($args[1] == 1) { + // Envoie de l'email + $mail = new cubeMail(); + $mail->from = $devis->createur->getEmail(); + $mail->bcc = MAIL_BCC; + $mail->bcc = $devis->createur->getEmail(); + $mail->to = $devis->client->getEmail(); + $mail->subject = $devis->email['sujet']; + $mail->body = $devis->email['corps'] . "\r\n\r\n" . $devis->createur->getSignature(); + $mail->addFile('Devis.pdf', ROOT . '/devis/' . $devis->devis_id . '.pdf'); + $mail->send(); + } + // On marque le devis comme envoyé + $dao->changeStatus($devis->devis_id, 1); + $x->addRedirection(SITE_PATH . 'devis'); + } + + public static function duplicateDevis($args, &$x) + { + global $core; + $dao = new extranetDAODevis($core->con); + $devis = $dao->duplique($args[1], $core->user->utilisateur_id); + $x->addRedirection(SITE_PATH . 'editedevis/' . $devis->devis_id); + } + + public static function changeFactureStatus($args, &$x) + { + global $core; + $dao = new extranetDAOFacture($core->con); + $dao->changeStatus($args[1], $args[2]); + + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + + public static function changeFacturePaiement($args, &$x) + { + return self::form('saveFacturePaiement', __('Informations relatives au paiement de la facture'), extranetUrl::formFacturePaiement($args[1])); + } + + public static function saveFacturePaiement($args, &$x) + { + global $core; + $dao = new extranetDAOFacture($core->con); + $dao->savePaiement($_POST); + $x->addClosePopup(); + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + + public static function supprimeFacture($args, &$x) + { + global $core; + $dao = new extranetDAOFacture($core->con); + $dao->supprime($args[1]); + @unlink(ROOT . '/facture/' . $args[1] . '.pdf'); + + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + + public static function valideFacture($args, &$x) + { + global $core; + $dao = new extranetDAOFacture($core->con); + $dao->valide($args[1]); + + $x->addRedirection(SITE_PATH . 'factures'); + } + + public static function searchFactures($args, &$x) + { + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + + public static function pageFacture($args, &$x) + { + self::page('factures', $args[1]); + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + + public static function parPageFacture($args, &$x) + { + self::parPage('factures', $_POST['par_page']); + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + + public static function sortFacture($args, &$x) + { + self::sort('factures', $args[1]); + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + + public static function filtreFactures($args, &$x) + { + if (isset($args[1]) && $args[1] == 'efface') { + self::filtre('factures'); + $x->addReload(); + return; + } else { + self::filtre('factures', $_POST); + $x->addContent('listeFactures', extranetUrl::listeFactures()); + } + } + + public static function sauveFactures($args, &$x) + { + global $core; + $dao = new extranetDAOFacture($core->con); + $dao->sauve($_POST); + + $x->addRedirection(SITE_PATH . 'factures'); + } + + public static function duplicateFacture($args, &$x) + { + global $core; + + $dao = new extranetDAOFacture($core->con); + $facture = $dao->duplique($args[1], $core->user->utilisateur_id); + + $x->addRedirection(SITE_PATH . 'editefacture/' . $facture->facture_id); + } + + public static function formPrintFactures($args, &$x) + { + self::form('printFactures', __('Imprimer des factures'), extranetUrl::formPrintFactures(), __("Lancer l'impression")); + } + + public static function printFactures($args, &$x) + { + global $core; + $factures = cubeArray::parseRange($_POST['factures']); + + $liste = array(); + foreach($factures as $f) { + if (file_exists(ROOT . '/factures/' . $f . '.pdf')) { + $liste[] = ROOT . '/factures/' . $f . '.pdf'; + } + } + $liste[] = 'output'; + $liste[] = ROOT . '/factures/print_' . $core->user->utilisateur_id . '_' . TIME . '.pdf'; + + $pdftk = new cubeCommandLine('/usr/local/bin/pdftk'); + $pdftk->setManualArg(implode(' ', $liste)); + $pdftk->execute(); + + $core->user->saveLastPrint($_POST['factures']); + + $x->addClosePopup(); + $x->addTruePopup(SITE_PATH . 'voirfacture/print_' . $core->user->utilisateur_id . '_' . TIME); + $core->sauvePreferencesUtilisateur(); + } + + public static function formDashboard($args, &$x) + { + self::form('saveDashboard', __('Ajouter un élément au dashboard'), extranetUrl::formDashboard($args)); + } + + public static function saveDashboard($args, &$x) + { + global $core; + + $c = $core->con->openCursor('dashboard'); + $c->nom = $_POST['nom']; + if ($_POST['dashboard_id'] == 'new') { + $c->rubrique = $_POST['rubrique']; + $c->equipier = $core->user->utilisateur_id; + $c->settings = serialize($core->user->getSettings($_POST['rubrique'])); + $r = $core->con->select('SELECT MAX(dashboard_id) AS dashboard_id FROM dashboard'); + $c->dashboard_id = $r->dashboard_id + 1; + $c->insert(); + } else { + $c->update('WHERE dashboard_id=\'' . $_POST['dashboard_id'] . '\''); + } + $x->addRedirection(SITE_PATH); + } + + public static function pageDashboard($args, &$x) + { + $settings = self::getDashboardSettings($args[1]); + $settings['page'] = $args[2]; + $r = self::saveDashboardSettings($args[1], $settings); + $x->addContent('dashboard_' . $args[1], extranetUrl::displayDashboard($r)); + } + + public static function parPageDashboard($args, &$x) + { + $settings = self::getDashboardSettings($args[1]); + $settings['par_page'] = $_POST['par_page']; + $settings['page'] = 1; + $r = self::saveDashboardSettings($args[1], $settings); + $x->addContent('dashboard_' . $args[1], extranetUrl::displayDashboard($r)); + } + + public static function sortDashboard($args, &$x) + { + $settings = self::getDashboardSettings($args[1]); + if ($settings['orderby'] == $args[2]) { + $settings['sens'] = ($settings['sens'] == 'ASC')?'DESC':'ASC'; + } else { + $settings['orderby'] = $args[2]; + $settings['sens'] = 'ASC'; + } + $r = self::saveDashboardSettings($args[1], $settings); + $x->addContent('dashboard_' . $args[1], extranetUrl::displayDashboard($r)); + } + + public static function saveDashboardSettings($dashboard, $settings) + { + global $core; + + $settings['page'] = $settings['page']?$settings['page']:1; + + if ($settings['par_page'] > 0) { + $settings['limit'] = array(($settings['page']-1) * $settings['par_page'], $settings['par_page']); + } else { + $settings['limit'] = null; + } + + $c = $core->con->openCursor('dashboard'); + $c->settings = serialize($settings); + $c->update('WHERE dashboard_id=' . $dashboard); + return $core->con->select('SELECT * FROM dashboard WHERE dashboard_id=\'' . $core->con->escape($dashboard) . '\''); + } + + public static function getDashboardSettings($dashboard) + { + global $core; + $r = $core->con->select('SELECT * FROM dashboard WHERE dashboard_id=\'' . $core->con->escape($dashboard) . '\''); + return unserialize($r->settings); + } + + public static function delDashboard($args, &$x) + { + global $core; + $r = $core->con->execute('DELETE FROM dashboard WHERE dashboard_id=\'' . $core->con->escape($args[1]) . '\' AND equipier=\'' . $core->user->utilisateur_id . '\''); + $x->addReplace('dashboard_' . $args[1], ''); + } + + public static function reloadDashboards($args, &$x) + { + $x->addContent('dash', extranetUrl::listeDashboard(array())); + } + + public static function orderDashboards($args, &$x) + { + global $core; + $c = $core->con->openCursor('dashboard'); + $i = 1; + foreach($_GET['dashboard'] as $id) { + $c->sort = $i; + $c->update('WHERE dashboard_id=\'' . $core->con->escape($id) . '\''); + $i++; + } + } + + public static function toggleDashboard($args, &$x) + { + global $core; + + $r = $core->con->select('SELECT state FROM dashboard WHERE dashboard_id=\'' . $core->con->escape($args[1]) . '\''); + $new = ($r->state == '1')?'0':'1'; + + $c = $core->con->openCursor('dashboard'); + $c->state = $new; + $c->update('WHERE dashboard_id=\'' . $core->con->escape($args[1]) . '\''); + } + + public static function getAdresseForDevis($args, &$x) + { + $adresse = extranetUrl::adresse($args[1], null, 'devis'); + if (!$adresse) { + $x->addError('client_nom', ''); + } else { + $x->addContent('devisAdresseDisplay', $adresse); + } + } + + public static function getAdresseForFacture($args, &$x) + { + $adresse = extranetUrl::adresse(null, $args[1], 'facture'); + if (!$adresse) { + $x->addError('projet_nom', ''); + } else { + $x->addContent('factureAdresseDisplay', $adresse); + } + } + + public static function saveTrad($args, &$x) + { + $data = cubeLang::dataToFile($_POST); + file_put_contents(L10N . '/en/main.lang.php', $data); + } + + public static function previewDevis($args, &$x) + { + global $core; + + $daoUtilisateur = new extranetDAOUtilisateur($core->con); + if (is_null($daoUtilisateur->selectById($_POST['client']))) { + $x->addError('client_nom'); + $x->addRedirection('#'); + return; + } + + extranetDroits::min(1); + $dao = new extranetDAODevis($core->con); + $devis = $dao->sauve($core->user->utilisateur_id, $_POST); + $dao->saveAsPdf($devis->devis_id); + $x->addRedirection(SITE_PATH . 'previewDevis/' . $devis->devis_id); + } + + public static function previewFacture($args, &$x) + { + global $core; + extranetDroits::min(1); + + $daoProjet = new extranetDAOProjet($core->con); + $daoClient = new extranetDAOClient($core->con); + if (is_null($daoProjet->selectById($_POST['projet'])) && (!isset($_POST['client']) || is_null($daoClient->selectById($_POST['client'])))) { + $x->addError('projet_nom'); + $x->addRedirection('#'); + return; + } + + $dao = new extranetDAOFacture($core->con); + $facture = $dao->sauve($_POST, $core->user->utilisateur_id); + $dao->saveAsPdf($facture->facture_id); + $x->addRedirection(SITE_PATH . 'previewFacture/' . $facture->facture_id); + } + + public static function chargesDetails($args, &$x) + { + self::form('', sprintf(__("Détails des charges de l'année %s"), date('Y')), extranetPageChiffres::chargesDetails($args), '', 3, 'liste'); + } + + public static function sortFichiers($args, &$x) + { + self::sort('fichiers', $args[1]); + $x->addContent('listeFichiers', extranetUrl::listeFichiers()); + } + + public static function pageFichiers($args, &$x) + { + self::page('fichiers', $args[1]); + $x->addContent('listeFichiers', extranetUrl::listeFichiers()); + } + + public static function parPageFichiers($args, &$x) + { + self::parPage('fichiers', $_POST['par_page']); + $x->addContent('listeFichiers', extranetUrl::listeFichiers()); + } + + public static function searchFichiers($args, &$x) + { + $x->addContent('listeFichiers', extranetUrl::listeFichiers()); + } + + public static function refreshFichiers($args, &$x) + { + $x->addContent('listeFichiers', extranetUrl::listeFichiers()); + } + + public static function supprimeFichier($args, &$x) + { + global $core; + + array_shift($args); + $path = implode('/', $args); + $entreprise = array_shift($args); + extranetDroits::telecharger($entreprise); + + $dao = new extranetDAOFichier($core->con); + $dao->supprime($path); + $x->addContent('listeFichiers', extranetUrl::listeFichiers()); + } + + public static function supprimeBook($args, &$x) + { + global $core; + $dao = new wsDAOBook($core->con); + $dao->supprime($args[1]); + $x->addContent('listeBooks', extranetUrl::listeBooks()); + } + + public static function searchBooks($args, &$x) + { + $x->addContent('listeBooks', wsUrl::listeBooks()); + } + + public static function pageBooks($args, &$x) + { + self::page('books', $args[1]); + $x->addContent('listeBooks', wsUrl::listeBooks()); + } + + public static function parPageBooks($args, &$x) + { + self::parPage('books', $_POST['par_page']); + $x->addContent('listeBooks', wsUrl::listeBooks()); + } + + public static function sortBooks($args, &$x) + { + self::sort('books', $args[1]); + $x->addContent('listeBooks', wsUrl::listeBooks()); + } + + public static function filtreBooks($args, &$x) + { + if (isset($args[1]) && $args[1] == 'efface') { + self::filtre('books'); + $x->addReload(); + return; + } else { + self::filtre('books', $_POST); + $x->addContent('listeBooks', wsUrl::listeBooks()); + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.extranet.core.php b/inc/extranet/Controlleur/class.extranet.core.php new file mode 100644 index 000000000..42c106d93 --- /dev/null +++ b/inc/extranet/Controlleur/class.extranet.core.php @@ -0,0 +1,446 @@ +dbSync(); + + cubeLang::set(); + $this->authentifie(); + + if ($this->user) { + // Défini la langue de l'utilisateur en fonction du contenu de user + cubeLang::set($this->user->lang); + } else { + // Sinon défini la langue par défaut (basée sur les entêtes envoyées + // par le navigateur) + cubeLang::set(); + } + + $this->grades = array(0 => __('Client'), 1 => __('Equipier'), 2 => __('Gérant'), 3 => __('Comptable')); + $this->categories = array(0 => __('Non défini'), 1 => __('Gestion de projet'), + 2 => __('Design Web'), 3 => __('Design Industriel'), 4 => __('Print'), + 5 => __('Newsletter'), 6 => __('Développement PHP'), 7 => __('Développement Flash'), + 8 => __('Fluidbook'), 9 => __('Formation'), 10 => __('Administratif'), 11 => __('Divers'), + 12 => __('Intégration HTML'), 13 => __('Motion design'), 14 => __('Design graphique'), 15 => __('Bandeaux de pub')); + $this->projets_status = array(0 => __('En cours'), 1 => __('Terminé')); + $this->devis_status = array(0 => __('Brouillon'), 1 => __('Envoyé'), + 2 => __('Validé'), 3 => __('Refusé')); + $this->factures_status = array(0 => __('Brouillon'), 1 => __('Attente'), + 2 => __('Payée'), 3 => __('Annulée'), 4 => __('Avoir')); + $this->books_status = array(0 => __('Prêt'), 1 => __('Téléchargé'), 2 => __('Facturé')); + $this->agences = array('Paris', 'Montpellier'); + } + + /** + * extranetCore::authentifie() + * + * Gère l'authentification à l'application + * Si des données proviennent de la validation d'un formulaire de login, + * elles sont copiées en tant que variable de session + * L'utilisateur courant est crée en fonction du contenu de ces variables + * + * @return + */ + protected function authentifie() + { + // On regarde si user_email et user_password ont été postées + // Si c'est le cas, on les copie dans la session + if (isset($_POST['user_email'])) { + $_SESSION['user_email'] = $_POST['user_email']; + } + + if (isset($_POST['user_password'])) { + $_SESSION['user_password'] = $_POST['user_password']; + } + // Maintenant on vérifie si ces variables sont présentes dans la session + if (!isset($_SESSION['user_email']) || !isset($_SESSION['user_password'])) { + // Ce n'est pas le cas, on place la variable connected à false + // Et on s'arrête là + $this->user = false; + return; + } + // Les variables sont présentes on vérifie la validité des informations + // Dans la base de données + // Utilisateur connecté à l'interface + $dao = new extranetDAOUtilisateur($this->con); + $this->user = $dao->selectByLoginPassword($_SESSION['user_email'], $_SESSION['user_password']); + } + + /** + * extranetCore::dbSync() + * + * Fonction permettant de modéliser le contenu de la base de données + * et de la synchroniser le cas échéant. + * + * @return void + */ + /** + * extranetCore::dbSync() + * + * @return + */ + public function dbSync() + { + $cache = ROOT . '/cache/DB_SYNC'; + if (!file_exists($cache)) { + touch($cache); + $dosync = true; + } else { + $dosync = filemtime(__FILE__) > filemtime($cache); + } + + if (!$dosync) { + return; + } + + $db = new CubeDbStruct($this->con); + // Table utilisateurs + $db->utilisateurs->utilisateur_id('integer', 0, false); + $db->utilisateurs->login('varchar', 128, false); + $db->utilisateurs->email('varchar', 128, false); + $db->utilisateurs->password('varchar', 40, false); + $db->utilisateurs->nom('varchar', 64, false); + $db->utilisateurs->prenom('varchar', 64, false); + $db->utilisateurs->agence('varchar', 64, true); + $db->utilisateurs->entreprise('integer', 0, false); + $db->utilisateurs->grade('integer', 1, false); + $db->utilisateurs->adresse('varchar', 512, false); + $db->utilisateurs->code_postal('varchar', 20, false); + $db->utilisateurs->ville('varchar', 64, false); + $db->utilisateurs->pays('varchar', 2, false); + $db->utilisateurs->telephone('varchar', 30, false); + $db->utilisateurs->mobile('varchar', 30, false); + $db->utilisateurs->fax('varchar', 30, false); + $db->utilisateurs->lang('varchar', 2, false, '\'fr\''); + $db->utilisateurs->date_creation('integer', 0, false); + $db->utilisateurs->settings('text', 0, false); + $db->utilisateurs->notes('text', 0, false); + $db->utilisateurs->ws_grade('float', 0, false, -1); + $db->utilisateurs->ws_password('varchar', 40, false); + $db->utilisateurs->ws_admin('integer', 0, false, 1); + $db->utilisateurs->ws_id('integer', 0, true); + // Clés + $db->utilisateurs->primary('pk_utilisateurs', 'utilisateur_id'); + $db->utilisateurs->unique('unique_utilisateurs_email', 'email'); + $db->utilisateurs->index('index_utilisateurs_nom', 'BTREE', 'nom'); + $db->utilisateurs->index('index_utilisateurs_prenom', 'BTREE', 'prenom'); + $db->utilisateurs->reference('fk_utilisateurs_entreprise', 'entreprise', 'entreprises', 'entreprise_id', false, false); + // Table entreprises + $db->entreprises->entreprise_id('integer', 0, false); + $db->entreprises->nom('varchar', 64, false); + $db->entreprises->adresse('varchar', 512, false); + $db->entreprises->code_postal('varchar', 20, false); + $db->entreprises->ville('varchar', 64, false); + $db->entreprises->pays('varchar', 2, false); + $db->entreprises->tva_intra('varchar', 14, false); + $db->entreprises->date_creation('integer', 0, false); + $db->entreprises->notes('text', 0, false); + $db->entreprises->site('varchar', 256, false); + // Clés + $db->entreprises->primary('pk_entreprises', 'entreprise_id'); + $db->entreprises->unique('unique_entreprises_nom', 'nom'); + // . + // Table projets + $db->projets->projet_id('integer', 0, false); + $db->projets->nom('varchar', 256, false); + $db->projets->date_creation('integer', 0, false); + $db->projets->date_debut('integer', 0, false); + $db->projets->date_fin('integer', 0, false); + $db->projets->deadline('integer', 0, false); + $db->projets->devis('integer', 0, false); + $db->projets->client('integer', 0, false); + $db->projets->chef('integer', 0, false); + $db->projets->status('integer', 1, false); + $db->projets->old('integer', 1, false); + // Clés + $db->projets->primary('pk_projets', 'projet_id'); + $db->projets->index('index_projets_status', 'BTREE', 'status'); + $db->projets->index('index_projets_nom', 'BTREE', 'nom'); + $db->projets->reference('fk_projets_client', 'client', 'utilisateurs', 'utilisateur_id', false, false); + $db->projets->reference('fk_projets_chef', 'chef', 'utilisateurs', 'utilisateur_id', false, false); + // . + // Table taches + $db->taches->tache_id('integer', 0, false); + $db->taches->nom('varchar', 256, false); + $db->taches->categorie('integer', 0, false); + $db->taches->type('integer', 1, false); + $db->taches->budget('float', 0, false); + $db->taches->taux_journalier('float', 0, false); + $db->taches->projet('integer', 0, false); + // Clés + $db->taches->primary('pk_taches', 'tache_id'); + $db->taches->reference('fk_taches_projet', 'projet', 'projets', 'projet_id'); + $db->taches->index('index_taches_nom', 'BTREE', 'nom'); + $db->taches->index('index_taches_categorie', 'BTREE', 'categorie'); + // . + // Table timereport + $db->timereport->utilisateur_id('integer', 0, false); + $db->timereport->tache_id('integer', 0, false); + $db->timereport->date('integer', 0, false); + $db->timereport->heures('integer', 2, false); + // Clés + $db->timereport->primary('pk_timereport', 'utilisateur_id', 'tache_id', 'date'); + $db->timereport->reference('fk_timereport_utilisateur_id', 'utilisateur_id', 'utilisateurs', 'utilisateur_id'); + $db->timereport->reference('fk_timereport_tache_id', 'tache_id', 'taches', 'tache_id'); + $db->timereport->index('index_timereport_date', 'BTREE', 'date'); + // . + // Table devis + $db->devis->devis_id('integer', 0, false); + $db->devis->nom('varchar', 256, false); + $db->devis->client('integer', 0, false); + $db->devis->createur('integer', 0, false); + $db->devis->lignes('text', 0, false); + $db->devis->status('integer', 1, false); + $db->devis->total_ht('float', 0, false); + $db->devis->date_creation('integer', 0, false); + $db->devis->email('text', 0, false); + $db->devis->adresse('text', 0, false); + // Clés + $db->devis->primary('pk_devis', 'devis_id'); + $db->devis->index('index_devis_status', 'BTREE', 'status'); + $db->devis->index('index_devis_nom', 'BTREE', 'nom'); + $db->devis->reference('fk_devis_client', 'client', 'utilisateurs', 'utilisateur_id'); + $db->devis->reference('fk_devis_createur', 'createur', 'utilisateurs', 'utilisateur_id'); + // . + // Table factures + $db->factures->facture_id('varchar', 8, false); + $db->factures->nom('varchar', 256, false); + $db->factures->projet('integer', 0, false); + $db->factures->createur('integer', 0, false); + $db->factures->lignes('text', 0, false); + $db->factures->status('integer', 1, false); + $db->factures->total_ht('float', 0, false); + $db->factures->date_creation('integer', 0, false); + $db->factures->texte_complementaire('text', 0, false); + $db->factures->adresse('text', 0, false); + $db->factures->informations_paiement('text', 0, false); + $db->factures->date_paiement('integer', 0, false); + $db->factures->avoir('varchar', 8, false); + // Clés + $db->factures->primary('pk_factures', 'facture_id'); + $db->factures->index('index_factures_status', 'BTREE', 'status'); + $db->factures->index('index_factures_nom', 'BTREE', 'nom'); + $db->factures->reference('fk_factures_projet', 'projet', 'projets', 'projet_id'); + $db->factures->reference('fk_factures_createur', 'createur', 'utilisateurs', 'utilisateur_id'); + // . + // Table dashboard + $db->dashboard->dashboard_id('integer', 0, false); + $db->dashboard->nom('varchar', 128, false); + $db->dashboard->settings('text', 0, false); + $db->dashboard->rubrique('varchar', 32, false); + $db->dashboard->equipier('integer', 0, false); + $db->dashboard->state('integer', 1, false, '1'); + $db->dashboard->sort('integer', 0, false); + // Clés + $db->dashboard->primary('pk_dashboard', 'dashboard_id'); + $db->dashboard->reference('fk_dashboard_equipier', 'equipier', 'utilisateurs', 'utilisateur_id'); + // . + // Table Signatures + $db->signatures->signature_id('integer', 0, false); + $db->signatures->nom('varchar', 256, false); + $db->signatures->fbcredit('varchar', 64, false); + $db->signatures->fblink('varchar', 64, false); + $db->signatures->partnercredit('varchar', 64, false); + $db->signatures->partnerlink('varchar', 64, false); + // Clés + $db->signatures->primary('pk_signatures', 'signature_id'); + // Table jeux d'icones + $db->icones->icone_id('integer', 0, false); + $db->icones->nom('varchar', 256, false); + $db->icones->proprietaire('integer', 0, false); + $db->icones->couleur('varchar', 6, false); + $db->icones->date('integer', 0, false); + // Clés + $db->icones->primary('pk_icones', 'icone_id'); + $db->icones->index('index_icones_nom', 'BTREE', 'nom'); + $db->icones->index('index_icones_date', 'BTREE', 'date'); + $db->icones->reference('fk_icones_proprietaire', 'proprietaire', 'utilisateurs', 'utilisateur_id'); + // Table thèmes + $db->themes->theme_id('integer', 0, false); + $db->themes->icones('integer', 0, false); + $db->themes->signature('integer', 0, false); + $db->themes->proprietaire('integer', 0, false); + $db->themes->nom('varchar', 256, false); + $db->themes->date('integer', 0, false); + $db->themes->parametres('text', 0, false); + // Clés + $db->themes->primary('pk_themes', 'theme_id'); + $db->themes->index('index_themes_nom', 'BTREE', 'nom'); + $db->themes->index('index_themes_date', 'BTREE', 'date'); + $db->themes->reference('fk_themes_icones', 'icones', 'icones', 'icone_id'); + $db->themes->reference('fk_themes_signature', 'signature', 'signatures', 'signature_id'); + $db->themes->reference('fk_themes_proprietaires', 'proprietaire', 'utilisateurs', 'utilisateur_id'); + // Table des langues + $db->langues->lang('varchar', 20, false); + $db->langues->nom('varchar', 256, false); + $db->langues->nsis_lang('varchar', 64, false); + $db->langues->public('integer', 1, false); + $db->langues->embeded('integer', 1, false); + $db->langues->textes('text', 0, false); + // Clés + $db->langues->primary('pk_langues', 'lang'); + // . + // Table documents + $db->documents->document_id('integer', 0, false); + $db->documents->file('varchar', 256, false); + $db->documents->proprietaire('integer', 0, false); + $db->documents->pages('integer', 0, false); + $db->documents->trim('text', 0, false); + $db->documents->date('integer', 0, false); + $db->documents->localInfos('text', 0, false); + // Clés + $db->documents->primary('pk_documents', 'document_id'); + $db->documents->index('index_documents_file', 'BTREE', 'file'); + $db->documents->index('index_documents_date', 'BTREE', 'date'); + $db->documents->reference('fk_documents_proprietaire', 'proprietaire', 'utilisateurs', 'utilisateur_id'); + // . + // Table pages des documents + $db->document_pages->document_id('integer', 0, false); + $db->document_pages->document_page('integer', 0, false); + $db->document_pages->text('text', 0, false); + $db->document_pages->links('text', 0, false); + // Clés + $db->document_pages->primary('pk_document_pages', 'document_id', 'document_page'); + // . + // Table Books + $db->books->book_id('integer', 0, false); + $db->books->nom('varchar', 256, false); + $db->books->lang('varchar', 20, false); + $db->books->theme('integer', 0, false); + $db->books->proprietaire('integer', 0, false); + // $db->books->projet('integer', 0, false); + $db->books->hash('varchar', 32, false); + $db->books->compteur_visites('integer', 0, false, 20); + $db->books->status('integer', 0, false); + $db->books->date_status('integer', 0, false); + $db->books->parametres('text', 0, false); + $db->books->date('integer', 0, false); + // Clés + $db->books->primary('pk_books', 'book_id'); + $db->books->index('index_books_nom', 'BTREE', 'nom'); + $db->books->reference('fk_books_proprietaire', 'proprietaire', 'utilisateurs', 'utilisateur_id'); + // $db->books->reference('fk_books_projet', 'projet', 'projets', 'projet_id'); + // $db->books->reference('fk_books_lang', 'lang', 'langues', 'lang'); + // . + // Table pages des publications + $db->book_pages->book_id('integer', 0, false); + $db->book_pages->book_page('integer', 0, false); + $db->book_pages->document_id('integer', 0, false); + $db->book_pages->document_page('integer', 0, false); + // Clés + $db->book_pages->primary('pk_book_pages', 'book_id', 'book_page'); + $db->book_pages->reference('fk_book_pages_book_id', 'book_id', 'books', 'book_id'); + $db->book_pages->reference('fk_book_pages_document_id', 'document_id', 'documents', 'document_id'); + // . + try { + $dbi = new CubeDbStruct($this->con); + $dbi->synchronize($db); + } + catch(Exception $e) { + fb($e); + exit; + } + + $this->createView('equipiers', 'SELECT * FROM utilisateurs WHERE grade>=1'); + $this->createView('gerants', 'SELECT * FROM utilisateurs WHERE grade=2'); + $this->createView('ws_top_revendeurs', 'SELECT * FROM utilisateurs WHERE ws_grade=3 AND ws_admin IN(SELECT utilisateur_id FROM equipiers)'); + $this->createView('ws_revendeurs', 'SELECT * FROM utilisateurs WHERE ws_grade=3'); + $this->createView('ws_facturables', 'SELECT * FROM utilisateurs WHERE ws_grade BETWEEN 0 AND 3 AND ws_admin IN(SELECT utilisateur_id FROM equipiers)'); + $this->createView('ws_utilisateurs', 'SELECT *,utilisateur_id AS facturable_id FROM ws_facturables' + . ' UNION ' + . 'SELECT u.*,f.utilisateur_id AS facturable_id FROM utilisateurs u, ws_facturables f WHERE u.ws_admin=f.utilisateur_id AND u.ws_grade!=-1 ' + . ' UNION ' + . 'SELECT u.*,f.utilisateur_id AS facturable_id FROM utilisateurs u,ws_facturables f,ws_revendeurs r ' + . 'WHERE u.ws_admin=r.utilisateur_id AND r.ws_admin=f.utilisateur_id ' + . ' UNION ' + . ' SELECT *,utilisateur_id AS facturable_id FROM utilisateurs WHERE ws_grade=4'); + $this->createView('impayes_entreprises', 'SELECT SUM(total_ht) AS impaye, u.entreprise AS entreprise ' + . 'FROM utilisateurs u LEFT JOIN projets p ON u.utilisateur_id=p.client LEFT JOIN factures f ON f.projet=p.projet_id ' + . 'WHERE f.status=1 GROUP BY u.entreprise'); + $this->createView('entreprises_inter', 'SELECT e.*,' + . 'SUM(f.total_ht) AS ca ' + . 'FROM entreprises e LEFT JOIN utilisateurs u ON u.entreprise=e.entreprise_id AND grade=0 ' + . 'LEFT JOIN projets p ON p.client=u.utilisateur_id ' + . 'LEFT JOIN factures f ON f.projet=p.projet_id AND f.status IN(1,2) ' + . 'GROUP BY e.entreprise_id'); + $this->createView('entreprises_vue', 'SELECT e.*,i.impaye AS impaye' + . ' FROM entreprises_inter e LEFT JOIN impayes_entreprises i ON e.entreprise_id=i.entreprise'); + $this->createView('clients', 'SELECT u.*,e.nom AS rs, i.impaye, ' + . 'SUM(f.total_ht) AS ca ' + . 'FROM entreprises e LEFT JOIN impayes_entreprises i ON e.entreprise_id=i.entreprise LEFT JOIN utilisateurs u ON u.entreprise=e.entreprise_id AND u.grade=0 LEFT JOIN projets p ON p.client=u.utilisateur_id LEFT JOIN factures f ON f.projet=p.projet_id AND f.status IN(1,2) ' + . 'GROUP BY u.utilisateur_id'); + $this->createView('ws_clients', 'SELECT u.*,e.nom AS rs, e1.nom as facturable ' + . 'FROM ws_utilisateurs u, entreprises e, entreprises e1,ws_utilisateurs u1 ' + . 'WHERE u.entreprise=e.entreprise_id AND u1.entreprise=e1.entreprise_id AND u.facturable_id=u1.utilisateur_id AND u.grade=0 '); + $this->createView('taches_vue', 'SELECT taches.tache_id,taches.nom,taches.categorie,taches.type,taches.budget,taches.projet,taches.taux_journalier, ' + . '(SUM(timereport.heures)/' . JOURNEE . ') AS jours_consommes, ((SUM(timereport.heures)/' . JOURNEE . ')/(taches.budget/taches.taux_journalier))*100 AS progression,(taches.budget/taches.taux_journalier) AS jours_prevus ' + . 'FROM taches LEFT JOIN timereport ON taches.tache_id=timereport.tache_id ' + . 'GROUP BY taches.tache_id'); + $this->createView('taches_projet', 'SELECT projet, ' + . 'SUM(jours_prevus) AS jours_prevus,SUM(budget) AS budget,' + . 'SUM(jours_consommes) AS jours_consommes, (SUM(jours_consommes)/SUM(jours_prevus))*100 AS progression ' + . 'FROM taches_vue GROUP BY projet'); + $this->createView('devis_vue', 'SELECT devis.devis_id,devis.nom,devis.lignes,devis.status,devis.total_ht,devis.date_creation,devis.email,clients.utilisateur_id AS client_id,clients.rs AS client,equipiers.prenom AS createur,equipiers.utilisateur_id AS createur_id,devis.adresse ' + . 'FROM devis,clients,equipiers ' + . 'WHERE devis.client=clients.utilisateur_id AND devis.createur=equipiers.utilisateur_id'); + $this->createView('factures_vue', 'SELECT factures.facture_id,factures.nom,factures.lignes,factures.status,factures.total_ht,factures.date_creation,factures.texte_complementaire,factures.informations_paiement,factures.date_paiement,factures.adresse,factures.avoir,' + . 'projets.projet_id AS projet_id,projets.nom AS projet,projets.client_id AS client_id,projets.client as client,equipiers.prenom AS createur,equipiers.utilisateur_id AS createur_id ' + . 'FROM factures,projets_vue projets,equipiers ' + . 'WHERE factures.projet=projets.projet_id AND factures.createur=equipiers.utilisateur_id AND (factures.facture_id>=0 OR factures.status=1) '); + $this->createView('factures_payees', 'SELECT * FROM factures WHERE status=2'); + $this->createView('factures_valides', 'SELECT * FROM factures WHERE status=1 OR status=2'); + $this->createView('projets_inter', 'SELECT projets.projet_id,projets.nom,projets.status,projets.date_debut,projets.date_fin,projets.date_creation,projets.deadline,projets.devis,projets.old,' + . 'YEAR(FROM_UNIXTIME(projets.date_debut)) AS annee_debut,' + . 'IF(YEAR(FROM_UNIXTIME(projets.date_fin))=1970,YEAR(NOW()),YEAR(FROM_UNIXTIME(projets.date_fin))) AS annee_fin,' + . 'clients.rs AS client,equipiers.prenom AS chef,equipiers.utilisateur_id AS chef_id,clients.utilisateur_id AS client_id ' + . 'FROM projets,clients,equipiers ' + . 'WHERE clients.utilisateur_id=projets.client AND equipiers.utilisateur_id=projets.chef'); + $this->createView('projets_inter1', 'SELECT projets.*,taches.jours_prevus,taches.jours_consommes,taches.progression,taches.budget AS budget, ' + . 'IF(taches.budget>0,SUM(factures_valides.total_ht)/taches.budget,1) AS rapport_facturation, ' + . 'SUM(factures_valides.total_ht) AS montant_facture ' + . 'FROM projets_inter projets ' + . 'LEFT JOIN taches_projet taches ON taches.projet=projets.projet_id ' + . 'LEFT JOIN factures_valides ON factures_valides.projet=projets.projet_id ' + . 'GROUP BY projets.projet_id,factures_valides.projet'); + $this->createView('projets_vue', 'SELECT p.*,SUM(f.total_ht) AS montant_paye, ' + . 'IF(p.budget>0,SUM(f.total_ht)/p.budget,1) AS rapport_paiement ' + . 'FROM projets_inter1 p ' + . 'LEFT JOIN factures_payees f ON f.projet=p.projet_id ' + . 'GROUP BY p.projet_id'); + $this->createView('projets_timereport', 'SELECT * FROM projets_vue WHERE status=0'); + $this->createView('order_timereport', 'SELECT utilisateur_id,projet AS projet_id,MAX(date) AS derniere_activite FROM timereport,taches,projets WHERE taches.tache_id=timereport.tache_id AND taches.projet=projets.projet_id AND projets.status=0 GROUP BY utilisateur_id,taches.projet ORDER BY utilisateur_id ASC,MAX(date) DESC'); + $this->createView('ca', 'SELECT SUM(total_ht) AS ca, YEAR(FROM_UNIXTIME(date_creation)) annee FROM factures WHERE status IN(1,2) GROUP BY annee'); + $this->createView('ftpaccess', 'SELECT email AS userid,password AS passwd,utilisateur_id AS uid,' + . '\'1000\' AS gid,CONCAT(\'/usb/ftpextranet/\',utilisateur_id) AS homedir, \'/bin/false\' AS shell ' + . 'FROM utilisateurs WHERE grade=0 ' + . 'UNION ' + . 'SELECT email AS userid,ws_password AS passwd,utilisateur_id AS uid,' + . '\'1000\' AS gid,CONCAT(\'/usb/ftpextranet/\',utilisateur_id) AS homedir, \'/bin/false\' AS shell ' + . 'FROM utilisateurs WHERE grade=0 AND ws_password!=\'\''); + $this->createView('chiffres_categories', 'SELECT p.annee_fin AS annee, t.categorie, SUM(t.budget) AS ca ' + . 'FROM projets_vue p, taches_vue t ' + . 'WHERE t.projet=p.projet_id ' + . 'GROUP BY t.categorie,p.annee_fin'); + $this->createView('temps_categories', 'SELECT p.annee_fin AS annee, t.categorie, SUM(t.jours_consommes) AS jours_consommes,SUM(t.jours_prevus) AS jours_prevus ' + . 'FROM projets_vue p, taches_vue t ' + . 'WHERE t.projet=p.projet_id ' + . 'GROUP BY t.categorie,p.annee_fin'); + $this->createView('books_vue', 'SELECT b.*,b.proprietaire AS proprietaire_id,c.rs AS proprietaire_nom,c.ws_admin,c.facturable_id,c.facturable ' + . 'FROM books b,ws_clients c WHERE b.proprietaire=c.utilisateur_id'); + // cubeDb::mysqlConvert($this->con); + touch($cache); + } + + public function sauvePreferencesUtilisateur() + { + $dao = new extranetDAOUtilisateur($this->con); + $dao->sauvePreferences($this->user); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.extranet.droits.php b/inc/extranet/Controlleur/class.extranet.droits.php new file mode 100644 index 000000000..59505d36c --- /dev/null +++ b/inc/extranet/Controlleur/class.extranet.droits.php @@ -0,0 +1,118 @@ +user->grade < $grade) { + if (!$error) { + return false; + } + self::error(); + } + } + + protected static function verifDroits($proprietaire, $client, $action = 'r', $error = true) + { + global $core; + + if ($core->user->grade == 2) { + return true; + } elseif ($core->user->grade == 1) { + if ($action == 'r') { + return true; + } else { + if ($proprietaire == $core->user->utilisateur_id) { + return true; + } + } + } elseif ($core->user->grade == 0 && $action == 'r' && $client == $core->user->utilisateur_id) { + return true; + } elseif ($core->user->grade == 3 && $action == 'r') { + return true; + } + if ($error) { + self::error(); + } + return false; + } + + public static function devis($devis, $action , $error = true) + { + return self::verifDroits($devis->createur_id, $devis->client_id, $action, $error); + } + + public static function facture($facture, $action, $error = true) + { + return self::verifDroits($facture->createur_id, $facture->client_id, $action, $error); + } + + public static function projet($projet, $error) + { + return self::verifDroits($projet->chef_id, 0, 'w', $error); + } + + public static function recherche($page) + { + global $core; + $droits = array('projets' => 1, 'factures' => 1, 'devis' => 1, 'clients' => 1, 'timereport' => 1, 'fichiers' => 0,'books'=>0); + return (isset($droits[$page]) && $droits[$page] <= $core->user->grade); + } + + public static function navigation() + { + global $core; + + $nav = array(); + if ($core->user->grade == 0) { + $nav[__('Fichiers')] = 'fichiers'; + $nav[__('Devis')] = 'devis'; + $nav[__('Factures')] = 'factures'; + } elseif ($core->user->grade < 3) { + $nav[__('Dashboard')] = 'dashboard'; + $nav[__('Projets')] = 'projets'; + $nav[__('Timereport')] = 'timereport'; + $nav[__('Devis')] = 'devis'; + $nav[__('Factures')] = 'factures'; + $nav[__('Clients')] = 'clients'; + if ($core->user->grade >= 2) { + $nav[__('Chiffres')] = 'chiffres'; + $nav[__('RH')] = 'rh'; + } + // $nav[__('Traduction')] = 'traduction'; + } elseif ($core->user->grade == 3) { + $nav[__('Clients')] = 'clients'; + $nav[__('Factures')] = 'factures'; + } + return $nav; + } + + public static function telecharger($utilisateur_id) + { + global $core; + if ($core->user->grade > 0) { + return true; + } else { + $dao = new extranetDAOClient($core->con); + $contacts = $dao->getCollegues($utilisateur_id); + $collegues = array(); + foreach($contacts as $c) { + $collegues[] = $c->utilisateur_id; + } + + if ($core->user->utilisateur_id != $utilisateur_id && !in_array($core->user->utilisateur_id, $collegues)) { + self::error(); + } else { + return true; + } + } + self::error(); + } + + public static function error() + { + http::head(401); + exit; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.extranet.filtre.php b/inc/extranet/Controlleur/class.extranet.filtre.php new file mode 100644 index 000000000..ea0ab62b0 --- /dev/null +++ b/inc/extranet/Controlleur/class.extranet.filtre.php @@ -0,0 +1,108 @@ +titre = $titre; + $this->varname = $varname; + $this->all = __('Tous'); + $this->settings = isset($settings[$varname]) && count($settings[$varname])?$settings[$varname]:null; + $this->getValues(); + fb($this); + } + + protected function getValues() + { + global $core; + if ($this->varname == 'equipier' || $this->varname == 'equipier_participe') { + $r = $core->con->select('SELECT prenom,utilisateur_id FROM equipiers'); + while ($r->fetch()) { + $this->values[$r->prenom] = $r->utilisateur_id; + } + } elseif ($this->varname == 'annee') { + for($i = 2006;$i <= date('Y', TIME);$i++) { + $this->values[$i] = $i; + } + $this->all = __('Toutes'); + } elseif ($this->varname == 'status_projet') { + $this->values = array(__('En cours') => 'status_0', + __('Terminé') => 'status_1', + __('Facturés') => 'factures_1', + __('Non facturés') => 'factures_0'); + } elseif ($this->varname == 'status_client_projet') { + $this->values = array(__('En cours') => '0', __('Terminé') => '1'); + } elseif ($this->varname == 'status_facture') { + $this->values = array_flip($core->factures_status); + } elseif ($this->varname == 'annee_facture') { + for($i = 2008;$i <= date('Y', TIME);$i++) { + $this->values[$i] = $i; + } + $this->all = __('Toutes'); + } elseif ($this->varname == 'status_devis') { + $this->values = array_flip($core->devis_status); + } elseif ($this->varname == 'impaye') { + $this->values = array(__('Non') => '0', __('Oui') => '1'); + } elseif ($this->varname == 'status_book') { + $this->values = array_flip($core->books_status); + } elseif ($this->varname == 'annee_book') { + for($i = 2007;$i <= date('Y', TIME);$i++) { + $this->values[$i] = $i; + } + $this->all = __('Toutes'); + } + } + + public function display() + { + if (is_null($this->settings) || count($this->settings) == count($this->values)) { + $class = ''; + $titre = $this->all; + } else { + $class = ' active'; + $t = array(); + foreach($this->settings as $k => $v) { + $t[] = array_search($k, $this->values); + } + $titre = implode(', ', $t); + } + + $limit = 20; + $t = (mb_strlen($titre) > $limit)?mb_substr($titre, 0, $limit-4) . '...':$titre; + + $res = '
'; + $res .= '' . $this->titre . ''; + $res .= '
' . $t . '' ; + $res .= '' . cubeMedia::spacer(155, 18) . ''; + $res .= '
'; + $res .= ''; + $res .= '
'; + return $res; + } + + public static function test($varname, $settings) + { + $f = new extranetFiltre(__(''), $varname, array()); + return isset($settings[$varname]) && count($f->values) > count($settings[$varname]) && count($settings[$varname]); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.extranet.page.chiffres.php b/inc/extranet/Controlleur/class.extranet.page.chiffres.php new file mode 100644 index 000000000..3535f8c9f --- /dev/null +++ b/inc/extranet/Controlleur/class.extranet.page.chiffres.php @@ -0,0 +1,328 @@ +getEvents(array($y['start'], $m['end']), '', 0); + $e = array(); + foreach($events as $event) { + foreach($event->when as $when) { + $date = new DateTime($when->starttime); + break; + } + $title = $event->title->text; + $a = str_replace(',', '.', $event->content->text); + $a = str_replace(' ', '', $a); + $a = str_replace('€', '', $a); + $a = trim($a); + $a = floatval($a); + if (!$a) { + continue; + } + $e[] = array('title' => $title, 'date' => $date->format('d-m-Y'), 'montant' => $a); + } + return $e; + } + + public static function getCharges() + { + $events = self::listeCharges(); + $total = 0; + foreach($events as $event) { + $total += floatval($event['montant']); + } + return $total; + } + + public static function chargesDetails() + { + global $core; + $events = self::listeCharges(); + $i = 0; + $total = 0; + $res = ''; + foreach($events as $event) { + $total += $event['montant']; + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= '' . $event['title'] . '' . $event['date'] . '' . self::format($event['montant']) . ''; + $i++; + } + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= '' . __('Total') . '' . date('Y') . '' . self::format($total) . ''; + return $res; + } + + public static function listeChiffres() + { + global $core; + extranetDroits::min(2); + $res = self::chiffresAnnee(); + $res .= self::caGlobal($chiffres, $total); + $res .= self::caCategorie($chiffres, $total); + $res .= self::caWorkRate($chiffres, $total); + return $res; + } + + public static function chiffresAnnee() + { + global $core; + // $charges_payees = self::getCharges(); + $r = $core->con->select('SELECT SUM(montant_facture) AS total_factures FROM projets_vue'); + $total_factures = $r->total_factures; + // Somme de tous les projets + $r = $core->con->select('SELECT SUM(budget) AS budget FROM projets_vue'); + $total_projets = $r->budget; + // Total + $r = $core->con->select('SELECT ca FROM ca WHERE annee=' . date('Y')); + $ca = $r->ca; + // Impayes 90 jours + $jours30 = TIME - (3600 * 24 * 30); + $r = $core->con->select('SELECT SUM(total_ht) AS impayes FROM factures WHERE status=1 AND date_creation<' . $jours30); + $impayes30 = $r->impayes; + // Impayes 180 jours + $jours90 = TIME - (3600 * 24 * 90); + $r = $core->con->select('SELECT SUM(total_ht) AS impayes FROM factures WHERE status=1 AND date_creation<' . $jours90); + $impayes90 = $r->impayes; + // Impayes + $r = $core->con->select('SELECT SUM(total_ht) AS impayes FROM factures WHERE status=1'); + $impayes = $r->impayes; + + $en_cours = $total_projets - $total_factures; + + $res = extranetPage::bh(); + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + // $res .= ''; + // $res .= ''; + $res .= '
' . sprintf(__("Détails de l'année %s"), date('Y')) . '' . __("Impayés") . '
' . __('Projets en cours') . ' : ' . self::format($en_cours) . '' . __('Total des impayés') . ' : ' . self::format($impayes) . '
' . __("Chiffre d'affaire") . ' : ' . self::format($ca) . '' . __("Impayés de plus de 30 jours") . ' : ' . self::format($impayes30) . '
' . __("Prévision de chiffre d'affaire") . ' : ' . self::format($ca + $en_cours) . '' . __("Impayés de plus de 90 jours") . ' : ' . self::format($impayes90) . '
' . __('Total des charges') . ' ( ' . __('Voir le détail') . ' ) : ' . self::format($charges_payees) . '
' . __('Projets payés - Charges') . ' : ' . self::format($r->paye - $charges_payees) . '
'; + $res .= extranetPage::bf(); + return $res; + } + + public static function caGlobal(&$chiffres, &$total) + { + global $core; + // Chiffres globaux + $r = $core->con->select('SELECT * FROM ca ORDER BY annee ASC'); + $chiffres = array(); + while ($r->fetch()) { + $chiffres[$r->annee] = $r->ca; + } + $res = extranetPage::bh(); + $res .= ''; + $res .= ''; + $res .= ''; + foreach($chiffres as $annee => $ca) { + $res .= ''; + } + $res .= ''; + $res .= ''; + + $res .= ''; + $total = 0; + foreach($chiffres as $annee => $ca) { + $res .= ''; + $total += $ca; + } + $res .= ''; + $res .= ''; + + $res .= '
'; + $res .= self::caChart($chiffres); + $res .= '
' . __("Chiffre d'affaire annuel") . '' . $annee . '' . __('Total') . '
' . self::format($ca) . '' . self::format($total) . '
'; + $res .= extranetPage::bf(); + return $res; + } + + public static function caCategorie($chiffres, $total) + { + global $core; + // Chiffres par catégorie + $chiffresc = array(); + $r = $core->con->select('SELECT * FROM chiffres_categories ORDER BY annee,categorie'); + $annees = array(); + while ($r->fetch()) { + if ($r->ca > 0) { + $annees[] = $r->annee; + $chiffresc[$r->categorie][$r->annee] = $r->ca; + $chiffresa[$r->annee][$r->categorie] = $r->ca; + } + } + $annees = array_unique($annees); + $res = extranetPage::bh(); + $res .= ''; + + $res .= ''; + + $res .= ''; + + foreach($annees as $annee) { + $res .= ''; + } + $res .= ''; + $res .= ''; + $i = 0; + foreach($chiffresc as $categorie => $tab) { + $odd = (cubeMath::isOdd($i))?' class="odd"':''; + $res .= ''; + $res .= ''; + + foreach($annees as $annee) { + if (isset($tab[$annee])) { + $ca = self::format($tab[$annee]); + $part = round(($tab[$annee] / $chiffres[$annee]) * 100) . '%'; + $col = $ca . ' (' . $part . ')'; + } else { + $ca = '-'; + $part = '-'; + $col = '-'; + } + $res .= ''; + } + $total_cat = array_sum($tab); + $res .= ''; + $res .= ''; + $i++; + } + $res .= '
'; + $a = date('Y')-1; + $res .= self::caCategoriesChart($a, $chiffresa[$a], 'p3' , 440 , 150); + $a++; + $res .= self::caCategoriesChart($a, $chiffresa[$a], 'p3' , 500 , 200); + $res .= '
' . __("Chiffre d'affaire par catégorie") . '' . $annee . '' . __('Total') . '
' . $core->categories[$categorie] . '' . $col . '' . self::format($total_cat) . ' (' . round(($total_cat / $total) * 100) . ' %)
'; + $res .= extranetPage::bf(); + return $res; + } + + public static function caCategoriesChart($a, $datas, $type, $width, $height, $max = 7) + { + global $core; + $title = sprintf(__('Répartition du CA pour %d'), $a); + $chart = new cubeGoogleCharts($type, $width, $height); + $chart->setTitle($title); + arsort($datas); + $total = array_sum($datas); + $i = 1; + $others = 0; + foreach($datas as $c => $ca) { + if ($i <= $max) { + $chart->addData($ca, null, $core->categories[$c]); + $i++; + } else { + $others += $ca; + } + } + if ($others > 0) { + $chart->addData($others, null, __('Autres')); + } + + return $chart->display($title); + } + + public static function caChart($chiffres) + { + global $core; + + $title = __("Evolution du chiffre d'affaire"); + $chart = new cubeGoogleCharts('bvs', 940, 200); + $chart->setTitle($title); + foreach($chiffres as $annee => $ca) { + $chart->addData(round($ca/4000)); + } + return $chart->display($title); + } + + public static function caWorkRate($chiffres, $total) + { + global $core; + // Temps travaillé / Temps prévu + $chiffresc = array(); + $r = $core->con->select('SELECT * FROM temps_categories ORDER BY annee,categorie'); + $annees = array(); + while ($r->fetch()) { + if ($r->jours_prevus > 0 && $r->jours_consommes > 0) { + $annees[] = $r->annee; + $chiffresc[$r->categorie][$r->annee] = array('jours_prevus' => $r->jours_prevus, 'jours_consommes' => $r->jours_consommes); + } + } + $annees = array_unique($annees); + sort($annees); + + $res = extranetPage::bh(); + $res .= ''; + $res .= ''; + foreach($annees as $annee) { + $total_consomme_annee[$annee] = 0; + $total_prevu_annee[$annee] = 0; + $res .= ''; + } + $res .= ''; + $res .= ''; + $i = 0; + foreach($chiffresc as $categorie => $tab) { + $odd = (cubeMath::isOdd($i))?' class="odd"':''; + $res .= ''; + $res .= ''; + + $total_consomme = 0; + $total_prevu = 0; + foreach($annees as $annee) { + if (isset($tab[$annee])) { + $tc = self::format($tab[$annee]['jours_consommes'], false); + $tp = self::format($tab[$annee]['jours_prevus'], false); + $part = round(($tab[$annee]['jours_consommes'] / $tab[$annee]['jours_prevus']) * 100) . '%'; + $col = $tp . ' / ' . $tc . ' (' . $part . ')'; + $total_consomme += $tab[$annee]['jours_consommes']; + $total_consomme_annee[$annee] += $tab[$annee]['jours_consommes']; + $total_prevu += $tab[$annee]['jours_prevus']; + $total_prevu_annee[$annee] += $tab[$annee]['jours_prevus']; + } else { + $part = '-'; + $col = '-'; + } + $res .= ''; + } + + $res .= ''; + $res .= ''; + $i++; + } + $res .= ''; + foreach($annees as $annee) { + if (isset($total_prevu_annee[$annee]) && isset($total_consomme_annee[$annee])) { + $c = $total_consomme_annee[$annee]; + $p = $total_prevu_annee[$annee]; + $res .= ''; + } + } + $c = array_sum($total_consomme_annee); + $p = array_sum($total_prevu_annee); + $res .= ''; + $res .= ''; + $res .= '
' . __("Rapport Temps travaillé / Temps payé") . '' . $annee . '' . __('Total') . '
' . $core->categories[$categorie] . '' . $col . '' . self::format($total_consomme, false) . ' / ' . self::format($total_prevu, false) . ' (' . round(($total_consomme / $total_prevu) * 100) . ' %)
' . __('Total') . '' . self::format($c, false) . ' / ' . self::format($p, false) . ' (' . round(($c / $p) * 100) . ' %)' . self::format($c, false) . ' / ' . self::format($p, false) . ' (' . round(($c / $p) * 100) . ' %)
'; + $res .= extranetPage::bf(); + return $res; + } + + public static function format($nb, $euro = true) + { + if ($euro) { + $nb = $nb / 1000; + } + $nb = round($nb); + $res = number_format($nb, 0, '.', ' '); + if ($euro) { + $res .= ' K€'; + } + return $res; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.extranet.page.php b/inc/extranet/Controlleur/class.extranet.page.php new file mode 100644 index 000000000..00d7fa6d4 --- /dev/null +++ b/inc/extranet/Controlleur/class.extranet.page.php @@ -0,0 +1,195 @@ +'; + $res .= ''; + // Titre de la page + $res .= '' . TITLE . ''; + // Favicon + $res .= cubePage::favicon(IMG . '/favicon.ico'); + $res .= ''; + $res .= ''; + // Haut de la page + $res .= ''; + return $res; + } + + public static function search($args) + { + global $core; + + if (!extranetDroits::recherche($args[0])) { + return; + } + cubePage::emptyfield(); + $settings = $core->user->getSettings($args[0]); + $action = 'search' . ucfirst($args[0]); + + $default = isset($_POST['q'])?$_POST['q']:__('Rechercher'); + // Formulaire de recherche + $res = '
'; + $res .= ''; + $res .= '
'; + return $res; + } + + public static function nav($args) + { + // Barre d'onglets + global $core; + // Liste des onglets + if (!$core->user) { + // Si pas d'utilisateur authentifié + $onglets = array(__('Identification') => 'login'); + } else { + // Navigation personalisée de l'utilisateur en fonction de ses droits + if (MODE == 'extranet') { + $onglets = extranetDroits::navigation(); + } elseif (MODE == 'ws') { + $onglets = wsDroits::navigation(); + } + } + $res = ''; + return $res; + } + + public static function barre($filtres = null, $action = null, $dashboard = null, $shortcuts = null) + { + if (is_null($shortcuts) && is_null($filtres)) { + return '
'; + } + + $res = '
'; + $res .= '
'; + + if (!is_null($shortcuts)) { + $res .= self::shortcuts($shortcuts); + } + + if (!is_null($filtres) && is_array($filtres)) { + $res .= '
'; + foreach($filtres as $filtre) { + $res .= $filtre->display(); + } + $res .= ''; + $res .= '
'; + } + $res .= '
'; + $res .= '
'; + return $res; + } + + public static function shortcuts($shortcuts) + { + global $core; + + $res = ''; + foreach($shortcuts as $s) { + $res .= '
' . $s . '
'; + } + return $res; + } + + public static function tMain($id = null, $big = false) + { + $id = is_null($id)?'':' id="' . $id . '"'; + $big = $big?' class="big"':''; + return '
'; + } + + public static function bh($class = null) + { + $class = is_null($class)?' class="b"':' class="b ' . $class . '"'; + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= '
'; + return $res; + } + + public static function bf() + { + $res = '
'; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + return $res; + } + + public static function pager($current, $nb, $par_page, $url) + { + $style = 'pgleft'; + if ($par_page == 0 || $nb <= $par_page) { + return; + } + $par_groupe = 10; + $pager = new cubePager($current, $nb, $par_page, $par_groupe); + $pager->html_link_sep = ' '; + $pager->html_prev = '«'; + $pager->html_next = '»'; + + $pager->base_url = '#" rel="' . $url . '" class="ajax'; + + $links = $pager->getLinks(); + if (trim($links) == '') { + return ''; + } + + $res = '
'; + $res .= $links; + $res .= '
'; + + return $res; + } + + public static function bMain() + { + return '
'; + } + + public static function footer() + { + $res = ''; + $res .= cubePage::googleAnalytics(GA); + $res .= ''; + $res .= ''; + return $res; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.extranet.url.php b/inc/extranet/Controlleur/class.extranet.url.php new file mode 100644 index 000000000..db5559214 --- /dev/null +++ b/inc/extranet/Controlleur/class.extranet.url.php @@ -0,0 +1,2114 @@ +user) && !$core->user) { + $args = array('login'); + } else { + if (!count($args)) { + // Page par défaut (premier onglet) + if (MODE == 'extranet') { + $nav = extranetDroits::navigation(); + } elseif (MODE == 'ws') { + $nav = wsDroits::navigation(); + } + foreach($nav as $titre => $url) { + $args = array($url); + break; + } + } + } + + $f = $args[0]; + + echo extranetPage::header($args); + if (is_callable(array('extranetUrl', $f))) { + echo call_user_func(array('extranetUrl', $f), $args); + } else if (is_callable(array('wsUrl', $f))) { + echo call_user_func(array('wsUrl', $f), $args); + } + echo extranetPage::footer(); + } + + public static function login($args) + { + global $core; + + if ($tentative = isset($_SESSION['tentative'])) { + unset($_SESSION['tentative']); + } + + $message = $tentative?'

' . __('E-mail / mot de passe incorrects') . '

':''; + + $res = extranetPage::barre(); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= '
'; + $res .= '

' . $core->typo->Titre(__('Veuillez vous identifier')) . '

'; + $res .= $message; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= '
' . __('Votre e-mail ou login') . ' : ' . form::field('user_email', 20, 64, '') . '
' . __('Votre mot de passe') . ' : ' . form::password('user_password', 20, 64, '') . '
' . __('Mot de passe oublié ? Cliquez ici') . '
' . $core->typo->BoutonOK('Cliquez-ici pour vous identifier') . '
'; + $res .= '
'; + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function logout($args) + { + if (isset($_SESSION['user_email'])) { + unset($_SESSION['user_email']); + } + if (isset($_SESSION['password_email'])) { + unset($_SESSION['password_email']); + } + http::redirect(SITE_PATH); + } + + public static function motdepasseOublie($args) + { + return '' . __('Entrez votre e-mail') . ' : ' . form::field('email', 30, 128) . ''; + } + + public static function mesParametres($args) + { + global $core; + $utilisateur = $core->user; + + $res = 'Mot de passe :Changer mon mot de passe'; + $res .= 'Login :' . form::field('login', 20, 64, $utilisateur->login) . ''; + $res .= 'Langue de l\'interface :' . form::combo('lang', cubeLang::getAvailableLangs(true), $utilisateur->lang) . ''; + $res .= '' . $core->typo->BoutonOK(__('Enregister')) . ''; + if ($utilisateur instanceof extranetClient) { + $res .= ''; + $res .= '' . __('Mes informations') . ''; + $res .= '' . __('Numéro de client') . ' : ' . $utilisateur->utilisateur_id . ''; + $res .= '' . __('Prénom') . ' : ' . $utilisateur->prenom . ''; + $res .= '' . __('Nom') . ' : ' . $utilisateur->nom . ''; + $res .= '' . __('Adresse e-mail') . ' : ' . $utilisateur->email . ''; + $res .= '' . __('Raison sociale') . ' : ' . $utilisateur->rs . ''; + $res .= '' . __('Adresse') . ' : ' . nl2br($utilisateur->adresse) . '
' . $utilisateur->code_postal . ' ' . $utilisateur->ville . '
' . cubeCountry::getCountry($utilisateur->pays) . ''; + $res .= '' . __('Numéro de téléphone') . ' : ' . $utilisateur->telephone . ''; + $res .= '' . __('Numéro de mobile') . ' : ' . $utilisateur->mobile . ''; + $res .= '' . __('Numéro de fax') . ' : ' . $utilisateur->fax . ''; + $res .= '' . __('Numéro de TVA intracommunautaire') . ' : ' . $utilisateur->tva_intra . ''; + $res .= '' . __('Si les informations ci-dessus sont incomplètes ou erronées, veuillez nous
en informer en nous écrivant à ') . 'contact@cubedesigners.com
'; + } + + return $res; + } + + public static function changeMotdepasse() + { + $res .= '' . __('Votre mot de passe doit comprendre en 6 et 10 caractères') . ''; + $res .= '' . __('Tapez votre mot de passe actuel') . ' : ' . form::password('actuel', 20, 10) . ''; + $res .= '' . __('Tapez votre nouveau mot de passe') . ' : ' . form::password('nouveau', 20, 10) . ''; + $res .= '' . __('Confirmez votre nouveau mot de passe') . ' : ' . form::password('confirmation', 20, 10) . ''; + return $res; + } + + public static function orderby($label, $field, $settings, $function) + { + $res = ''; + $res .= $label; + if ($settings['orderby'] == $field) { + $puce = ($settings['sens'] == 'DESC')?'down':'up'; + $res .= ' ' . cubeMedia::image(IMG . '/' . $puce . '.png'); + } + $res .= ''; + return $res; + } + + public static function clients($args) + { + global $core; + cubePage::truePopup(); + extranetDroits::min(1); + $settings = $core->user->getSettings('clients'); + + $shortcuts = array(); + $shortcuts[] = '' . $core->typo->Ajouter('Créer un nouveau client') . ''; + $filtres = array(); + $filtres[] = new extranetFiltre(__('Ayant un projet'), 'status_client_projet', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Ayant des impayés'), 'impaye', $settings['filtres']); + $res = extranetPage::barre($filtres, 'filtreClients', 'clients', $shortcuts); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeClients(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeClients($dashboard = null, $settings = null) + { + global $core; + extranetDroits::min(1); + $settings = is_null($settings)?$core->user->getSettings('clients'):$settings; + $change = is_null($dashboard)?'Client':'Dashboard/' . $dashboard; + $dao = new extranetDAOEntreprise($core->con); + if (isset($settings['search']) && !is_null($settings['search'])) { + $dao->setSearch($settings['search']); + } + $dao->setFiltres($settings['filtres']); + $liste = $dao->getListe($settings['orderby'], $settings['sens'], $settings['limit']); + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 0; + foreach($liste as $id => $client) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $contacts = array(); + foreach($client->contacts as $c) { + $contacts[] = '' . $c->prenom . ' ' . $c->nom . ''; + } + + $res .= ''; + $res .= ''; + $res .= ''; + if ($client->impaye) { + $res .= ''; + } else { + $res .= ''; + } + + $res .= ''; + if (is_null($client->ca)) { + $res .= ''; + } else { + $res .= ''; + } + $res .= ''; + $i++; + } + if (!isset($settings['search']) || is_null($settings['search'])) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + } + $res .= '
' . self::orderby('#', 'entreprise_id', $settings, 'sort' . $change) . '' . self::orderby(__('Raison sociale'), 'nom', $settings, 'sort' . $change) . '' . __('Contacts') . '' . __('Notes') . '' . self::orderby('CA', 'ca', $settings, 'sort' . $change) . '' . self::orderby('Impayés', 'impaye', $settings, 'sort' . $change) . '
' . $client->entreprise_id . '' . $client->nom . '' . implode(', ', $contacts) . '' . cubeMedia::image(IMG . '/postit.png') . ''; + if ($client->ca) { + $res .= '' . number_format($client->ca, 0, ',', ' ') . ''; + } + + $res .= '' . number_format($client->impaye, 0, '.', ' ') . '' . cubeMedia::image(IMG . '/edit.png') . '' . cubeMedia::image(IMG . '/delete.png') . '
'; + $res .= extranetPage::pager($settings['page'], $dao->count() , $settings['par_page'], 'page' . $change . '/%d'); + $res .= self::formParPage('parPage' . $change, $settings['par_page'], __('clients')); + $res .= '
'; + return $res; + } + + public static function clientDetailCa($entreprise_id) + { + global $core; + $dao = new extranetDAOEntreprise($core->con); + $annees = $dao->getCaDetails($entreprise_id); + $res = ''; + $i = 0; + foreach($annees as $annee => $ca) { + $class = cubeMath::isOdd($i)?' class="odd"':''; + $res .= '' . $annee . '' . number_format($ca, 0, ',', ' ') . ' €'; + $i++; + } + return $res; + } + + public static function clientDetailImpaye($entreprise_id) + { + global $core; + $dao = new extranetDAOFacture($core->con); + $daoClient = new extranetDAOEntreprise($core->con); + $factures = $dao->getImpayesOfClient($entreprise_id); + $client = $daoClient->selectById($entreprise_id); + $res = ''; + $i = 0; + foreach($factures as $facture) { + $class = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= '' . $facture->facture_id . ''; + $res .= ''; + if ($facture->facture_id > 0) { + $res .= '' . $facture->nom . ''; + } else { + $res .= $facture->nom ; + } + $res .= ''; + $tva = cubeTaxes::tva($client->pays); + $res .= '' . number_format($facture->total_ht, 0, ',', '') . ' €'; + if ($tva > 0 && $tva != 'UE') { + $res .= ' HT ' . number_format(cubePrices::HTtoTTC($facture->total_ht, $tva), 2, ',', '') . ' € TTC'; + } else { + $res .= ''; + } + $res .= ''; + $i++; + } + return $res; + } + + public static function formClient($entreprise_id = 'new') + { + global $core; + extranetDroits::min(1); + + $dao = new extranetDAOEntreprise($core->con); + if ($entreprise_id == 'new') { + $client = $dao->cree(); + } else { + $client = $dao->selectById($entreprise_id); + } + + $res = '' . __('Numéro de client') . '' . form::hidden('entreprise_id', $client->entreprise_id) . '' . $client->entreprise_id . ''; + $res .= '' . __('Raison sociale') . '' . form::field('nom', 30, 128, $client->nom) . ''; + $res .= '' . __('Adresse') . '' . form::textarea('adresse', 40, 3, $client->adresse) . ''; + $res .= '' . __('Code postal') . '' . form::field('code_postal', 10, 20, $client->code_postal) . ''; + $res .= '' . __('Ville') . '' . form::field('ville', 30, 128, $client->ville) . ''; + $res .= '' . __('Pays') . '' . form::combo('pays', cubeCountry::getList(), $client->pays) . ''; + $res .= '' . __('Numéro de TVA intracommunautaire') . '' . form::field('tva_intra', 15, 13, $client->tva_intra) . ''; + if ($entreprise_id == 'new') { + $daoContact = new extranetDAOClient($core->con); + $contact = $daoContact->cree(); + $res .= '' . __('Contact') . ''; + $res .= '' . __('Adresse e-mail') . '' . form::field(array('contact[email]'), 30, 128, $contact->email) . ''; + $res .= '' . __('Mot de passe') . '' . form::field(array('contact[password]'), 30, 128, $contact->password) . ''; + $res .= '' . __('Prénom') . '' . form::field(array('contact[prenom]'), 30, 128, $contact->prenom) . ''; + $res .= '' . __('Nom') . '' . form::field(array('contact[nom]'), 30, 128, $contact->nom) . ''; + $res .= '' . __('Téléphone') . '' . form::field(array('contact[telephone]'), 20, 128, $contact->telephone) . ''; + $res .= '' . __('Mobile') . '' . form::field(array('contact[mobile]'), 20, 128, $contact->mobile) . ''; + $res .= '' . __('Fax') . '' . form::field(array('contact[fax]'), 20, 128, $contact->fax) . ''; + $res .= '' . __('Langue') . '' . form::combo(array('contact[lang]'), cubeLang::getAvailableLangs(true), $contact->lang) . ''; + } + return $res; + } + + public static function listeContacts($entreprise_id) + { + global $core; + extranetDroits::min(1); + $dao = new extranetDAOEntreprise($core->con); + $contacts = $dao->getContacts($entreprise_id); + + $res = ''; + $res .= ''; + $i = 0; + foreach($contacts as $contact) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i++; + } + $res .= '
' . $core->typo->Contact('Ajouter un contact') . '
' . trim($contact->prenom . ' ' . $contact->nom) . '' . $contact->email . 'FTP' . cubeMedia::image(IMG . '/edit.png') . '
'; + return $res; + } + + public static function formContact($client_id = 'new', $entreprise_id = null) + { + global $core; + extranetDroits::min(1); + + $dao = new extranetDAOClient($core->con); + if ($client_id == 'new') { + $client = $dao->creeFromEntreprise($entreprise_id); + } else { + $client = $dao->selectById($client_id); + } + + $res = '' . __('Numéro de client') . '' . form::hidden('grade', 0) . form::hidden('entreprise', $client->entreprise) . form::hidden('utilisateur_id', $client->utilisateur_id) . '' . $client->utilisateur_id . ''; + $res .= '' . __('Adresse e-mail') . '' . form::field('email', 30, 128, $client->email) . ''; + $res .= '' . __('Mot de passe') . '' . form::field('password', 30, 128, $client->password) . ''; + $res .= '' . __('Prénom du contact') . '' . form::field('prenom', 30, 128, $client->prenom) . ''; + $res .= '' . __('Nom du contact') . '' . form::field('nom', 30, 128, $client->nom) . ''; + $res .= '' . __('Adresse') . '' . form::textarea('adresse', 40, 3, $client->adresse) . ''; + $res .= '' . __('Code postal') . '' . form::field('code_postal', 10, 20, $client->code_postal) . ''; + $res .= '' . __('Ville') . '' . form::field('ville', 30, 128, $client->ville) . ''; + $res .= '' . __('Pays') . '' . form::combo('pays', cubeCountry::getList(), $client->pays) . ''; + $res .= '' . __('Téléphone') . '' . form::field('telephone', 20, 128, $client->telephone) . ''; + $res .= '' . __('Mobile') . '' . form::field('mobile', 20, 128, $client->mobile) . ''; + $res .= '' . __('Fax') . '' . form::field('fax', 20, 128, $client->fax) . ''; + $res .= '' . __('Langue') . '' . form::combo('lang', cubeLang::getAvailableLangs(true), $client->lang) . ''; + if ($client_id != 'new') { + $res .= '' . cubeMedia::spacer(10, 10) . ''; + $res .= '' . __('FTP') . ''; + $res .= '' . __("Paramètres de connexion à l'extranet") . '' . __('Adresse') . ' : http://extranet.cubedesigners.com/
' . __("Nom d'utilisateur") . ' : ' . $client->email . '
' . __('Mot de passe') . ' : ' . $client->password . ''; + $res .= '' . cubeMedia::spacer(10, 10) . ''; + // $res .= '' . __("Paramètres de connexion au FTP") . '' . __('Serveur FTP') . ' : extranet.cubedesigners.com (ftp://extranet.cubedesigners.com)
' . __("Nom d'utilisateur") . ' : ' . $client->email . '
' . __('Mot de passe') . ' : ' . $client->password . ''; + } + return $res; + } + + public static function formNotes($utilisateur_id) + { + global $core; + extranetDroits::min(1); + $dao = new extranetDAOUtilisateur($core->con); + $utilisateur = $dao->selectById($utilisateur_id); + $res = '' . form::hidden('utilisateur_id', $utilisateur_id) . ''; + $res .= '' . form::textarea('notes', 100, 30, $utilisateur->notes) . ''; + $res .= ''; + return $res; + } + + public static function projets($args) + { + global $core; + extranetDroits::min(1); + + $settings = $core->user->getSettings('projets'); + + $shortcuts = array(); + $shortcuts[] = '' . $core->typo->Ajouter('Créer un projet') . ''; + + $filtres = array(); + $filtres[] = new extranetFiltre(__('Crée par'), 'equipier', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Status'), 'status_projet', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Année'), 'annee', $settings['filtres']); + + $res = extranetPage::barre($filtres, 'filtreProjet', 'projets', $shortcuts); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeProjets(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeProjets($dashboard = null, $settings = null) + { + global $core; + extranetDroits::min(1); + $settings = is_null($settings)?$core->user->getSettings('projets'):$settings; + $change = is_null($dashboard)?'Projet':'Dashboard/' . $dashboard; + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + + $dao = new extranetDAOProjet($core->con); + $dao->setFiltres($settings['filtres']); + if (isset($settings['search']) && !is_null($settings['search'])) { + $dao->setSearch($settings['search']); + } + $liste = $dao->getListe($settings['orderby'], $settings['sens'], $settings['limit']); + + $i = 0; + foreach($liste as $projet) { + $droits = extranetDroits::projet($projet, false); + + $projet->progression = !$projet->progression?'-':$projet->progression . '%'; + $projet->jours_prevus = !$projet->jours_prevus?'-':$projet->jours_prevus; + $projet->jours_consommes = !$projet->jours_consommes?'-':$projet->jours_consommes; + + $projet->budget = !$projet->budget || !$droits?'-':$projet->budget; + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + if ($droits) { + $res .= ''; + } else { + $res .= ''; + } + + $rf = $projet->rapport_facturation; + if ($projet->budget == '-') { + $rapport_facturation = '-'; + } elseif (!$rf) { + $rapport_facturation = __('Non'); + } elseif ($rf == 1) { + $rapport_facturation = __('Oui'); + } elseif ($rf < 1) { + $rapport_facturation = __('Partie'); + } elseif ($rf > 1) { + $rapport_facturation = __('Trop'); + } + + $rp = $projet->rapport_paiement; + if ($projet->budget == '-') { + $rapport_paiement = '-'; + } elseif (!$rp) { + $rapport_paiement = __('Non') ; + } elseif ($rp == 1) { + $rapport_paiement = __('Oui'); + } elseif ($rp < 1) { + $rapport_paiement = __('Partie'); + } elseif ($rp > 1) { + $rapport_paiement = __('Trop'); + } + + $res .= ''; + $res .= ''; + + $res .= ''; + // $res .= ''; + // $res .= ''; + $res .= ''; + $res .= ''; + + $res .= ''; + $i++; + } + if (!isset($settings['search']) || is_null($settings['search'])) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + } + $res .= '
' . self::orderby('#', 'projet_id', $settings, 'sort' . $change) . '' . self::orderby(__('Projet'), 'nom', $settings, 'sort' . $change) . '' . self::orderby(__('Client'), 'client', $settings, 'sort' . $change) . '' . self::orderby(__('Année'), 'annee_fin', $settings, 'sort' . $change) . '' . self::orderby(__('Chef'), 'chef', $settings, 'sort' . $change) . '' . self::orderby(__('Status'), 'status', $settings, 'sort' . $change) . '' . self::orderby(__('Facturé'), 'rapport_facturation', $settings, 'sort' . $change) . '' . self::orderby(__('Payé'), 'rapport_paiement', $settings, 'sort' . $change) . '' . self::orderby('B', 'budget', $settings, 'sort' . $change) . '' . self::orderby('Pr', 'progression', $settings, 'sort' . $change) . '
' . $projet->projet_id . '' . $projet->nom . '' . $projet->client . '' . $projet->annee_fin . '' . $projet->chef . '' . $core->projets_status[$projet->status] . '' . $core->projets_status[$projet->status] . ''; + if ($projet->status == 1 && !$rf) { + $res .= '' . $rapport_facturation . ''; + } else { + $res .= $rapport_facturation; + } + $res .= '' . $rapport_paiement . '' . $projet->budget . '' . $projet->jours_prevus . '' . $projet->jours_consommes . '' . $projet->progression . '' . cubeMedia::image(IMG . '/view.png') . '
'; + $res .= extranetPage::pager($settings['page'], $dao->count() , $settings['par_page'], 'page' . $change . '/%d'); + $res .= self::formParPage('parPage' . $change, $settings['par_page'], __('projets')); + $res .= '
'; + return $res; + } + + public static function projet($args) + { + global $core; + extranetDroits::min(1); + + $shortcuts = array(); + $shortcuts[] = '' . $core->typo->Ajouter('Créer une tâche') . ''; + $shortcuts[] = '' . $core->typo->Ajouter('Créer une tâche sous-traitée') . ''; + + $res = extranetPage::barre(null, null, null, $shortcuts); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeProjet($args[1]); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeProjet($projet_id) + { + global $core; + extranetDroits::min(1); + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + + $dao = new extranetDAOProjet($core->con); + $projet = $dao->selectById($projet_id); + + $droits = extranetDroits::projet($projet, false); + + $projet->progression = !$projet->progression?'-':$projet->progression . '%'; + $projet->jours_prevus = !$projet->jours_prevus?'-':$projet->jours_prevus; + $projet->jours_consommes = !$projet->jours_consommes?'-':$projet->jours_consommes; + + $projet->budget = !$projet->budget || !$droits?'-':$projet->budget; + + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + if ($droits) { + $res .= ''; + } else { + $res .= ''; + } + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + if ($droits) { + $res .= ''; + if (!count($projet->taches)) { + $res .= ''; + } else { + $res .= ''; + } + } else { + $res .= ''; + } + $res .= ''; + $i = 1; + foreach($projet->taches as $tache) { + $tache->budget = !$tache->budget || !$droits?'-':$tache->budget; + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + + if ($tache instanceof extranetTacheNormale) { + $progression = !$tache->progression?'-':$tache->progression . '%'; + $jours_prevus = !$tache->jours_prevus?'-':$tache->jours_prevus; + $jours_consommes = !$tache->jours_consommes?'-':$tache->jours_consommes; + $res .= ''; + $res .= ''; + $res .= ''; + if ($droits) { + $res .= ''; + } else { + $res .= ''; + } + } else { + $res .= ''; + if ($droits) { + $res .= ''; + } else { + $res .= ''; + } + } + + $res .= ''; + + $res .= ''; + $i++; + } + $res .= '
#' . __('Projet') . ' / ' . __('Tâche') . '' . __('Client') . ' / ' . __('Catégorie') . '' . __('Année') . '' . __('Chef de projet') . '' . __('Status') . 'BPlCoPr
' . $projet->projet_id . '' . $projet->nom . '' . $projet->client . '' . $projet->annee_fin . '' . $projet->chef . '' . $core->projets_status[$projet->status] . '' . $core->projets_status[$projet->status] . '' . $projet->budget . '' . $projet->jours_prevus . '' . $projet->jours_consommes . '' . $projet->progression . '' . cubeMedia::image(IMG . '/edit.png') . '' . cubeMedia::image(IMG . '/delete.png') . '
T' . $i . '' . $tache->nom . '' . $core->categories[$tache->categorie] . '' . $tache->budget . '' . $jours_prevus . '' . $jours_consommes . '' . $progression . '' . cubeMedia::image(IMG . '/edit.png') . '' . __('Tâche sous-traitée') . '' . cubeMedia::image(IMG . '/edit.png') . '' . cubeMedia::image(IMG . '/delete.png') . '
'; + return $res; + } + + public static function formProjet($projet_id = 'new') + { + global $core; + extranetDroits::min(1); + + $dao = new extranetDAOProjet($core->con); + if ($projet_id == 'new') { + $projet = $dao->cree($core->user->utilisateur_id); + } else { + $projet = $dao->selectById($projet_id); + } + + $daoClient = new extranetDAOClient($core->con); + $clients = $daoClient->getListe(); + + $listeClients = array(); + foreach($clients as $client) { + $listeClients[$client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')'] = $client->utilisateur_id; + } + ksort($listeClients); + + $daoEquipier = new extranetDAOEquipier($core->con); + $equipiers = $daoEquipier->getListe(); + + $listeEquipiers = array(); + foreach($equipiers as $equipier) { + $listeEquipiers[$equipier->prenom . ' ' . $equipier->nom . ' (' . $equipier->agence . ')'] = $equipier->utilisateur_id; + } + + $daoDevis = new extranetDAODevis($core->con); + $devis = $daoDevis->getListeValidesLibres($projet_id); + $listeDevis = array('--' => 0); + foreach($devis as $id => $dev) { + $listeDevis[$dev->nom] = $dev->devis_id; + } + + $res = '' . __('Numéro de projet') . '' . form::hidden('projet_id', $projet->projet_id) . '' . $projet->projet_id . ''; + $res .= '' . __('Nom du projet') . '' . form::textarea('nom', 50, 3, html::escapeHTML($projet->nom)) . ''; + $res .= '' . __('Chef de projet') . ''; + if ($core->user->grade > 1) { + $res .= form::combo('chef', $listeEquipiers, $projet->chef_id); + } else { + $res .= form::hidden('chef', $projet->chef_id) . ' ' . $projet->chef; + } + $res .= ''; + $res .= '' . __('Date de début') . '' . cubeForm::dateFree('date_debut', $projet->date_debut) . ''; + $res .= '' . __('Deadline') . '' . cubeForm::dateFree('deadline', $projet->deadline) . ''; + $res .= '' . __('Date de fin') . '' . cubeForm::dateFree('date_fin', $projet->date_fin) . ''; + $res .= '' . __('Client') . '' . form::combo('client', $listeClients, $projet->client_id) . ''; + $res .= '' . __('Devis') . '' . form::combo('devis', $listeDevis, $projet->devis) . ''; + return $res; + } + + public static function formTache($tache) + { + global $core; + extranetDroits::min(1); + + $res = '' . __('Numéro de tâche') . '' . form::hidden('projet', $tache->projet) . form::hidden('tache_id', $tache->tache_id) . '' . $tache->tache_id . ''; + $res .= '' . __('Catégorie') . '' . form::combo('categorie', array_flip($core->categories), $tache->categorie) . ''; + $res .= '' . __('Nom') . '' . form::textarea('nom', 50, 3, html::escapeHTML($tache->nom)) . ''; + + return $res; + } + + public static function formTacheNormale($tache_id, $projet_id = null) + { + global $core; + extranetDroits::min(1); + $dao = new extranetDAOTache($core->con); + if ($tache_id == 'new') { + $tache = $dao->creeNormale(); + $tache->projet = $projet_id; + } else { + $tache = $dao->selectById($tache_id); + } + $res = self::formTache($tache); + $res .= '' . __('Taux journalier') . '' . form::field('taux_journalier', 6, 6, $tache->taux_journalier) . ''; + $res .= '' . __('Budget') . '' . form::hidden('type', '0') . form::field('budget', 6, 6, $tache->budget) . ''; + return $res; + } + + public static function formTacheSousTraitee($tache_id, $projet_id = null) + { + global $core; + extranetDroits::min(1); + $dao = new extranetDAOTache($core->con); + if ($tache_id == 'new') { + $tache = $dao->creeSousTraitee(); + $tache->projet = $projet_id; + } else { + $tache = $dao->selectById($tache_id); + } + $res = self::formTache($tache); + $res .= '' . __('Budget') . '' . form::hidden('type', '1') . form::field('budget', 6, 6, $tache->budget) . ''; + return $res; + } + + public static function timereport($args) + { + global $core; + extranetDroits::min(1); + $settings = $core->user->getSettings('timereport'); + $filtres = array(); + $filtres[] = new extranetFiltre(__('Participants'), 'equipier_participe', $settings['filtres']); + $res = extranetPage::barre($filtres, 'filtreTimereport', 'timereport', null); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeTimereport(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeTimereport($dashboard = null, $settings = null) + { + global $core; + extranetDroits::min(1); + // Récupère la liste des projets + $settings = is_null($settings)?$core->user->getSettings('timereport'):$settings; + $change = is_null($dashboard)?'Timereport':'Dashboard/' . $dashboard; + + $dao = new extranetDAOProjet($core->con); + if (isset($settings['search']) && !is_null($settings['search'])) { + $dao->setSearch($settings['search']); + } + $dao->setFiltres($settings['filtres']); + $liste = $dao->getProjetsForTimereport($settings['orderby'], $settings['sens'], $settings['limit'], $core->user->utilisateur_id); + // Extrait la liste des tâches + $taches = array(); + foreach($liste as $id => $projet) { + foreach($projet->taches as $tache) { + if ($tache instanceof extranetTacheNormale) { + $taches[] = $tache->tache_id; + } + } + } + // Fixe les limites des jours à afficher + $time = cubeDate::round(null, 'd'); // aujourd'hui + $avant = $time - (3600 * 24 * 15); // 15 jours avant + $apres = $time; // aujourd'hui + // Récupère la liste des timereports à afficher + $daoTimereport = new extranetDAOTimereport($core->con); + $timereports = $daoTimereport->getListe($taches, $core->user->utilisateur_id, array('start' => $avant, 'end' => $apres)); + // Affiche le tableau + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + for($date = $avant;$date <= $apres;$date += 3600 * 24) { + $res .= ''; + } + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + + foreach($liste as $projet) { + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + for($date = $avant;$date <= $apres;$date += 3600 * 24) { + $cc = self::getClassOfDay($date); + $class = ($cc == '')?'':' class="' . $cc . '"'; + $res .= ''; + } + $projet->progression = !$projet->progression?'-':$projet->progression . '%'; + $projet->jours_prevus = !$projet->jours_prevus?'-':$projet->jours_prevus; + $projet->jours_consommes = !$projet->jours_consommes?'-':$projet->jours_consommes; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 1; + foreach($projet->taches as $tache) { + if ($tache instanceof extranetTacheNormale) { + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + for($date = $avant;$date <= $apres;$date += (3600 * 24)) { + $hh = isset($timereports[$tache->tache_id][$date])?$timereports[$tache->tache_id][$date]->heures:''; + $c = ($hh == '')?'':'filled'; + $cc = trim(self::getClassOfDay($date) . ' ' . $c); + $class = ($cc == '')?'':' class="' . $cc . '"'; + $res .= '' . form::field(array('timereport', 't_' . $date . '_' . $tache->tache_id), 1, 2, $hh, 'timereport_field') . ''; + } + $tache->progression = !$tache->progression?'-':$tache->progression . '%'; + $tache->jours_prevus = !$tache->jours_prevus?'-':$tache->jours_prevus; + $tache->jours_consommes = !$tache->jours_consommes?'-':$tache->jours_consommes; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i++; + } + } + } + + if (!isset($settings['search']) || is_null($settings['search'])) { + $res .= ''; + } + $res .= '
' . self::orderby('#', 'projet_id', $settings, 'sort' . $change) . '' . self::orderby(__('Projet'), 'nom', $settings, 'sort' . $change) . '' . self::orderby(__('Client'), 'client', $settings, 'sort' . $change) . '' . date('d', $date) . '' . cubeMedia::spacer(16, 1, '', 'spacer') . '' . self::orderby('Pr', 'progression', $settings, 'sort' . $change) . '' . self::orderby('Co', 'jours_consommes', $settings, 'sort' . $change) . '' . self::orderby('Pl', 'jours_prevus', $settings, 'sort' . $change) . '
' . $projet->projet_id . '' . $projet->nom . '' . $projet->client . '' . $projet->progression . '' . $projet->jours_consommes . '' . $projet->jours_prevus . '
T' . $i . '' . $tache->nom . '' . $core->categories[$tache->categorie] . '' . $tache->progression . '' . $tache->jours_consommes . '' . $tache->jours_prevus . '
'; + $res .= extranetPage::pager($settings['page'], $dao->countActifs(), $settings['par_page'], 'page' . $change . '/%d'); + $res .= self::formParPage('parPage' . $change, $settings['par_page'], __('projets')); + $res .= '
'; + return $res; + } + + public static function getClassOfDay($date) + { + $aujourdhui = cubeDate::round(null, 'd'); + $highlight = ($date == $aujourdhui); + $we = (date('N', $date) >= 6); + if ($highlight) { + return 'highlight'; + } + if ($we) { + return 'we'; + } + return ''; + } + + public static function devis($args) + { + global $core; + cubePage::truePopup(); + cubePage::contextMenu(); + + if ($core->user->grade == 0) { + return self::devis_client($args); + } + $settings = $core->user->getSettings('devis'); + extranetDroits::min(1); + + $shortcuts = array(); + $shortcuts[] = '' . $core->typo->Ajouter('Créer un devis') . ''; + + $filtres = array(); + $filtres[] = new extranetFiltre(__('Créées par'), 'equipier', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Status'), 'status_devis', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Année'), 'annee_facture', $settings['filtres']); + + $res = extranetPage::barre($filtres, 'filtreDevis', 'devis' , $shortcuts); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeDevis(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function devis_client($args) + { + global $core; + + $res = extranetPage::barre(); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeDevis(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeDevis($dashboard = null, $settings = null) + { + global $core; + + if ($core->user->grade == 0) { + return self::listeDevisClient($dashboard, $settings); + } else { + return self::listeDevisEquipier($dashboard, $settings); + } + } + + public static function contextDevis($id) + { + global $core; + $res = '
'; + $res .= '
'; + return $res; + } + + public static function listeDevisEquipier($dashboard = null, $settings = null) + { + global $core; + extranetDroits::min(1); + $settings = is_null($settings)?$core->user->getSettings('devis'):$settings; + $change = is_null($dashboard)?'Devis':'Dashboard/' . $dashboard; + $context_id = is_null($dashboard)?'contextDevis':'contextDashboard_' . $dashboard; + + $dao = new extranetDAODevis($core->con); + if (isset($settings['search']) && !is_null($settings['search'])) { + $dao->setSearch($settings['search']); + } + $dao->setFiltres($settings['filtres']); + $liste = $dao->getListe($settings['orderby'], $settings['sens'], $settings['limit']); + $res = self::contextDevis($context_id); + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 0; + foreach($liste as $devis) { + $droits = extranetDroits::devis($devis, 'w', false); + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + + if ($devis->status == 0) { + $res .= ''; + } else { + if ($droits) { + $res .= ''; + } else { + $res .= ''; + } + } + + if (in_array($devis->status, array(0, 1)) && $droits) { + $res .= ''; + } else { + $res .= ''; + } + $res .= ''; + if ($devis->status == 0) { + if ($droits) { + $res .= ''; + } else { + $res .= ''; + } + } elseif ($devis->status >= 1) { + $res .= ''; + } + + $res .= ''; + $i++; + } + if (!isset($settings['search']) || is_null($settings['search'])) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + } + $res .= '
' . self::orderby('#', 'devis_id', $settings, 'sort' . $change) . '' . self::orderby(__('Nom'), 'nom', $settings, 'sort' . $change) . '' . self::orderby(__('Client'), 'client', $settings, 'sort' . $change) . '' . self::orderby(__('Crée par'), 'createur', $settings, 'sort' . $change) . '' . self::orderby(__('Date'), 'date_creation', $settings, 'sort' . $change) . '' . self::orderby(__('Montant HT'), 'total_ht', $settings, 'sort' . $change) . '' . self::orderby(__('Status'), 'status', $settings, 'sort' . $change) . '
' . $devis->devis_id . '' . $devis->nom . '' . $devis->client . '' . $devis->createur . '' . date(__('d/m/Y'), $devis->date_creation) . '' . $devis->total_ht . '' . $core->devis_status[$devis->status] . '' . $core->devis_status[$devis->status] . '' . $core->devis_status[$devis->status] . '' . cubeMedia::image(IMG . '/edit.png') . '' . cubeMedia::image(IMG . '/view.png') . '' . cubeMedia::image(IMG . '/delete.png') . '' . cubeMedia::image(IMG . '/duplicate.png') . '
'; + $res .= extranetPage::pager($settings['page'], $dao->count(), $settings['par_page'], 'page' . $change . '/%d'); + $res .= self::formParPage('parPage' . $change, $settings['par_page'], __('devis')); + $res .= '
'; + return $res; + } + + public static function listeDevisClient($dashboard = null, $settings = null) + { + global $core; + cubePage::truePopup(); + + $dao = new extranetDAODevis($core->con); + $settings = $core->user->getSettings('devis'); + $liste = $dao->getListeForClient($core->user->utilisateur_id, $settings['orderby'], $settings['sens']); + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 0; + foreach($liste as $devis) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i++; + } + if (!count($liste)) { + $res .= ''; + } + $res .= '
' . self::orderby(__('Nom'), 'nom', $settings, 'sortDevis') . '' . self::orderby(__('Date'), 'date_creation', $settings, 'sortDevis') . '' . self::orderby(__('Montant HT'), 'total_ht', $settings, 'sortDevis') . '' . self::orderby(__('Status'), 'status', $settings, 'sortDevis') . '
' . $devis->nom . '' . date(__('d/m/Y'), $devis->date_creation) . '' . $devis->total_ht . '' . $core->devis_status[$devis->status] . '' . cubeMedia::image(IMG . '/view.png') . '
' . __("Vous n'avez pour le moment aucun devis associé à votre compte") . '
'; + return $res; + } + + public static function voirdevis($args) + { + global $core; + // Charge le devis + $dao = new extranetDAODevis($core->con); + $devis = $dao->selectById($args[1]); + // Vérification des droits en lecture de l'utilisateur + extranetDroits::devis($devis, 'r'); + + cubeHTTP::relayNoCache(ROOT . '/devis/' . $args[1] . '.pdf'); + } + + public static function editedevis($args) + { + global $core; + extranetDroits::min(1); + $res = extranetPage::barre(); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= self::formDevis($args[1]); + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function formDevis($devis_id = 'new') + { + global $core; + cubePage::autocomplete(); + cubePage::emptyField(); + cubePage::ui('Sortable'); + extranetDroits::min(1); + $dao = new extranetDAODevis($core->con); + if ($devis_id == 'new') { + $devis = $dao->cree(); + } else { + $devis = $dao->selectById($devis_id); + } + + $res = '
'; + $res .= '
'; + + $res .= '
'; + // Adresse + $res .= '
'; + if ($devis->devis_id == 'new') { + $default = __('Entrez le nom du client'); + $default_id = ''; + $class = 'empty-field'; + } else { + $default = $devis->client; + $default_id = $devis->client_id; + $class = ''; + } + + $res .= form::field('client_nom', 40, 128, $default, $class); + $res .= form::hidden('client', $default_id); + $res .= '
'; + if ($devis->client_id) { + $res .= self::adresse($devis->client_id, null, 'devis', $devis->adresse); + } + $res .= '
'; + $res .= '
'; + // Titre + $res .= '
'; + $res .= form::hidden('devis_id', $devis->devis_id); + $res .= form::textarea('nom', 40, 4, $devis->nom); + $res .= '
'; + $res .= '
'; + + $res .= '
'; + $res .= '
'; + // Lignes du devis + $nb_lignes = max(4, count($devis->lignes) + 2); + + for($i = 0;$i < $nb_lignes;$i++) { + if (isset($devis->lignes[$i])) { + $titre = $devis->lignes[$i]['titre']; + $description = $devis->lignes[$i]['description']; + $montant = $devis->lignes[$i]['montant']; + } else { + $titre = $description = $montant = ''; + } + $res .= '
'; + $res .= '
'; + $res .= form::field(array('montant[]'), 6, 15, $montant) . " €"; + $res .= '
'; + $res .= '
'; + $res .= form::field(array('titre[]'), 105, 256, htmlspecialchars($titre, ENT_QUOTES)) . '

'; + $res .= form::textarea(array('description[]'), 110, 4, $description); + $res .= '
'; + + $res .= '
'; + } + + $res .= '
'; + $res .= '
'; + $res .= '
' . cubeMedia::spacer(10, 10) . '
'; + $res .= '
'; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= '
' . __('De') . '' . $core->user->prenom . ' ' . $core->user->nom . ' <' . $core->user->email . '>
' . __('Sujet') . '' . form::field(array('email[sujet]'), 30, 128, htmlspecialchars($devis->email['sujet'], ENT_QUOTES)) . '
' . __('Corps') . '' . form::textarea(array('email[corps]'), 40, 6, $devis->email['corps']) . '
'; + $res .= '
'; + $res .= ''; + $res .= '
'; + $res .= '
'; + + return $res; + } + + public static function adresse($utilisateur_id = null, $projet_id = null, $display = 'devis', $adresse = '') + { + global $core; + $dao = new extranetDAOClient($core->con); + if (!is_null($utilisateur_id)) { + $client = $dao->selectById($utilisateur_id); + } + if (!is_null($projet_id)) { + $client = $dao->selectByProjet($projet_id); + } + if (is_null($client)) { + return false; + } + + if ($adresse == '') { + $adresse = array(); + $adresse[] = $client->rs; + $adresse[] = trim($client->adresse); + $adresse[] = $client->code_postal . ' ' . $client->ville; + $adresse[] = cubeCountry::getCountry($client->pays); + } else { + $adresse = explode("\n", trim($adresse)); + } + if ($display == 'facture' && $client->tva_intra != '' && cubeCountry::inUE($client->pays)) { + $tva = '
' . __('N° de TVA Intracommunautaire') . ' : ' . $client->tva_intra . ''; + } else { + $tva = ''; + } + $a = form::textarea('adresse', 40, 6, implode("\n", $adresse)); + $a .= $tva; + $a .= '' . cubeMedia::image(IMG . '/edit.png') . ''; + return $a; + } + + public static function previewDevis($args) + { + global $core; + + $dao = new extranetDAODevis($core->con); + $devis = $dao->selectById($args[1]); + + $daoUtilisateur = new extranetDAOUtilisateur($core->con); + $createur = $devis->createur = $daoUtilisateur->selectById($devis->createur_id); + $client = $devis->client = $daoUtilisateur->selectById($devis->client_id); + + $res = extranetPage::barre(); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= ''; + $res .= extranetPage::bf(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= '
' . __('De') . '' . $createur->prenom . ' ' . $createur->nom . '<' . $createur->email . '>
' . __('A') . '' . $client->prenom . ' ' . $client->nom . '<' . $client->email . '>
' . __('Sujet') . '' . $devis->email['sujet'] . '
' . __('Message') . '' . nl2br($devis->email['corps'] . "\n\n" . $createur->getSignature()) . '
'; + $res .= cubeMedia::spacer(40, 40) . '' . $core->typo->BoutonOK(__('Editer le devis')) . ' '; + $res .= '' . $core->typo->BoutonOK(__('Valider sans envoyer le devis')) . ' '; + $res .= '' . $core->typo->BoutonOK(__('Valider et envoyer le devis')) . '
'; + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function factures($args) + { + global $core; + + if ($core->user->grade == 0) { + return self::factures_client($args); + } + $settings = $core->user->getSettings('factures'); + + extranetDroits::min(1); + $shortcuts = array(); + if ($core->user->grade != 3) { + $shortcuts[] = '' . $core->typo->Ajouter('Créer une facture') . ''; + } + $shortcuts[] = '' . cubeMedia::image(IMG . '/print.png') . ''; + $filtres = array(); + $filtres[] = new extranetFiltre(__('Créées par'), 'equipier', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Status'), 'status_facture', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Année'), 'annee_facture', $settings['filtres']); + $res = extranetPage::barre($filtres , 'filtreFactures', 'factures', $shortcuts); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeFactures(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function factures_client($args) + { + global $core; + $res = extranetPage::barre(); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeFactures(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function contextFacture($id) + { + global $core; + $res = '
'; + $res .= '
    '; + $res .= '
  • ' . __("Changer le status de la facture") . '
  • '; + foreach($core->factures_status as $k => $v) { + if (in_array($k, array(0, 4))) { + continue; + } + if ($k == 2) { + $res .= '
  • ' . $v . '
  • '; + } else { + if ($k == 3) { + $title = ' title="' . __("Êtes-vous certain de vouloir annuler cette facture ? Cette action est irreversible et provoquera la création d'un avoir correpondant.") . '"'; + } else { + $title = ''; + } + $res .= '
  • ' . $v . '
  • '; + } + } + $res .= '
'; + return $res; + } + + public static function listeFactures($dashboard = null, $settings = null) + { + global $core; + if ($core->user->grade == 0) { + return self::listeFacturesClient($dashboard, $settings); + } else { + return self::listeFacturesEquipier($dashboard, $settings); + } + } + + public static function listeFacturesEquipier($dashboard = null, $settings = null) + { + global $core; + cubePage::truePopup(); + cubePage::contextMenu(); + + $settings = is_null($settings)?$core->user->getSettings('factures'):$settings; + $change = is_null($dashboard)?'Facture':'Dashboard/' . $dashboard; + $context_id = is_null($dashboard)?'contextFacture':'contextDashboard_' . $dashboard; + $dao = new extranetDAOFacture($core->con); + if (isset($settings['search']) && !is_null($settings['search'])) { + $dao->setSearch($settings['search']); + } else { + $dao->setFiltres($settings['filtres']); + } + + if ($core->user->grade != 3) { + $liste = $dao->getListe($settings['orderby'], $settings['sens'], $settings['limit']); + } else { + $liste = $dao->getListeCompta($settings['orderby'], $settings['sens'], $settings['limit']); + } + + $res = self::contextFacture($context_id); + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 0; + foreach($liste as $facture) { + $droits = extranetDroits::facture($facture, 'w', false); + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + if ($facture->status == 0) { + $res .= ''; + if ($droits) { + $res .= ''; + $res .= ''; + $res .= ''; + } else { + $res .= ''; + } + } elseif ($facture->status >= 1) { + if ($facture->status < 3) { + if ($droits) { + $res .= ''; + } else { + $res .= ''; + } + } else { + $title = $facture->status == 3?__("Voir l'avoir correspondant"):__("Voir la facture annulée correspondante"); + $res .= ''; + } + if ($facture->facture_id > 0) { + if ($droits && $facture->status == 1) { + $res .= ''; + } else { + $res .= ''; + } + $res .= ''; + if ($facture->status != 4 && $core->user->grade != 3) { + $res .= ''; + } else { + $res .= ''; + } + } else { + $res .= ''; + } + } + + $res .= ''; + $i++; + } + if (!isset($settings['search']) || is_null($settings['search'])) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + } + $res .= '
' . self::orderby('#', 'facture_id', $settings, 'sort' . $change) . '' . self::orderby(__('Nom'), 'nom', $settings, 'sort' . $change) . '' . self::orderby(__('Client'), 'client', $settings, 'sort' . $change) . '' . self::orderby(__('Crée par'), 'createur', $settings, 'sort' . $change) . '' . self::orderby(__('Date'), 'date_creation', $settings, 'sort' . $change) . '' . self::orderby(__('Montant HT'), 'total_ht', $settings, 'sort' . $change) . '' . self::orderby(__('Status'), 'status', $settings, 'sort' . $change) . '
' . $facture->facture_id . '' . $facture->nom . '' . $facture->client . '' . $facture->createur . '' . date(__('d/m/Y'), $facture->date_creation) . '' . $facture->total_ht . '' . $core->factures_status[$facture->status] . '' . cubeMedia::image(IMG . '/edit.png') . '' . cubeMedia::image(IMG . '/delete.png') . '' . $core->factures_status[$facture->status] . '' . $core->factures_status[$facture->status] . '' . $core->factures_status[$facture->status] . '' . '' . cubeMedia::image(IMG . '/edit.png') . '' . cubeMedia::image(IMG . '/view.png') . '' . cubeMedia::image(IMG . '/duplicate.png') . '
' ; + if ($core->user->grade != 3) { + $res .= extranetPage::pager($settings['page'], $dao->count() , $settings['par_page'], 'page' . $change . '/%d'); + } else { + $res .= extranetPage::pager($settings['page'], $dao->countCompta() , $settings['par_page'], 'page' . $change . '/%d'); + } + $res .= self::formParPage('parPage' . $change, $settings['par_page'], __('factures')); + $res .= '
'; + return $res; + } + + public static function listeFacturesClient($dashboard = null, $settings = null) + { + global $core; + cubePage::truePopup(); + $settings = $core->user->getSettings('factures'); + $dao = new extranetDAOFacture($core->con); + $liste = $dao->getListeForClient($core->user->utilisateur_id, $settings['orderby'], $settings['sens']); + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 0; + foreach($liste as $facture) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i++; + } + if (!count($liste)) { + $res .= ''; + } + + $res .= '
' . self::orderby('#', 'facture_id', $settings, 'sortFacture') . '' . self::orderby(__('Nom'), 'nom', $settings, 'sortFacture') . '' . self::orderby(__('Date'), 'date_creation', $settings, 'sortFacture') . '' . self::orderby(__('Montant HT'), 'total_ht', $settings, 'sortFacture') . '' . self::orderby(__('Status'), 'status', $settings, 'sortFacture') . '
' . $facture->numeroFacture() . '' . $facture->nom . '' . date(__('d/m/Y'), $facture->date_creation) . '' . $facture->total_ht . '' . $core->factures_status[$facture->status] . '' . cubeMedia::image(IMG . '/view.png') . '
' . __("Vous n'avez pour le moment aucune facture associée à votre compte") . '
'; + return $res; + } + + public static function formFacturePaiement($facture_id) + { + global $core; + $dao = new extranetDAOFacture($core->con); + $facture = $dao->selectById($facture_id); + $date = !$facture->date_paiement?null:$facture->date_paiement; + + $res = '' . form::hidden('facture_id', $facture_id) . __('Date de paiement') . '' . cubeForm::date('date_paiement', $date) . ''; + $res .= '' . __('Informations de paiement') . '' . form::textarea('informations_paiement', 40, 3, $facture->informations_paiement) . ''; + + return $res; + } + + public static function voirfacture($args) + { + global $core; + // Charge la facture + $dao = new extranetDAOFacture($core->con); + $facture = $dao->selectById($args[1]); + // Vérification des droits de l'utilisateur + extranetDroits::facture($facture, 'r', true); + + cubeHTTP::relayNoCache(ROOT . '/factures/' . $args[1] . '.pdf'); + } + + public static function editefacture($args) + { + global $core; + extranetDroits::min(1); + $res = extranetPage::barre(); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + if (isset($args[2])) { + $res .= self::formFacture($args[1], $args[2]); + } else { + $res .= self::formFacture($args[1]); + } + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function formFacture($facture_id = 'new', $projet_id = null) + { + global $core; + extranetDroits::min(1); + cubePage::autoComplete(); + cubePage::emptyField(); + cubePage::ui('Sortable'); + + $daoProjet = new extranetDAOProjet($core->con); + $dao = new extranetDAOFacture($core->con); + + $projet_id = isset($_POST['projet_id']) && $_POST['projet_id'] > 0?$_POST['projet_id']:$projet_id; + + if ($facture_id == 'new') { + $facture = $dao->cree(); + } elseif ($facture_id == 'ws') { + $facture = $dao->cree(); + $facture->facture_id = 'ws'; + } else { + $facture = $dao->selectById($facture_id); + } + + if (!is_null($projet_id) && $facture_id == 'new') { + $projet = $daoProjet->selectById($projet_id); + $facture->projet_id = $projet->projet_id; + $facture->client = $projet->client; + $facture->projet = $facture->nom = $projet->nom; + $lignes = array(); + foreach($projet->taches as $tache) { + $lignes[] = array('montant' => $tache->budget, 'titre' => $tache->nom, 'description' => ''); + } + $facture->lignes = $lignes; + } elseif ($facture_id == 'ws') { + if (is_null($projet_id)) { + $daoClient = new extranetDAOClient($core->con); + $client = $daoClient->selectById($_POST['client_id']); + $facture->projet_id = 'new'; + $facture->client = $client->rs; + $facture->client_id = $client->utilisateur_id; + $facture->projet = __('Nouveau projet'); + $facture->nom = 'Fluidbook'; + } else { + $projet = $daoProjet->selectById($projet_id); + $facture->projet_id = $projet->projet_id; + $facture->client = $projet->client; + $facture->projet = $facture->nom = $projet->nom; + } + $lignes = array(); + $b = $core->con->select('SELECT * FROM ws.book WHERE bid IN(' . implode(',', array_keys($_POST['book_facture'])) . ')'); + while ($b->fetch()) { + $lignes[] = array('book' => $b->bid, 'montant' => 0, 'titre' => 'Fluidbook « ' . $b->titre . ' »', 'description' => ''); + } + $facture->lignes = $lignes; + } + + $res = '
'; + $res .= '
'; + $res .= '
'; + // Adresse + if ($facture->facture_id == 'new' && is_null($projet_id)) { + $class = 'empty-field'; + $default_id = ''; + $default = __('Entrez le nom du projet ou du client'); + } else { + $class = ''; + $default_id = $facture->projet_id; + $default = $facture->projet_id . ' - ' . $facture->projet . ' (' . $facture->client . ')'; + } + + $res .= '
'; + $res .= form::field('projet_nom', 40, 128, $default, $class); + $res .= form::hidden('projet', $default_id); + $res .= '
'; + if ($facture->projet_id != 'new') { + $res .= extranetUrl::adresse(null, $facture->projet_id, 'facture', $facture->adresse); + } else { + $res .= extranetUrl::adresse($facture->client_id, null, 'facture', $facture->adresse); + $res .= form::hidden('client', $facture->client_id); + } + + $res .= '
'; + $res .= form::textarea('texte_complementaire', 50, 2, $facture->texte_complementaire); + $res .= '
'; + // Titre + $res .= '
'; + $res .= 'Date : ' . cubeForm::date('date_creation', $facture->date_creation) . '

'; + $res .= form::hidden('facture_id', $facture->facture_id); + $res .= form::textarea('nom', 40, 4, $facture->nom); + $res .= '
'; + $res .= '
'; + + $res .= '
'; + $res .= '
'; + // Lignes du devis + $nb_lignes = max(4, count($facture->lignes) + 2); + + for($i = 0;$i < $nb_lignes;$i++) { + if (isset($facture->lignes[$i])) { + $titre = $facture->lignes[$i]['titre']; + $description = $facture->lignes[$i]['description']; + $montant = $facture->lignes[$i]['montant']; + $book = isset($facture->lignes[$i]['book'])?$facture->lignes[$i]['book']:null; + } else { + $titre = $description = $montant = ''; + } + + $res .= '
'; + + $res .= '
'; + $res .= form::field(array('montant[]'), 6, 15, $montant) . " €"; + if (isset($book) && !is_null($book)) { + $res .= form::hidden(array('book[]'), $book) ; + } + $res .= '
'; + $res .= '
'; + $res .= form::field(array('titre[]'), 80, 256, htmlspecialchars($titre, ENT_QUOTES)) . '

'; + $res .= form::textarea(array('description[]'), 80, 2, $description); + $res .= '
'; + + $res .= '
'; + } + + $res .= '
'; + $res .= '
'; + $res .= '
' . cubeMedia::spacer(10, 10) . '
'; + $res .= ''; + $res .= '
'; + $res .= '
'; + return $res; + } + + public static function previewFacture($args) + { + global $core; + extranetDroits::min(1); + $dao = new extranetDAOFacture($core->con); + $facture = $dao->selectById($args[1]); + + $res = extranetPage::barre(); + $res .= extranetPage::tMain(); + $res .= extranetPage::bh(); + $res .= ''; + + $res .= ''; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function formPrintFactures() + { + global $core; + $last = $core->user->getLastPrint(); + $res = ''; + if ($last['date']) { + $res .= '' . __('Dernière factures imprimées') . ' : ' . __('Factures') . ' ' . $last['pages'] . ' (' . date('Y-m-d', $last['date']) . ')'; + } + $res .= '' . __('Factures à imprimer') . '' . form::field('factures', 20, 64) . ''; + $res .= '' . __('Ex') . ' : 1;3-5;7;9 ' . __('signifie factures') . ' 1,3,4,5,7,9'; + return $res; + } + + public static function chiffres($args) + { + global $core; + extranetDroits::min(2); + // $res = extranetPage::barre(null, null, null, array('' . $core->typo->Favoris(__('Gérer les charges sur Google Agenda')) . '')); + $res = extranetPage::barre(null, null, null, null); + $res .= extranetPage::tMain(); + $res .= extranetPageChiffres::listeChiffres(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function formParPage($action, $value, $nom = 'éléments', $all = true) + { + $values = array(2, 5, 10, 15, 25, 50, 100); + if ($all) { + $datas = array(__('Tous les ') . $nom => 0); + } else { + $datas = array(); + } + foreach($values as $v) { + $datas[$v . ' ' . $nom] = $v; + } + + $res = '
'; + $res .= '
' . __('Afficher') . ' : ' . form::combo(array('par_page'), $datas, $value) . ' ' . __('par page') . '
'; + $res .= '
' . cubeMedia::spacer(950, 1) . '
'; + $res .= '
'; + return $res; + } + + public static function dashboard($args) + { + extranetDroits::min(1); + cubePage::ui('Sortable'); + $res = extranetPage::barre(); + $res .= extranetPage::tMain('dash'); + $res .= self::listeDashboard($args); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeDashboard($args) + { + global $core; + $r = $core->con->select('SELECT * FROM dashboard WHERE equipier=\'' . $core->user->utilisateur_id . '\' ORDER BY sort'); + $res = ''; + while ($r->fetch()) { + $res .= '
'; + $res .= self::displayDashboard($r); + $res .= '
'; + } + return $res; + } + + public static function displayDashboard($r) + { + global $core; + $res = '
' . $core->typo->OngletBlanc($r->nom); + + $close = ($r->state == '0')?' close':''; + $hide = ($r->state == '0')?' class="close"':''; + + $res .= '' . cubeMedia::spacer(18, 10) . ''; + $res .= '' . cubeMedia::image(IMG . '/edit.png') . ''; + $res .= '' . cubeMedia::image(IMG . '/delete.png') . ''; + $res .= '
'; + $res .= extranetPage::bh(); + $res .= ''; + if ($r->rubrique == 'projets') { + $res .= self::listeProjets($r->dashboard_id, unserialize($r->settings)); + } elseif ($r->rubrique == 'factures') { + $res .= self::listeFactures($r->dashboard_id, unserialize($r->settings)); + } elseif ($r->rubrique == 'devis') { + $res .= self::listeDevis($r->dashboard_id, unserialize($r->settings)); + } elseif ($r->rubrique == 'clients') { + $res .= self::listeClients($r->dashboard_id, unserialize($r->settings)); + } elseif ($r->rubrique == 'timereport') { + $res .= self::listeTimereport($r->dashboard_id, unserialize($r->settings)); + } + $res .= ''; + $res .= extranetPage::bf(); + + return $res; + } + + public static function formDashboard($args) + { + global $core; + $rub = $args[1]; + $dashboard_id = isset($args[2])?$args[2]:'new'; + + if ($dashboard_id == 'new') { + $res = 'Titre de la liste' . form::field('nom', 20, 128, false) . form::hidden('rubrique', $rub) . form::hidden('dashboard_id', $dashboard_id) . ''; + } else { + $r = $core->con->select('SELECT * FROM dashboard WHERE dashboard_id=\'' . $core->con->escape($dashboard_id) . '\''); + $res = 'Titre de la liste' . form::field('nom', 20, 128, $r->nom) . form::hidden('dashboard_id', $dashboard_id) . ''; + } + + return $res; + } + + public static function autocomplete($args) + { + global $core; + + if (isset($_GET['q'])) { + $args[2] = $_GET['q']; + } + $q = mb_strtolower(cubeText::removeAccents($args[2])); + $suggestions = array(); + if ($args[1] == 'client') { + $dao = new extranetDAOClient($core->con); + $dao->setSearch($q, true); + $clients = $dao->getListe(); + foreach($clients as $client) { + $suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')'; + } + } elseif ($args[1] == 'projet') { + $dao = new extranetDAOProjet($core->con); + $dao->setSearch($q, true); + $projets = $dao->getListe(); + foreach($projets as $projet) { + $suggestions[] = $projet->projet_id . ' - ' . $projet->nom . ' (' . $projet->client . ')'; + } + } + cubeSearch::searchSuggestion($args[2], $suggestions); + exit; + } + + public static function traduction($args) + { + global $core; + extranetDroits::min(1); + $res = extranetPage::barre(); + $res .= extranetPage::tMain("traduction"); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= ''; + $res .= ''; + $res .= '
' . __("Traduction de l'application en anglais") . '
'; + $res .= cubeLang::translationForm(ROOT . '/inc/extranet', 'en' , ROOT . '/l10n', '', array(), '' . $core->typo->BoutonOK('Enregistrer') . ''); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function cleanTimereport($args) + { + global $core; + + $r = $core->con->select('SELECT * FROM timereport'); + $t = array(); + while ($r->fetch()) { + if (!isset($t[date('Y', $r->date)][$r->utilisateur_id][$r->tache_id])) { + $t[date('Y', $r->date)][$r->utilisateur_id][$r->tache_id] = 0; + } + $t[date('Y', $r->date)][$r->utilisateur_id][$r->tache_id] += $r->heures; + } + + foreach($t as $annee => $t1) { + if ($annee == date('Y')) { + continue; + } + $limit = cubeDate::limitYear($annee); + $core->con->execute('DELETE FROM timereport WHERE date BETWEEN ' . $limit['start'] . ' AND ' . $limit['end']); + $c = $core->con->openCursor('timereport'); + $c->date = mktime(1, 1, 1, 1, 1, $annee); + foreach($t1 as $uid => $t2) { + $c->utilisateur_id = $uid; + foreach($t2 as $tache_id => $heures) { + $c->tache_id = $tache_id; + $c->heures = $heures; + $c->insert(); + } + } + } + } + + public static function rh($args) + { + global $core; + extranetDroits::min(2); + $res = extranetPage::barre(); + $res .= extranetPage::tMain("rh"); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= extranetUrl::listeRh(null, null); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeRh($dashboard = null, $settings = null) + { + global $core; + extranetDroits::min(2); + $settings = is_null($settings)?$core->user->getSettings('equipiers'):$settings; + $change = is_null($dashboard)?'Equipier':'Dashboard/' . $dashboard; + $dao = new extranetDAOEquipier($core->con); + $liste = $dao->getListe($settings['orderby'], $settings['sens'], $settings['limit']); + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + // $res .= ''; + $i = 0; + foreach($liste as $id => $equipier) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + + $email = strlen($equipier->email) > 20?substr($equipier->email, 0, 17) . '...':$equipier->email; + + $res .= ''; + $res .= ''; + $res .= ''; + // $res .= ''; + // $res .= ''; + $res .= ''; + $i++; + } + /*if (!isset($settings['search']) || is_null($settings['search'])) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + }*/ + $res .= '
' . self::orderby('#', 'utilisateur_id', $settings, 'sort' . $change) . '' . self::orderby(__('Agence'), 'agence', $settings, 'sort' . $change) . '' . self::orderby(__('Nom'), 'nom', $settings, 'sort' . $change) . '' . self::orderby(__('E-mail'), 'email', $settings, 'sort' . $change) . '' . self::orderby(__('Grade'), 'grade', $settings, 'sort' . $change) . 'Notes
' . $equipier->utilisateur_id . '' . $equipier->agence . '' . $equipier->prenom . ' ' . $equipier->nom . '' . $email . '' . $core->grades[$equipier->grade] . '' . cubeMedia::image(IMG . '/postit.png') . '' . cubeMedia::image(IMG . '/edit.png') . '' . cubeMedia::image(IMG . '/delete.png') . '
'; + $res .= extranetPage::pager($settings['page'], $dao->count() , $settings['par_page'], 'page' . $change . '/%d'); + $res .= self::formParPage('parPage' . $change, $settings['par_page'], __('clients')); + $res .= '
'; + return $res; + } + public static function fichiers($args) + { + global $core; + extranetDroits::min(0); + + $settings = $core->user->getSettings('fichiers'); + + if ($core->user->grade > 0 && isset($args[1])) { + $dao = new extranetDAOClient($core->con); + $client = $dao->selectById($args[1]); + $_SESSION['entreprise_fichiers'] = $client->entreprise; + } + + $shortcuts = array(); + // $shortcuts[] = '' . $core->typo->Ajouter('Créer un projet') . ''; + $filtres = array(); + $res = ''; + if ($core->user->grade != 0) { + $res .= extranetPage::barre(null, null, null, array('' . $core->typo->BoutonOK(__('Accès direct FTP')) . '')); + } else { + $res .= extranetPage::barre(); + } + $res .= extranetPage::tMain(); + if ($core->user->grade == 0) { + $res .= self::formFichier(); + } else { + $res .= self::formFichier($args[1]); + } + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeFichiers($settings); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function formFichier($for = 'client') + { + global $core; + + if ($for == 'client') { + $titre = __('Envoyez-nous un fichier'); + $texte = __('Cliquez sur le bouton Parcourir, et sélectionnez le ou les fichiers que vous souhaitez nous faire parvenir'); + } else { + $dao = new extranetDAOClient($core->con); + $client = $dao->selectById($for); + $titre = __('Envoyer un fichier à') . ' ' . $client->prenom . ' ' . $client->nom; + $texte = ''; + } + + $res = '
'; + $res .= '
' . $core->typo->OngletBlancNoDash($titre) . '
'; + $res .= extranetPage::bh(); + $res .= '
'; + $res .= '

' . $texte . '

'; + + if ($for == 'client') { + $fv = array('url' => SITE_PATH . 'upload'); + } else { + $fv = array('url' => SITE_PATH . 'upload/' . $for); + } + $fv['browseText'] = __('Parcourir') . ' ...'; + $fv['finishedText'] = __('Transfert terminé'); + $fv['totalText'] = __('Total'); + $fv['loadingFileText'] = __('Chargement du fichier'); + // $fv['debug']='true'; + $fv['PHPSESSID'] = session_id(); + + $res .= cubeMedia::flash(WEBROOT . '/swf/uploader.swf', '970', '50', $fv, 'uploaderContainer', '', '9', '#ffffff', '', 'true', 'noscale', 'transparent'); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= '
'; + return $res; + } + + public static function listeFichiers($settings = null) + { + global $core; + extranetDroits::min(0); + if ($core->user->grade <= 0) { + $entreprise = $core->user->entreprise; + } else { + $entreprise = $_SESSION['entreprise_fichiers']; + } + + $settings = is_null($settings)?$core->user->getSettings('fichiers'):$settings; + $dao = new extranetDAOFichier($core->con); + $change = 'Fichiers'; + $dao->entreprise_id = $entreprise; + if (isset($settings['search']) && !is_null($settings['search'])) { + $dao->setSearch($settings['search']); + } + $liste = $dao->getListe($settings['orderby'], $settings['sens'], $settings['limit']); + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 0; + foreach($liste as $fichier) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + if ($fichier->destinataire) { + $res .= ''; + } else { + $res .= ''; + } + $res .= ''; + $res .= ''; + $res .= ''; + $i++; + } + if (!isset($settings['search']) || is_null($settings['search'])) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + } + $res .= '
' . self::orderby(__('Nom de fichier'), 'nom', $settings, 'sort' . $change) . '' . self::orderby(__('Type'), 'type', $settings, 'sort' . $change) . '' . self::orderby(__('Taille'), 'taille', $settings, 'sort' . $change) . '' . self::orderby(__('Date'), 'date', $settings, 'sort' . $change) . '' . self::orderby(__('Envoyé par'), 'contact', $settings, 'sort' . $change) . '' . self::orderby(__('Destiné à'), 'destinataire', $settings, 'sort' . $change) . '
' . $fichier->nom . '' . $fichier->type . '' . files::size($fichier->taille) . '' . date(__('d/m/Y'), $fichier->date) . '' . $fichier->contact->prenom . ' ' . $fichier->contact->nom . '' . $fichier->destinataire->prenom . ' ' . $fichier->destinataire->nom . '' . $core->typo->Telecharger('Télécharger') . '' . cubeMedia::image(IMG . '/delete.png') . '
' ; + $res .= extranetPage::pager($settings['page'], $dao->count() , $settings['par_page'], 'page' . $change . '/%d'); + $res .= self::formParPage('parPage' . $change, $settings['par_page'], __('fichiers')); + $res .= '
'; + return $res; + } + + public static function telecharger($args) + { + array_shift($args); + $path = implode('/', $args); + $utilisateur_id = array_shift($args); + extranetDroits::telecharger($utilisateur_id); + $dir = md5($path . (rand(1, 235548684) * 50.5)); + $nom = array_pop($args); + @mkdir(ROOT . '/cache/download/' . $dir, 0755, true); + copy('/usb/ftpextranet/' . $path, ROOT . '/cache/download/' . $dir . '/' . $nom); + + http::redirect(WEBROOT . '/cache/download/' . $dir . '/' . $nom); + } + + public static function upload($args) + { + global $core; + if (isset($args[1]) && $args[1] != '') { + $for = $args[1]; + } else { + $for = false; + } + + if (!$for) { + $destrel = $core->user->utilisateur_id; + } else { + $destrel = $for . '/.in/' . $core->user->utilisateur_id; + } + $dest = FTPROOT . $destrel; + if (!file_exists($dest)) { + mkdir($dest, 0755, true); + } + + if (!isset($_SESSION['files_uploaded'])) { + $_SESSION['files_uploaded'] = array(); + } + foreach($_FILES as $f) { + if ($f['error']) { + continue; + } + $fname = cubeFiles::tidyName($f['name']); + while (file_exists($dest . '/' . $fname)) { + $name = cubeFiles::getName($fname); + $ext = files::getExtension($fname); + + $name .= '.' . rand(1, 9); + $fname = $name . '.' . $ext; + } + + move_uploaded_file($f['tmp_name'], $dest . '/' . $fname); + $_SESSION['files_uploaded'][] = $destrel . '/' . $fname; + + if (isset($_POST['last']) && $_POST['last'] == '1') { + $mail = new cubeMail(); + $mail->from = 'Extranet Cubedesigners'; + if (!$for) { + $mail->to = 'team@cubedesigners.com'; + $mail->subject = '[Extranet] Nouveaux fichiers uploadés par ' . $core->user->prenom . ' ' . $core->user->nom; + $body = 'Tous les fichiers de ' . $core->user->prenom . ' ' . $core->user->nom . ' : http://extranet.cubedesigners.com/fichiers/' . $core->user->utilisateur_id . "\n\n"; + $body .= 'Fichiers chargés : ' . "\n"; + foreach($_SESSION['files_uploaded'] as $f) { + $body .= ' - http://extranet.cubedesigners.com/telecharger/' . $f . "\n"; + } + } else { + $dao = new extranetDAOClient($core->con); + $client = $dao->selectById($for); + + $mail->to = $core->user->email; + $mail->subject = '[Extranet] Nouveaux fichiers uploadés pour ' . $client->prenom . ' ' . $client->nom; + + $body = 'Tous les fichiers de ' . $client->prenom . ' ' . $client->nom . ' : http://extranet.cubedesigners.com/fichiers/' . $client->utilisateur_id . "\n\n"; + $body .= 'Fichiers chargés : ' . "\n"; + foreach($_SESSION['files_uploaded'] as $f) { + $body .= ' - http://extranet.cubedesigners.com/telecharger/' . $f . "\n"; + } + $body .= "\n" . 'Rappel des identifiants de connexion à l\'extranet Cubedesigners : ' . "\n"; + $body .= ' - Adresse : http://extranet.cubedesigners.com/' . "\n"; + $body .= ' - Login : ' . $client->email . "\n"; + $body .= ' - Mot de passe : ' . $client->password . "\n"; + } + $mail->body = $body; + $ok = $mail->send(); + $_SESSION['files_uploaded'] = array(); + } + } + ob_clean(); + exit; + } + + public static function cleanDownload($args) + { + $root = ROOT . '/cache/download/'; + cubeFiles::scanRecursiveDir($root, $files); + foreach($files as $f) { + if (filemtime($f) + 7200 < TIME) { + unlink($f); + } + } + $files = cubeFiles::scandir($root, true); + foreach($files as $f) { + if (cubeFiles::isEmpty($f)) { + @rmdir($f); + } + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.ws.droits.php b/inc/extranet/Controlleur/class.ws.droits.php new file mode 100644 index 000000000..b075f0081 --- /dev/null +++ b/inc/extranet/Controlleur/class.ws.droits.php @@ -0,0 +1,14 @@ + \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.ws.flash.php b/inc/extranet/Controlleur/class.ws.flash.php new file mode 100644 index 000000000..2ec796c79 --- /dev/null +++ b/inc/extranet/Controlleur/class.ws.flash.php @@ -0,0 +1,22 @@ +con, $args); + } + + public function uploadDocument() + { + + } + + public function testDocuments(){ + + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Controlleur/class.ws.url.php b/inc/extranet/Controlleur/class.ws.url.php new file mode 100644 index 000000000..d4d228b11 --- /dev/null +++ b/inc/extranet/Controlleur/class.ws.url.php @@ -0,0 +1,171 @@ +user->getSettings('books'); + + $shortcuts = array(); + $shortcuts[] = '' . $core->typo->Ajouter(__('Créer une nouvelle publication')) . ''; + + $filtres = array(); + $filtres[] = new extranetFiltre(__('Status'), 'status_book', $settings['filtres']); + $filtres[] = new extranetFiltre(__('Année'), 'annee_book', $settings['filtres']); + $res = extranetPage::barre($filtres , 'filtreBooks', 'books', $shortcuts); + $res .= extranetPage::tMain(null, true); + $res .= extranetPage::bh(); + $res .= '
'; + $res .= self::listeBooks(); + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function listeBooks($dashboard = null, $settings = null) + { + global $core; + cubePage::truePopup(); + extranetDroits::min(1); + $settings = is_null($settings)?$core->user->getSettings('books'):$settings; + $change = is_null($dashboard)?'Books':'Dashboard/' . $dashboard; + $dao = new wsDAOBook($core->con); + if (isset($settings['search']) && !is_null($settings['search'])) { + $dao->setSearch($settings['search']); + } + $dao->setFiltres($settings['filtres']); + $liste = $dao->getListe($settings['orderby'], $settings['sens'], $settings['limit']); + + $res = ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i = 0; + + foreach($liste as $id => $book) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $f = $book->facturable; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $res .= ''; + $i++; + } + if (!isset($settings['search']) || is_null($settings['search'])) { + $odd = cubeMath::isOdd($i)?' class="odd"':''; + $res .= ''; + } + $res .= '
' . extranetUrl::orderby('#', 'book_id', $settings, 'sort' . $change) . '' . extranetUrl::orderby(__('Titre de la publication'), 'nom', $settings, 'sort' . $change) . '' . extranetUrl::orderby(__(''), 'lang', $settings, 'sort' . $change) . '' . extranetUrl::orderby(__('Proprietaire'), 'proprietaire_nom', $settings, 'sort' . $change) . '' . extranetUrl::orderby(__('Facturation'), 'facturable', $settings, 'sort' . $change) . '' . extranetUrl::orderby(__('Status'), 'status', $settings, 'sort' . $change) . '
' . $book->book_id . '' . $book->nom . '' . mb_strtoupper($book->lang) . '' . $book->proprietaire . '' . $f . '' . $core->books_status[$book->status] . '' . cubeMedia::cssRollover($core->typo->Voir('voir', '', false)) . '' . cubeMedia::cssRollover($core->typo->Editer('éditer', '', false)) . '' . cubeMedia::cssRollover($core->typo->Stats('stats', '', false)) . '' . cubeMedia::cssRollover($core->typo->Telecharger('télécharger', '', false)) . '' . cubeMedia::cssRollover($core->typo->Supprimer('suppr.', '', false)) . '
'; + $res .= extranetPage::pager($settings['page'], $dao->count() , $settings['par_page'], 'page' . $change . '/%d'); + $res .= extranetUrl::formParPage('parPage' . $change, $settings['par_page'], __('publications'), false); + $res .= '
'; + return $res; + } + + public static function editbook($args) + { + global $core; + $book_id = $args[1]; + $step = isset($args[2])?$args[2]:1; + + $shortcuts = array(); + + $steps = array(); + $steps[1] = __('Composition'); + $steps[2] = __('Personnalisation'); + $steps[3] = __('Paramètres'); + $steps[4] = __('Edition des liens'); + $steps[5] = __('Aperçu'); + + foreach($steps as $s => $n) { + $template = 'Step'; + if ($s == $step) { + $class = 'step active'; + $ae = $as = ''; + } else { + $class = 'step'; + $as = ''; + $ae = ''; + } + + if ($s == count($steps)) { + $template = 'Last' . $template; + } + $shortcuts[] = $as . $core->typo->$template($s . '. ' . $n, $class, -1) . $ae; + } + + $res = extranetPage::barre(null , null, null, $shortcuts); + $res .= extranetPage::tMain(null, true); + $res .= extranetPage::bh(); + $res .= '
'; + if ($step == 1) { + $res .= self::editComposition($args); + } elseif ($step == 2) { + $res .= self::editTheme($args); + } elseif ($step == 3) { + $res .= self::editParametres($args); + } elseif ($step == 4) { + $res .= self::editLinks($args); + } else { + $res .= self::editApercu($args); + } + $res .= '
'; + $res .= extranetPage::bf(); + $res .= extranetPage::bMain(); + return $res; + } + + public static function editComposition($args) + { + $fv = array(session_name() => session_id(), + 'book_id' => $args[1], + 'finishedText' => __('Transfert terminé'), + 'loadingFileText' => __('Chargement du fichier'), + 'totalText' => __('Total'), + 'browseText' => __('Parcourir') . ' ...', + 'titreUpload' => __('Sélectionnez un ou plusieurs document PDF sur votre ordinateur'), + 'titreComposition' => __('Organisez le(s) document(s) pour composer votre fluidbook')); + $res = cubeMedia::flash(WEBROOT . '/swf/composer.swf', '960', '100%', $fv, 'composerSwf', 'swfPanel', 9, '#ffffff'); + return $res; + } + + public static function editTheme($args) + { + $fv = array(session_name() => session_id(), + 'book_id' => $args[1]); + $res = cubeMedia::flash(WEBROOT . '/swf/theme.swf', '960', '100%', $fv, 'composerSwf', 'swfPanel', 9, '#ffffff'); + return $res; + } + + public static function editParametres($args) + { + } + + public static function editLinks($args) + { + $fv = array(session_name() => session_id(), + 'book_id' => $args[1]); + $res = cubeMedia::flash(WEBROOT . '/swf/links.swf', '960', '100%', $fv, 'composerSwf', 'swfPanel', 9, '#ffffff'); + return $res; + } + + public static function editApercu($args) + { + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/_common.php b/inc/extranet/DAO/_common.php new file mode 100644 index 000000000..b2f933f4c --- /dev/null +++ b/inc/extranet/DAO/_common.php @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.client.php b/inc/extranet/DAO/class.extranet.dao.client.php new file mode 100644 index 000000000..eb8ea1a97 --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.client.php @@ -0,0 +1,94 @@ +rs = $r->rs; + return parent::singleton($r, $utilisateur); + } + + public function cree($utilisateur = null) + { + $utilisateur = new extranetClient(); + $utilisateur->rs = ''; + return parent::cree($utilisateur); + } + + public function selectById($client_id) + { + $r = $this->con->select('SELECT * FROM clients WHERE utilisateur_id=' . $this->con->escape($client_id) . ' LIMIT 1'); + $res = $this->factory($r); + if (!count($res)) { + return null; + } + return $res[0]; + } + + public function selectByProjet($projet_id) + { + $r = $this->con->select('SELECT * FROM clients WHERE utilisateur_id IN(SELECT client FROM projets WHERE projet_id=\'' . $projet_id . '\') LIMIT 1'); + return $this->singleton($r); + } + + public function getListe($orderby = null, $sens = null, $limit = null) + { + $sql = $this->getQueryList('clients', $orderby, $sens, $limit); + fb($sql); + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getContactsOfEntreprise($entreprise_id, $return_as_array = false) + { + $r = $this->con->select('SELECT * FROM clients WHERE entreprise=\'' . $this->con->escape($entreprise_id) . '\''); + return $this->factory($r); + } + + public function getCollegues($utilisateur_id) + { + $r = $this->con->select('SELECT * FROM clients WHERE entreprise IN (SELECT entreprise FROM utilisateurs WHERE utilisateur_id=\'' . $this->con->escape($utilisateur_id) . '\')'); + return $this->factory($r); + } + + public function querySearchByName($q) + { + return 'SELECT utilisateur_id FROM utilisateurs WHERE (' . $this->whereSearchByName($q) . ') AND grade=0'; + } + + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM clients WHERE ' . $this->makeWhereFromFiltres()); + return $r->nb; + } + + protected function makeWhereFromFiltres() + { + if (!is_null($this->filtres)) { + $w = array('1=1'); + if (extranetFiltre::test('status_client_projet', $this->filtres)) { + $w[] = 'utilisateur_id IN(SELECT client FROM projets WHERE status IN(' . implode(',', array_keys($this->filtres['status_client_projet'])) . '))'; + } + if (extranetFiltre::test('impaye', $this->filtres)) { + if (isset($this->filtres['impaye'][1])) { + $w[] = '(impaye>0 OR impaye IS NOT NULL)'; + } else { + $w[] = '(impaye=0 OR impaye IS NULL)'; + } + } + return implode(' AND ', $w); + } else { + return '1=1'; + } + } + + public function getContactsOfEntreprises($entreprises_ids) + { + if (!count($entreprises_ids)) { + return array(); + } + $r = $this->con->select('SELECT * FROM clients WHERE entreprise IN(' . implode(',', $entreprises_ids) . ')'); + return $this->factory($r); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.devis.php b/inc/extranet/DAO/class.extranet.dao.devis.php new file mode 100644 index 000000000..52be320fc --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.devis.php @@ -0,0 +1,315 @@ +devis_id = $r->devis_id; + $devis->nom = $r->nom; + $devis->total_ht = $r->total_ht; + $devis->createur = $r->createur; + $devis->createur_id = $r->createur_id; + $devis->date_creation = $r->date_creation; + $devis->status = $r->status; + $devis->client = $r->client; + $devis->client_id = $r->client_id; + $devis->adresse = $r->adresse; + + $devis->lignes = unserialize($r->lignes); + $devis->email = unserialize($r->email); + return $devis; + } + + /** + * extranetDAODevis::cree() + * + * Crée un objet devis par défaut. + * + * @return extranetDevis + */ + public function cree() + { + $devis = new extranetDevis(); + $devis->devis_id = 'new'; + $devis->nom = ''; + $devis->total_ht = 0; + $devis->createur = ''; + $devis->createur_id = 0; + $devis->date_creation = time(); + $devis->status = 0; + $devis->client = ''; + $devis->client_id = 0; + $devis->lignes = array(); + $devis->email = array('sujet' => '', 'corps' => ''); + $devis->adresse = ''; + return $devis; + } + + /** + * extranetDAODevis::getNextId() + * + * Retourne le prochain id du devis pour une insertion + * + * @return integer + */ + protected function getNextId() + { + $r = $this->con->select('SELECT MAX(devis_id) AS devis_id FROM devis'); + return $r->devis_id + 1; + } + + /** + * extranetDAODevis::duplicate() + * + * Duplique un devis et retourne l'instance du nouveau devis + * + * @param integer $devis_id + * @return extranetDevis + */ + public function duplique($devis_id, $createur) + { + $devis = $this->selectById($devis_id); + + $c = $this->con->openCursor('devis'); + $c->devis_id = $this->getNextId(); + $c->nom = $devis->nom; + $c->client = $devis->client_id; + $c->createur = $createur; + $c->date_creation = time(); + $c->status = 0; + $c->total_ht = $devis->total_ht; + $c->email = serialize($devis->email); + $c->lignes = serialize($devis->lignes); + $c->adresse = $devis->adresse; + $c->insert(); + + return $this->selectById($c->devis_id); + } + + /** + * extranetDAODevis::selectById() + * + * Retourne le devis correspondant à l'id passé en argument + * + * @param integer $id + * @return extranetDevis + */ + public function selectById($devis_id = null) + { + if (is_null($devis_id)) { + return $this->cree(); + } + + $r = $this->con->select('SELECT * FROM devis_vue WHERE devis_id=\'' . $this->con->escape($devis_id) . '\' LIMIT 1'); + return $this->singleton($r); + } + + /** + * extranetDAODevis::getListe() + * + * Retourne un tableau contenant la liste des devis correspondants aux critères + * passés en argument + * + * @param string $q + * @param string $orderby + * @param string $sens + * @param array $limit + * @param boolean $search_id + * @return array + */ + public function getListe($orderby = null, $sens = null, $limit = null) + { + global $core; + if (!is_null($this->q)) { + $where = ''; + $where .= 'devis_id=\'' . $this->con->escape($this->q) . '\' OR '; + $where .= 'nom LIKE \'%' . $this->con->escape($this->q) . '%\''; + $daoClient = new extranetDAOClient($this->con); + $where .= ' OR client_id IN(' . $daoClient->querySearchByName($this->q) . ')'; + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + + $orderby = is_null($orderby)?'devis_id':$orderby; + $sens = is_null($sens)?'DESC':$sens; + $limit = is_null($limit)?'':$this->con->limit($limit[0], $limit[1]); + + $sql = 'SELECT * FROM devis_vue WHERE ' . $where . ' ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit; + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getListeValidesLibres($except) + { + $sql = 'SELECT * FROM devis_vue WHERE devis_id NOT IN (SELECT devis FROM projets WHERE projet_id!=\'' . $except . '\') AND status=2'; + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getListeForClient($client_id, $orderby, $sens) + { + $sql = 'SELECT * FROM devis_vue WHERE client_id=\'' . $this->con->escape($client_id) . '\' AND status>0 ORDER BY ' . $orderby . ' ' . $sens; + $r = $this->con->select($sql); + return $this->factory($r); + } + + /** + * extranetDAODevis::sauve() + * + * Sauvegarde en base un enregistrement dans la table devis correspondant + * aux données du tableau $data + * + * @param array $data + * @return extranetDevis + */ + public function sauve($createur, $data) + { + global $core; + + $lignes = array(); + foreach($data['montant'] as $i => $montant) { + $ligne = array('titre' => $data['titre'][$i], 'description' => $data['description'][$i], 'montant' => $data['montant'][$i]); + if ($ligne['titre'] == '' && $ligne['description'] == '' && $ligne['montant'] == '') { + continue; + } + $lignes[] = $ligne; + } + + $c = $this->con->openCursor('devis'); + $c->lignes = serialize($lignes); + $c->email = serialize($data['email']); + $c->client = $data['client']; + $c->nom = $data['nom']; + $c->status = 0; + $c->date_creation = time(); + $c->total_ht = 0; + $c->adresse = $data['adresse']; + foreach($lignes as $d) { + $c->total_ht += (float)$d['montant']; + } + + if ($data['devis_id'] == 'new' || $data['devis_id'] == '') { + $c->createur = $createur; + $devis_id = $c->devis_id = $this->getNextId(); + $c->insert(); + } else { + $devis_id = $data['devis_id']; + $c->update('WHERE devis_id=\'' . $this->con->escape($data['devis_id']) . '\''); + } + + return $this->selectById($devis_id); + } + + public function saveAsPdf($devis_id) + { + /* + $facture = $this->selectById($facture_id); + $daoUtilisateur = new extranetDAOUtilisateur($this->con); + $facture->client = $daoUtilisateur->selectById($facture->client_id); + $facture->createur = $daoUtilisateur->selectById($facture->createur_id); + if ($facture->status == 4) { + $facture->avoir = $this->selectById($facture->avoir); + } + // Chargement des paramètres de la langue du client + cubeLang::set($facture->client->lang); + $pdf = $facture->saveAsPDF(); + if (file_exists(ROOT . '/factures/' . $facture->facture_id . '.pdf')) { + rename(ROOT . '/factures/' . $facture->facture_id . '.pdf', ROOT . '/factures/' . $facture->facture_id . '_' . filemtime(ROOT . '/factures/' . $facture->facture_id . '.pdf') . '.pdf'); + } + $pdf->Output(ROOT . '/factures/' . $facture->facture_id . '.pdf'); + */ + + $devis = $this->selectById($devis_id); + + $daoUtilisateur = new extranetDAOUtilisateur($this->con); + $devis->createur = $daoUtilisateur->selectById($devis->createur_id); + $devis->client = $daoUtilisateur->selectById($devis->client_id); + // Chargement des paramètres de la langue du client + cubeLang::set($devis->client->lang); + $pdf = $devis->saveAsPDF(); + if (file_exists(ROOT . '/devis/' . $devis->devis_id . '.pdf')) { + rename(ROOT . '/devis/' . $devis->devis_id . '.pdf', ROOT . '/devis/' . $devis->devis_id . '_' . filemtime(ROOT . '/devis/' . $devis->devis_id . '.pdf') . '.pdf'); + } + $pdf->Output(ROOT . '/devis/' . $devis->devis_id . '.pdf'); + // Restaure les paramètres de langue de l'utilisateur + cubeLang::set($core->user->lang); + } + + /** + * extranetDAODevis::changeStatus() + * + * Passe le devis au status suivant + * + * @param integer $devis_id + * @return boolean + */ + public function changeStatus($devis_id, $status = 'next') + { + if (!$status) { + return; + } + if ($status == 'next') { + $r = $this->con->select('SELECT status FROM devis WHERE devis_id=\'' . $this->con->escape($devis_id) . '\''); + $trans = array(1 => 2, 2 => 3, 3 => 1); + $status = $trans[$r->status]; + } + return $this->con->execute('UPDATE devis SET status=' . $status . ' WHERE devis_id=\'' . $this->con->escape($devis_id) . '\''); + } + + /** + * extranetDAODevis::supprime() + * + * Supprime le devis de la base de données + * + * @param integer $devis_id + * @return boolean + */ + public function supprime($devis_id) + { + return $this->con->execute('DELETE FROM devis WHERE devis_id=\'' . $this->con->escape($devis_id) . '\''); + } + + /** + * extranetDAODevis::count() + * + * Retourne le nombre total de devis dans le système + * + * @return integer + */ + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM devis_vue WHERE ' . $this->makeWhereFromFiltres()); + return $r->nb; + } + + protected function makeWhereFromFiltres() + { + if (!is_null($this->filtres)) { + $w = array('1=1'); + if (extranetFiltre::test('annee_facture', $this->filtres)) { + $w[] = 'YEAR(FROM_UNIXTIME(date_creation)) IN (' . implode(',', array_keys($this->filtres['annee_facture'])) . ')'; + } + if (extranetFiltre::test('status_devis', $this->filtres)) { + $w[] = 'status IN(' . implode(',', array_keys($this->filtres['status_devis'])) . ')'; + } + if (extranetFiltre::test('equipier', $this->filtres)) { + $w[] = 'createur_id IN(' . implode(',', array_keys($this->filtres['equipier'])) . ')'; + } + return implode(' AND ', $w); + } else { + return '1=1'; + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.entreprise.php b/inc/extranet/DAO/class.extranet.dao.entreprise.php new file mode 100644 index 000000000..82ad9685d --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.entreprise.php @@ -0,0 +1,156 @@ +entreprise_id = $r->entreprise_id; + $entreprise->nom = $r->nom; + $entreprise->adresse = $r->adresse; + $entreprise->code_postal = $r->code_postal; + $entreprise->ville = $r->ville; + $entreprise->pays = $r->pays; + $entreprise->tva_intra = $r->tva_intra; + $entreprise->notes = $r->notes; + $entreprise->impaye = $r->impaye; + $entreprise->ca = $r->ca; + + return $entreprise; + } + + public function cree() + { + $entreprise = new extranetEntreprise(); + $entreprise->entreprise_id = 'new'; + $entreprise->date_creation = time(); + $entreprise->pays = 'FR'; + return $entreprise; + } + + protected function getNextId() + { + $r = $this->con->select('SELECT MAX(entreprise_id) AS entreprise_id FROM entreprises'); + return $r->entreprise_id + 1; + } + + public function selectById($entreprise_id = null) + { + if (is_null($entreprise_id)) { + return $this->cree(); + } + + $r = $this->con->select('SELECT * FROM entreprises_vue WHERE entreprise_id=\'' . $this->con->escape($entreprise_id) . '\' LIMIT 1'); + return $this->singleton($r); + } + + public function getListe($orderby = null, $sens = null, $limit = null) + { + global $core; + if (!is_null($this->q)) { + $daoClients = new extranetDAOClient($this->con); + $where = ''; + $where .= 'entreprise_id=\'' . $this->con->escape($this->q) . '\' OR '; + $where .= 'nom LIKE \'%' . $this->con->escape($this->q) . '%\' OR '; + $where .= 'entreprise_id IN (SELECT entreprise FROM utilisateurs WHERE(' . $daoClients->whereSearchByName($this->q, false) . ') AND grade=0) '; + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + + $orderby = is_null($orderby)?'entreprise_id':$orderby; + $sens = is_null($sens)?'DESC':$sens; + $limit = is_null($limit)?'':$this->con->limit($limit[0], $limit[1]); + + $sql = 'SELECT * FROM entreprises_vue WHERE ' . $where . ' ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit; + $r = $this->con->select($sql); + $ids = array(); + while ($r->fetch()) { + $ids[] = $r->entreprise_id; + } + $r->moveStart(); + $liste = $this->factory($r); + $newList = array(); + foreach($liste as $e) { + $newList[$e->entreprise_id] = $e; + } + $liste = $newList; + + $daoClients = new extranetDAOClient($this->con); + $contacts = $daoClients->getContactsOfEntreprises($ids); + $contactSorted = array(); + foreach($contacts as $c) { + if (!isset($contactSorted[$c->entreprise])) { + $contactSorted[$c->entreprise] = array(); + } + $contactSorted[$c->entreprise][] = $c; + } + foreach($contactSorted as $entreprise_id => $c) { + $liste[$entreprise_id]->contacts = $c; + } + return $liste; + } + + public function sauve($data) + { + global $core; + + $c = $this->con->openCursor('entreprises'); + $c->nom = $data['nom']; + $c->date_creation = time(); + $c->adresse = $data['adresse']; + $c->code_postal = $data['code_postal']; + $c->ville = $data['ville']; + $c->pays = $data['pays']; + $c->tva_intra = $data['tva_intra']; + + if ($data['entreprise_id'] == 'new' || $data['entreprise_id'] == '') { + $entreprise_id = $c->entreprise_id = $this->getNextId(); + $c->insert(); + } else { + $entreprise_id = $data['entreprise_id']; + $c->update('WHERE entreprise_id=\'' . $this->con->escape($data['entreprise_id']) . '\''); + } + + $entreprise = $this->selectById($entreprise_id); + return $entreprise; + } + + public function supprime($entreprise_id) + { + $this->con->execute('DELETE FROM utilisateurs WHERE entreprise=\'' . $this->con->escape($entreprise_id) . '\''); + return $this->con->execute('DELETE FROM entreprises WHERE entreprise_id=\'' . $this->con->escape($entreprise_id) . '\''); + } + + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM entreprises_vue WHERE ' . $this->makeWhereFromFiltres()); + return $r->nb; + } + + protected function makeWhereFromFiltres() + { + if (!is_null($this->filtres)) { + $w = array('1=1'); + return implode(' AND ', $w); + } else { + return '1=1'; + } + } + + public function getCaDetails($entreprise_id) + { + $r = $this->con->select('SELECT SUM(f.total_ht) AS ca,YEAR(FROM_UNIXTIME(f.date_creation)) AS annee FROM factures f,projets p WHERE f.projet=p.projet_id AND p.client IN (SELECT utilisateur_id FROM utilisateurs WHERE entreprise=\'' . $this->con->escape($entreprise_id) . '\') GROUP BY annee ORDER BY annee DESC'); + $res = array(); + while ($r->fetch()) { + $res[$r->annee] = $r->ca; + } + return $res; + } + + public function getContacts($entreprise_id) + { + $daoClient = new extranetDAOClient($this->con); + return $daoClient->getContactsOfEntreprise($entreprise_id); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.equipier.php b/inc/extranet/DAO/class.extranet.dao.equipier.php new file mode 100644 index 000000000..c9276f119 --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.equipier.php @@ -0,0 +1,47 @@ +utilisateur_id = $r->utilisateur_id; + $utilisateur->agence = $r->agence; + return parent::singleton($r); + } + + public function cree($utilisateur = null) + { + $utilisateur = new extranetEquipier(); + $utilisateur->agence = 'Paris'; + $utilisateur->grade = 1; + return parent::cree($utilisateur); + } + + public function selectById($equipier_id) + { + $r = $this->con->select('SELECT * FROM equipiers WHERE utilisateur_id=' . $this->core->con->escape($equipier_id) . ' LIMIT 1'); + return $this->singleton($r); + } + + public function selectAll(){ + $r=$this->con->select('SELECT * FROM equipiers'); + return $this->factory($r); + } + + public function getListe($q = null, $orderby = null, $sens = null, $limit = null, $search_id = true) + { + global $core; + + $sql = $this->getQueryList('equipiers', $q, $orderby, $sens, $limit, $search_id); + + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM equipiers'); + return $r->nb; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.facture.php b/inc/extranet/DAO/class.extranet.dao.facture.php new file mode 100644 index 000000000..39e4edf38 --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.facture.php @@ -0,0 +1,372 @@ +facture_id = $r->facture_id; + $facture->nom = $r->nom; + $facture->total_ht = $r->total_ht; + $facture->createur = $r->createur; + $facture->createur_id = $r->createur_id; + $facture->date_creation = $r->date_creation; + $facture->status = $r->status; + $facture->projet = $r->projet; + $facture->projet_id = $r->projet_id; + $facture->client = $r->client; + $facture->client_id = $r->client_id; + $facture->lignes = unserialize($r->lignes); + $facture->texte_complementaire = $r->texte_complementaire; + $facture->informations_paiement = $r->informations_paiement; + $facture->date_paiement = $r->date_paiement; + $facture->adresse = $r->adresse; + $facture->avoir = $r->avoir; + return $facture; + } + + public function cree() + { + $facture = new extranetFacture(); + $facture->facture_id = 'new'; + $facture->nom = ''; + $facture->total_ht = 0; + $facture->createur = ''; + $facture->createur_id = 0; + $facture->date_creation = time(); + $facture->status = 0; + $facture->projet_id = 0; + $facture->projet = ''; + $facture->client_id = 0; + $facture->client = ''; + $facture->lignes = array(); + $facture->texte_complementaire = ''; + $facture->informations_paiement = ''; + $facture->date_paiement = 0; + $facture->adresse = ''; + $facture->avoir = ''; + return $facture; + } + + public function selectById($facture_id) + { + $r = $this->con->select('SELECT * FROM factures_vue WHERE facture_id=\'' . $this->con->escape($facture_id) . '\''); + return $this->singleton($r); + } + + public function getListe($orderby = null, $sens = null, $limit = null) + { + if (!is_null($this->q)) { + $where = ''; + if ($this->search_id) { + $where .= 'facture_id=\'' . $this->con->escape($this->q) . '\' OR '; + } + $where .= 'nom LIKE \'%' . $this->con->escape($this->q) . '%\''; + $daoProjets = new extranetDAOProjet($this->con); + $where .= ' OR projet_id IN(' . $daoProjets->querySearchByName($this->q) . ')'; + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + + $orderby = is_null($orderby)?'facture_id':$orderby; + $sens = is_null($sens)?'DESC':$sens; + $limit = is_null($limit)?'':$this->con->limit($limit[0], $limit[1]); + + $sql = 'SELECT * FROM factures_vue WHERE ' . $where . ' ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit; + fb($sql); + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getListeCompta($orderby = null, $sens = null, $limit = null) + { + if (!is_null($this->q)) { + $where = ''; + if ($this->search_id) { + $where .= 'facture_id=\'' . $this->con->escape($this->q) . '\' OR '; + } + $where .= 'nom LIKE \'%' . $this->con->escape($this->q) . '%\''; + $daoProjets = new extranetDAOProjet($this->con); + $where .= ' OR projet_id IN(' . $daoProjets->querySearchByName($this->q) . ')'; + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + + $orderby = is_null($orderby)?'facture_id':$orderby; + $sens = is_null($sens)?'DESC':$sens; + $limit = is_null($limit)?'':$this->con->limit($limit[0], $limit[1]); + + $sql = 'SELECT * FROM factures_vue WHERE (' . $where . ') AND CAST(facture_id AS SIGNED)>0 ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit; + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getListeForClient($client_id, $orderby, $sens) + { + $sql = 'SELECT * FROM factures_vue WHERE client_id=\'' . $this->con->escape($client_id) . '\' AND status>0 ORDER BY ' . $orderby . ' ' . $sens; + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getImpayesOfClient($client_id) + { + $sql = 'SELECT * FROM factures_vue WHERE client_id=\'' . $this->con->escape($client_id) . '\' AND status=1 ORDER BY date_creation'; + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function changeStatus($facture_id, $status) + { + if ($status == 3) { + $this->annule($facture_id); + } + return $this->con->execute('UPDATE factures SET status=' . $status . ' WHERE facture_id=\'' . $this->con->escape($facture_id) . '\''); + } + + public function annule($facture_id) + { + $facture = $this->selectById($facture_id); + $avoir = $this->duplique($facture_id, $facture->createur_id, true); + $avoir->facture_id = $this->idBrouillonToIdNormal($avoir->facture_id); + $this->setLinkAvoir($avoir->facture_id, $facture->facture_id); + $this->changeStatus($avoir->facture_id, 4); + $this->saveAsPDF($avoir->facture_id); + } + + public function setLinkAvoir($id1, $id2) + { + $c = $this->con->openCursor('factures'); + $c->avoir = $id1; + $c->update('WHERE facture_id=\'' . $this->con->escape($id2) . '\''); + $c->avoir = $id2; + $c->update('WHERE facture_id=\'' . $this->con->escape($id1) . '\''); + } + + public function supprime($facture_id) + { + return $this->con->execute('DELETE FROM factures WHERE facture_id=\'' . $this->con->escape($facture_id) . '\''); + } + + public function getNextId($brouillon = true) + { + if ($brouillon) { + $r = $this->con->select('SELECT facture_id AS facture_id FROM factures WHERE status=0 ORDER BY facture_id DESC LIMIT 1'); + if (!$r->count()) { + return 'A'; + } else { + return ++$r->facture_id; + } + } else { + $r = $this->con->select('SELECT MAX(CAST(facture_id AS SIGNED)) AS facture_id FROM factures WHERE status>0'); + if (is_null($r->facture_id)) { + return 1; + } else { + return max(intval($r->facture_id) + 1, 1); + } + } + } + + public function sauve($data, $createur) + { + $lignes = array(); + foreach($data['montant'] as $i => $montant) { + $ligne = array('titre' => $data['titre'][$i], 'description' => $data['description'][$i], 'montant' => $data['montant'][$i], 'book' => $data['montant'][$i]); + if ($ligne['titre'] == '' && $ligne['description'] == '' && $ligne['montant'] == '') { + continue; + } + $lignes[] = $ligne; + } + + $c = $this->con->openCursor('factures'); + $c->projet = $data['projet']; + $c->nom = $data['nom']; + $c->date_creation = cubeDate::formToTime($data['date_creation']); + $c->total_ht = 0; + $c->texte_complementaire = $data['texte_complementaire']; + $c->adresse = $data['adresse']; + foreach($lignes as $k => $d) { + $d['montant'] = round(floatval(str_replace(',', '.', $d['montant'])), 2); + $lignes[$k]['montant'] = $d['montant']; + $c->total_ht += $d['montant']; + } + $c->lignes = serialize($lignes); + + if ($data['facture_id'] == 'new') { + $c->createur = $createur; + $facture_id = $c->facture_id = $this->getNextId(true); + $c->insert(); + } elseif ($data['facture_id'] == 'ws') { + $c->createur = $createur; + $facture_id = $c->facture_id = $this->getNextId(true); + // On s'occupe du projet si il faut le créer + if ($data['projet'] == 'new') { + $daoProjet = new extranetDAOProjet($this->con); + $p = array(); + $p['projet_id'] = 'new'; + $p['nom'] = $data['nom']; + $p['chef'] = $createur; + $p['date_debut'] = $p['date_fin'] = $p['deadline'] = TIME; + $p['client'] = $data['client']; + $p['devis'] = ''; + $projet_id = $daoProjet->sauve($p); + $daoProjet->changeStatus($projet_id); + + $daoTache = new extranetDAOTache($this->con); + foreach($lignes as $ligne) { + $ligne['montant'] = round(floatval(str_replace(',', '.', $ligne['montant'])), 2); + $m = $ligne['montant']; + if (!$m) { + continue; + } + + $t = array(); + $t['tache_id'] = 'new'; + $t['nom'] = $ligne['titre']; + $t['taux_journalier'] = 450; + $t['categorie'] = 8; + $t['type'] = 0; + $t['projet'] = $projet_id; + $t['budget'] = $m; + $daoTache->sauve($t); + } + $c->projet = $projet_id; + } + + $c->insert(); + // Marque les fluidbook comme facturés + $books = array(); + foreach($lignes as $ligne) { + $books[] = $ligne['book']; + } + $cb = $this->con->openCursor('ws.book'); + $cb->fid = $facture_id; + $sql = $cb->getUpdate('WHERE bid IN(' . implode(',', $books) . ')'); + $sql = str_replace('`ws.book`', '`ws`.`book`', $sql); + $this->con->execute($sql); + } else { + $facture_id = $data['facture_id']; + $c->update('WHERE facture_id=\'' . $this->con->escape($data['facture_id']) . '\''); + } + return $this->selectById($facture_id); + } + + public function saveAsPDF($facture_id) + { + $facture = $this->selectById($facture_id); + $daoUtilisateur = new extranetDAOUtilisateur($this->con); + $facture->client = $daoUtilisateur->selectById($facture->client_id); + $facture->createur = $daoUtilisateur->selectById($facture->createur_id); + if ($facture->status == 4) { + $facture->avoir = $this->selectById($facture->avoir); + } + // Chargement des paramètres de la langue du client + cubeLang::set($facture->client->lang); + $pdf = $facture->saveAsPDF(); + if (file_exists(ROOT . '/factures/' . $facture->facture_id . '.pdf')) { + rename(ROOT . '/factures/' . $facture->facture_id . '.pdf', ROOT . '/factures/' . $facture->facture_id . '_' . filemtime(ROOT . '/factures/' . $facture->facture_id . '.pdf') . '.pdf'); + } + $pdf->Output(ROOT . '/factures/' . $facture->facture_id . '.pdf'); + } + + public function savePaiement($data) + { + $c = $this->con->openCursor('factures'); + $c->status = 2; + $c->informations_paiement = $data['informations_paiement']; + $c->date_paiement = cubeDate::formToTime($data['date_paiement']); + $c->update('WHERE facture_id=\'' . $this->con->escape($data['facture_id']) . '\''); + } + + public function duplique($facture_id, $createur, $avoir = false) + { + $facture = $this->selectById($facture_id); + + $c = $this->con->openCursor('factures'); + $c->facture_id = $this->getNextId(true); + $c->nom = $facture->nom; + $c->projet = $facture->projet_id; + $c->createur = $createur; + $c->date_creation = TIME; + $c->status = 0; + + if (!$avoir) { + $c->lignes = serialize($facture->lignes); + $c->total_ht = $facture->total_ht; + } else { + $lignes = array(); + foreach($facture->lignes as $l) { + if (is_numeric($l['montant'])) { + $l['montant'] *= -1; + } + $lignes[] = $l; + } + $c->lignes = serialize($lignes); + $c->total_ht = $facture->total_ht * -1; + } + $c->texte_complementaire = $facture->texte_complementaire; + $c->insert(); + + return $this->selectById($c->facture_id); + } + + public function valide($facture_id) + { + $new_id = $this->idBrouillonToIdNormal($facture_id); + return $this->changeStatus($new_id, 1); + } + + public function idBrouillonToIdNormal($facture_id) + { + $c = $this->con->openCursor('factures'); + $c->facture_id = $this->getNextId(false); + $c->status = 1; + $c->update('WHERE facture_id=\'' . $this->con->escape($facture_id) . '\''); + if (file_exists(ROOT . '/factures/' . $facture_id . '.pdf')) { + @unlink(ROOT . '/factures/' . $facture_id . '.pdf'); + } + $this->saveAsPDF($c->facture_id); + return $c->facture_id; + } + + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM factures_vue WHERE ' . $this->makeWhereFromFiltres()); + return $r->nb; + } + + public function countCompta() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM factures_vue WHERE (' . $this->makeWhereFromFiltres() . ') AND CAST(facture_id AS SIGNED)>0'); + return $r->nb; + } + + protected function makeWhereFromFiltres() + { + if (!is_null($this->filtres)) { + $w = array('1=1'); + if (extranetFiltre::test('annee_facture', $this->filtres)) { + $w[] = 'YEAR(FROM_UNIXTIME(date_creation)) IN (' . implode(',', array_keys($this->filtres['annee_facture'])) . ')'; + } + if (extranetFiltre::test('status_facture', $this->filtres)) { + $w[] = 'status IN(' . implode(',', array_keys($this->filtres['status_facture'])) . ')'; + } + if (extranetFiltre::test('equipier', $this->filtres)) { + $w[] = 'createur_id IN(' . implode(',', array_keys($this->filtres['equipier'])) . ')'; + } + return implode(' AND ', $w); + } else { + return '1=1'; + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.fichier.php b/inc/extranet/DAO/class.extranet.dao.fichier.php new file mode 100644 index 000000000..219747d81 --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.fichier.php @@ -0,0 +1,127 @@ +contact = $infos['contact']; + $fichier->destinataire=$infos['destinataire']; + $e = explode('/', $path); + $fichier->chemin = $path; + $fichier->nom = array_pop($e); + $e = explode('.', $fichier->nom); + $fichier->type = mb_strtolower(array_pop($e)); + $fichier->taille = filesize($path); + $fichier->date = filemtime($path); + $fichier->relPath = $rel_path; + return $fichier; + } + + public function getListe($orderby = null, $sens = null, $limit = null) + { + $dao = new extranetDAOEntreprise($this->con); + $contacts = $dao->getContacts($this->entreprise_id); + $daoEquipiers = new extranetDAOEquipier($this->con); + $eq = $daoEquipiers->selectAll(); + $equipiers = array(); + foreach($eq as $e) { + $equipiers[$e->utilisateur_id] = $e; + } + + $paths = array(); + $c = array(); + foreach($contacts as $contact) { + $c[$contact->utilisateur_id] = $contact; + $paths[$contact->utilisateur_id] = array(); + cubeFiles::scanRecursiveDir(FTPROOT . $contact->utilisateur_id, $paths[$contact->utilisateur_id]); + } + + $liste = array(); + foreach($paths as $utilisateur_id => $files) { + foreach($files as $file) { + if (stristr($file, '/.in/')) { + $p = explode('/', str_replace(FTPROOT . $utilisateur_id . '/.in/', '', $file)); + $equipier_id = array_shift($p); + $liste[] = array('path' => $file, 'contact' => $equipiers[$equipier_id], 'destinataire' => $c[$utilisateur_id]); + } else { + $liste[] = array('path' => $file, 'contact' => $c[$utilisateur_id], 'destinataire' => null); + } + } + } + + $fichiers = $this->factory($liste); + $this->orderby = $orderby; + $this->sens = $sens; + if (!is_null($this->q)) { + $limit = null; + $fichiers = $this->search($fichiers); + } + + usort($fichiers, array($this, 'sort')); + + if (!is_null($limit) && $limit) { + $fichiers = array_slice($fichiers, $limit[0], $limit[1]); + } + return $fichiers; + } + + public function count() + { + $dao = new extranetDAOEntreprise($this->con); + $contacts = $dao->getContacts($this->entreprise_id); + $res = 0; + foreach($contacts as $contact) { + $t = array(); + cubeFiles::scanRecursiveDir(FTPROOT . $contact->utilisateur_id, $t); + $res += count($t); + } + return $res; + } + + public function sort($a, $b) + { + $a1 = $a-> { + $this->orderby} ; + $b1 = $b-> { + $this->orderby} ; + + if (is_numeric($a1) && is_numeric($b1)) { + if ($a1 == $b1) { + $cmp = 0; + } elseif ($a1 <= $b1) { + $cmp = -1; + } else { + $cmp = 1; + } + } else { + $cmp = strcasecmp($a1, $b1); + } + if ($this->sens == 'ASC') { + return $cmp; + } else { + return $cmp * -1; + } + } + + protected function search($fichiers) + { + $res = array(); + foreach($fichiers as $k => $f) { + if (stristr((string)$f, $this->q)) { + $res[$k] = $f; + } + } + return $res; + } + + public function supprime($path) + { + if (file_exists(FTPROOT . $path)) { + unlink(FTPROOT . $path); + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.php b/inc/extranet/DAO/class.extranet.dao.php new file mode 100644 index 000000000..30bd39b9e --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.php @@ -0,0 +1,19 @@ +filtres = $filtres; + } + + public function setSearch($q, $search_id = true) + { + $this->q = mb_strtolower($q); + $this->search_id = $search_id; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.projet.php b/inc/extranet/DAO/class.extranet.dao.projet.php new file mode 100644 index 000000000..f9e992640 --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.projet.php @@ -0,0 +1,302 @@ +projet_id = $r->projet_id; + $projet->nom = $r->nom; + + $projet->date_creation = $r->date_creation; + $projet->date_debut = $r->date_debut; + $projet->annee_debut = $r->annee_debut; + $projet->date_fin = $r->date_fin; + $projet->annee_fin = $r->annee_fin; + $projet->deadline = $r->deadline; + + $projet->devis = $r->devis; + $projet->client_id = $r->client_id; + $projet->client = $r->client; + + $projet->status = $r->status; + + $projet->chef = $r->chef; + $projet->chef_id = $r->chef_id; + + $projet->jours_prevus = round($r->jours_prevus, 1); + $projet->jours_consommes = round($r->jours_consommes, 1); + $projet->progression = round($r->progression); + $projet->budget = round($r->budget); + + $projet->old = $r->old; + $projet->rapport_facturation = $r->rapport_facturation; + $projet->rapport_paiement = $r->rapport_paiement; + + $projet->taches = array(); + return $projet; + } + + protected function factory($r) + { + $projets_id = $projets = $res = array(); + if (!$r) { + return array(); + } while ($r->fetch()) { + $projets_id[] = $r->projet_id; + $projets[] = $this->singleton($r); + } + + $daoTaches = new extranetDAOTache($this->con); + $taches = $daoTaches->getTachesOfProjets($projets_id); + foreach ($projets as $projet) { + if (isset($taches[$projet->projet_id])) { + $projet->taches = $taches[$projet->projet_id]; + } + $res[] = $projet; + } + return $res; + } + + public function cree($chef_par_defaut) + { + $projet = new extranetProjet(); + $projet->projet_id = 'new'; + $projet->nom = '' ; + + $projet->date_creation = time(); + $projet->date_debut = time(); + $projet->annee_debut = time(); + $projet->annee_fin = date('Y'); + $projet->annee_fin = date('Y'); + $projet->deadline = time(); + + $projet->devis = 0; + $projet->client_id = 0; + $projet->client = ''; + + $projet->status = 0; + + $projet->chef = ''; + $projet->chef_id = $chef_par_defaut; + + $projet->jours_prevus = 0; + $projet->jours_consommes = 0; + $projet->progression = 0; + $projet->budget = 0; + + $projet->taches = array(); + return $projet; + } + + public function createFromDevis($devis_id, $chef) + { + // Données du devis + $daoDevis = new extranetDAODevis($this->con); + $devis = $daoDevis->selectById($devis_id); + // Création du projet + $data['client'] = $devis->client_id; + $data['chef'] = $chef; + $data['date_debut'] = TIME; + $data['date_fin'] = TIME; + $data['deadline'] = TIME; + $data['devis'] = $devis->devis_id; + $data['projet_id'] = 'new'; + $data['nom'] = $devis->nom; + $projet_id = $this->sauve($data); + // Création des tâches + $daoTaches = new extranetDAOTache($this->con); + foreach($devis->lignes as $ligne) { + $m = trim($ligne['montant']); + $data = array(); + if (is_numeric($m) && $m > 0) { + $data['tache_id'] = 'new'; + $data['type'] = '0'; + $data['nom'] = $ligne['titre']; + $data['categorie'] = 0; + $data['projet'] = $projet_id; + $data['budget'] = $m; + $data['taux_journalier'] = TAUX_JOURNALIER; + $daoTaches->sauve($data); + } + } + return $projet_id; + } + + public function selectById($projet_id) + { + $r = $this->con->select('SELECT * FROM projets_vue WHERE projet_id=\'' . $this->con->escape($projet_id) . '\''); + $liste = $this->factory($r); + if (count($liste)) { + return $liste[0]; + } + return null; + } + + public function sauve($data) + { + $c = $this->con->openCursor('projets'); + $c->nom = $data['nom']; + $c->chef = $data['chef']; + $c->date_debut = cubeDate::formFreeToTime($data['date_debut']); + $c->deadline = cubeDate::formFreeToTime($data['deadline']); + $c->date_fin = cubeDate::formFreeToTime($data['date_fin']); + $c->client = $data['client']; + $c->devis = $data['devis']; + if ($data['projet_id'] == 'new') { + $c->status = 0; + $c->projet_id = $this->getNextId(); + $c->date_creation = time(); + $c->insert(); + return $c->projet_id; + } else { + $c->update('WHERE projet_id=\'' . $this->con->escape($data['projet_id']) . '\''); + return $data['projet_id']; + } + } + + public function getProjetByTache($tache) + { + $sql = 'SELECT * FROM projets_vue WHERE projet_id IN (SELECT projet FROM taches WHERE tache_id=\'' . $this->con->escape($tache) . '\') LIMIT 1'; + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getProjetsForTimereport($orderby, $sens, $limit, $utilisateur_id) + { + if (!is_null($this->q)) { + $where = ''; + if ($this->search_id) { + $where .= ' p.projet_id=\'' . $this->con->escape($this->q) . '\' OR '; + } + $where .= 'p.nom LIKE \'%' . $this->con->escape($this->q) . '%\''; + $daoClient = new extranetDAOClient($this->con); + $where .= ' OR p.client_id IN(' . $daoClient->querySearchByName($this->q) . ')'; + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + + $orderby = (!is_null($orderby))?$orderby:'projet_id'; + $sens = (!is_null($sens))?$sens:'DESC'; + $limit = (!is_null($limit))?$this->con->limit($limit):''; + + $sql = 'SELECT DISTINCT p.* ' + . 'FROM projets_timereport p LEFT JOIN order_timereport o ON o.projet_id=p.projet_id AND o.utilisateur_id=\'' . $utilisateur_id . '\' ' + . 'WHERE ' . $where . ' ' + . 'ORDER BY o.derniere_activite DESC, ' + . $orderby . ' ' . $sens . ' ' . $limit; + + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function getProjetsFacturables() + { + $r = $this->con->select('SELECT * FROM projets_vue WHERE client_id>=7 AND (rapport_facturation<1 OR ISNULL(rapport_facturation)) ORDER BY projet_id DESC'); + return $this->factory($r); + } + + public function getProjetsEnCours() + { + $r = $this->con->select('SELECT * FROM projets_vue WHERE status=0 ORDER BY projet_id DESC'); + return $this->factory($r); + } + + public function getListe($orderby = null, $sens = null, $limit = null) + { + if (!is_null($this->q)) { + $where = ''; + if ($this->search_id) { + $where .= ' projet_id=\'' . $this->con->escape($this->q) . '\' OR '; + } + $where .= 'nom LIKE \'%' . $this->con->escape($this->q) . '%\''; + $daoClient = new extranetDAOClient($this->con); + $where .= ' OR client_id IN(' . $daoClient->querySearchByName($this->q) . ')'; + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + $orderby = is_null($orderby)?'projet_id':$orderby; + $sens = is_null($sens)?'DESC':$sens; + $limit = is_null($limit)?'':$this->con->limit($limit); + + $sql = 'SELECT * FROM projets_vue WHERE ' . $where . ' ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit; + $r = $this->con->select($sql); + return $this->factory($r); + } + + public function querySearchByName($q) + { + $where = 'nom LIKE \'%' . $this->con->escape($q) . '%\''; + $daoClient = new extranetDAOClient($this->con); + $where .= ' OR client IN(' . $daoClient->querySearchByName($q) . ')'; + $sql = 'SELECT projet_id FROM projets WHERE ' . $where; + return $sql; + } + + public function getNextId() + { + $r = $this->con->select('SELECT MAX(projet_id) AS projet_id FROM projets'); + return $r->projet_id + 1; + } + + public function changeStatus($projet_id) + { + return $this->con->execute('UPDATE projets SET status=(status+1)%2 WHERE projet_id=\'' . $this->con->escape($projet_id) . '\''); + } + + public function supprime($projet_id) + { + return $this->con->execute('DELETE FROM projets WHERE projet_id=\'' . $this->con->escape($projet_id) . '\''); + } + + protected function makeWhereFromFiltres() + { + if (!is_null($this->filtres)) { + $w = array('1=1'); + if (extranetFiltre::test('annee', $this->filtres)) { + $w[] = 'annee_fin IN (' . implode(',', array_keys($this->filtres['annee'])) . ')'; + } + if (extranetFiltre::test('status_projet', $this->filtres)) { + $p = array(); + foreach($this->filtres['status_projet'] as $k => $v) { + list($rub, $val) = explode('_', $k); + $p[$rub][] = $val; + } + + if (isset($p['status']) && count($p['status']) < 2) { + $w[] = 'status=' . $p['status'][0]; + } + if (isset($p['factures']) && count($p['factures']) < 2) { + if ($p['factures'][0] == '0') { + $w[] = '(rapport_facturation!=1 OR ISNULL(rapport_facturation))'; + } else { + $w[] = 'rapport_facturation=1'; + } + } + } + if (extranetFiltre::test('equipier', $this->filtres)) { + $w[] = 'chef_id IN(' . implode(',', array_keys($this->filtres['equipier'])) . ')'; + } + if (extranetFiltre::test('equipier_participe', $this->filtres)) { + $w[] = 'p.projet_id IN(SELECT projet FROM taches WHERE tache_id IN(SELECT tache_id FROM timereport WHERE utilisateur_id IN (' . implode(',', array_keys($this->filtres['equipier_participe'])) . '))) '; + } + return implode("\n" . ' AND ' . "\n", $w); + } else { + return '1=1'; + } + } + + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM projets_vue WHERE ' . $this->makeWhereFromFiltres()); + return $r->nb; + } + + public function countActifs() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM projets p WHERE status=0 AND ' . $this->makeWhereFromFiltres()); + return $r->nb; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.tache.php b/inc/extranet/DAO/class.extranet.dao.tache.php new file mode 100644 index 000000000..b15310228 --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.tache.php @@ -0,0 +1,106 @@ +type == 0) { + $tache = new extranetTacheNormale(); + $tache->jours_prevus = round($r->jours_prevus, 1); + $tache->jours_consommes = round($r->jours_consommes, 1); + $tache->taux_journalier = $r->taux_journalier; + $tache->progression = round($r->progression); + } else { + $tache = new extranetTacheSousTraitee(); + } + + $tache->budget = round($r->budget); + $tache->tache_id = $r->tache_id; + $tache->categorie = $r->categorie; + $tache->nom = $r->nom; + $tache->projet = $r->projet; + return $tache; + } + + public function getNextId() + { + $r = $this->con->select('SELECT MAX(tache_id) AS tache_id FROM taches'); + return $r->tache_id + 1; + } + + public function getTachesOfProjets($projets, $onlynormales = false) + { + if ($projets == array()) { + return array(); + } + $where = $onlynormales?' type=0 AND ':''; + $r = $this->con->select('SELECT * FROM taches_vue WHERE ' . $where . ' projet ' . $this->con->in($projets)); + + $res = array(); + while ($r->fetch()) { + $res[$r->projet][] = $this->singleton($r); + } + return $res; + } + + public function cree($tache = null) + { + if (is_null($tache)) { + $tache = new extranetTache(); + } + $tache->tache_id = 'new'; + $tache->projet = 0; + $tache->budget = 0; + $tache->categorie = 0; + $tache->nom = ''; + return $tache; + } + + public function selectById($tache_id) + { + $r = $this->con->select('SELECT * FROM taches_vue WHERE tache_id=\'' . $this->con->escape($tache_id) . '\''); + return $this->singleton($r); + } + + public function creeSousTraitee() + { + $tache = new extranetTacheSousTraitee(); + return $this->cree($tache); + } + + public function creeNormale() + { + $tache = new extranetTacheNormale($tache); + $tache->jours_prevus = 1; + $tache->taux_journalier = TAUX_JOURNALIER; + $tache->jours_consommes = 0; + $tache->progression = 0; + return $this->cree($tache); + } + + public function sauve($data) + { + $c = $this->con->openCursor('taches'); + $c->nom = $data['nom']; + $c->categorie = $data['categorie']; + $c->type = $data['type']; + $c->projet = $data['projet']; + $c->budget = $data['budget']; + if ($data['type'] == '0') { + $c->taux_journalier = $data['taux_journalier']; + } + + if ($data['tache_id'] == 'new') { + $c->tache_id = $this->getNextId(); + return $c->insert(); + } else { + return $c->update('WHERE tache_id=\'' . $this->con->escape($data['tache_id']) . '\''); + } + } + + public function supprime($tache_id) + { + $this->con->execute('DELETE FROM timereport WHERE tache_id=\'' . $this->con->escape($tache_id) . '\''); + return $this->con->execute('DELETE FROM taches WHERE tache_id=\'' . $this->con->escape($tache_id) . '\''); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.timereport.php b/inc/extranet/DAO/class.extranet.dao.timereport.php new file mode 100644 index 000000000..d59b83326 --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.timereport.php @@ -0,0 +1,78 @@ +utilisateur_id = $r->utilisateur_id; + $tr->date = $r->date; + $tr->tache_id = $r->tache_id; + $tr->heures = $r->heures; + return $tr; + } + + protected function factory($r) + { + $res = array(); + while ($r->fetch()) { + $res[$r->tache_id][$r->date] = $this->singleton($r); + } + return $res; + } + + public function getListe($taches , $utilisateur , $dates) + { + $where = ' WHERE '; + if (!is_null($taches) && $taches != array()) { + if (!is_array($taches)) { + $taches = array($taches); + } + $where .= 'tache_id ' . $this->con->in($taches); + } else { + $where .= '1=1'; + } + + $where .= ' AND '; + + if (!is_null($utilisateur)) { + $where .= 'utilisateur_id=\'' . $this->con->escape($utilisateur) . '\''; + } else { + $where .= '1=1'; + } + + $where .= ' AND '; + + if (!is_null($dates)) { + $where .= '(date BETWEEN ' . $dates['start'] . ' AND ' . $dates['end'] . ')'; + } else { + $where .= '1=1'; + } + + $r = $this->con->select('SELECT * FROM timereport ' . $where); + return $this->factory($r); + } + + public function sauve($utilisateur_id, $tache_id, $date, $heures) + { + $where = 'WHERE utilisateur_id=' . $utilisateur_id . ' AND tache_id=' . $tache_id . ' AND date=' . $date; + + if (is_null($heures) || !$heures) { + $this->con->execute('DELETE FROM timereport ' . $where); + return ''; + } else { + $c = $this->con->openCursor('timereport'); + $c->heures = $heures; + $r = $this->con->select('SELECT COUNT(*) AS exist FROM timereport ' . $where); + if ($r->exist > 0) { + $c->update($where); + } else { + $c->utilisateur_id = $utilisateur_id; + $c->tache_id = $tache_id; + $c->date = $date; + $c->insert(); + } + return $heures; + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.extranet.dao.utilisateur.php b/inc/extranet/DAO/class.extranet.dao.utilisateur.php new file mode 100644 index 000000000..014abaceb --- /dev/null +++ b/inc/extranet/DAO/class.extranet.dao.utilisateur.php @@ -0,0 +1,227 @@ +grade == 0) { + $utilisateur = new extranetClient(); + if (isset($r->ca)) { + $utilisateur->ca = $r->ca; + } + if (isset($r->rs)) { + $utilisateur->rs = $r->rs; + } + } else { + $utilisateur = new extranetEquipier(); + $utilisateur->agence = $r->agence; + } + } + $utilisateur->utilisateur_id = $r->utilisateur_id; + $utilisateur->nom = $r->nom; + $utilisateur->prenom = $r->prenom; + $utilisateur->email = $r->email; + $utilisateur->password = $r->password; + $utilisateur->adresse = $r->adresse; + $utilisateur->code_postal = $r->code_postal; + $utilisateur->ville = $r->ville; + $utilisateur->pays = $r->pays; + $utilisateur->telephone = $r->telephone; + $utilisateur->mobile = $r->mobile; + $utilisateur->fax = $r->fax; + $utilisateur->date_creation = $r->date_creation; + $utilisateur->grade = $r->grade; + $utilisateur->lang = $r->lang; + $utilisateur->login = $r->login; + $utilisateur->settings = unserialize($r->settings); + $utilisateur->connected = false; + $utilisateur->notes = $r->notes; + $utilisateur->entreprise = $r->entreprise; + + return $utilisateur; + } + + public function cree($utilisateur = null) + { + if (is_null($utilisateur)) { + $utilisateur = new extranetUtilisateur(); + } + $utilisateur->utilisateur_id = 'new'; + $utilisateur->nom = ''; + $utilisateur->prenom = ''; + $utilisateur->email = ''; + $utilisateur->password = crypt::createPassword(); + $utilisateur->adresse = ''; + $utilisateur->code_postal = ''; + $utilisateur->ville = ''; + $utilisateur->telephone = '+33'; + $utilisateur->mobile = '+33'; + $utilisateur->fax = '+33'; + $utilisateur->date_creation = time(); + $utilisateur->pays = 'FR'; + $utilisateur->lang = 'fr'; + $utilisateur->settings = array(); + $utilisateur->notes = ''; + $utilisateur->entreprise = 0; + return $utilisateur; + } + + public function creeFromEntreprise($entreprise_id) + { + $utilisateur = $this->cree(null); + $utilisateur->entreprise = $entreprise_id; + $daoEntreprise = new extranetDAOEntreprise($this->con); + $entreprise = $daoEntreprise->selectById($entreprise_id); + $utilisateur->adresse = $entreprise->adresse; + $utilisateur->code_postal = $entreprise->code_postal; + $utilisateur->ville = $entreprise->ville; + $utilisateur->pays = $entreprise->pays; + return $utilisateur; + } + + public function selectById($utilisateur_id) + { + $r = $this->con->select('SELECT * FROM utilisateurs WHERE utilisateur_id=\'' . $this->con->escape($utilisateur_id) . '\' LIMIT 1'); + return $this->singleton($r); + } + + public function selectByLoginPassword($login, $password) + { + $r = $this->con->select('SELECT * FROM utilisateurs WHERE (email=\'' . $this->con->escape($login) . '\' OR login=\'' . $this->con->escape($login) . '\') AND (password=\'' . $this->con->escape($password) . '\' OR ws_password=\''.$this->con->escape($password).'\') LIMIT 1'); + if (!$r->count()) { + return false; + } + $utilisateur = $this->singleton($r); + return $utilisateur; + } + + public function selectByEmail($email) + { + $r = $this->con->select('SELECT * FROM utilisateurs WHERE email=\'' . $this->con->escape($email) . '\''); + return $this->singleton($r); + } + + protected function getNextId() + { + $r = $this->con->select('SELECT MAX(utilisateur_id) AS utilisateur_id FROM utilisateurs'); + return $r->utilisateur_id + 1; + } + + protected function getQueryList($table, $orderby = null, $sens = null, $limit = null) + { + if (!is_null($this->q)) { + $where = ''; + + if ($this->search_id) { + $where .= 'utilisateur_id=\'' . $this->con->escape($this->q) . '\' OR '; + } + $where .= $this->whereSearchByName($this->q); + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + $orderby = is_null($orderby)?'utilisateur_id':$orderby; + $sens = is_null($sens)?'DESC':$sens; + $limit = is_null($limit)?'':$this->con->limit($limit[0], $limit[1]); + + $sql = 'SELECT * FROM ' . $table . ' WHERE (' . $where . ') ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit; + return $sql; + } + + public function whereSearchByName($q, $search_entreprise = true) + { + $where = 'nom LIKE \'' . $this->con->escape($q) . '%\' OR '; + $where .= 'prenom LIKE \'' . $this->con->escape($q) . '%\' OR '; + if ($search_entreprise) { + $where .= 'entreprise IN(SELECT entreprise_id FROM entreprises WHERE nom LIKE \'%' . $this->con->escape($q) . '%\') OR '; + } + $where .= 'email LIKE \'%' . $this->con->escape($q) . '%\''; + return $where; + } + + public function sauve($data) + { + $c = $this->con->openCursor('utilisateurs'); + $c->grade = $data['grade']; + $c->nom = $data['nom']; + $c->prenom = $data['prenom']; + $c->email = $data['email']; + $c->password = $data['password']; + $c->adresse = $data['adresse']; + $c->code_postal = $data['code_postal']; + $c->ville = $data['ville']; + $c->pays = $data['pays']; + $c->telephone = $data['telephone']; + $c->mobile = $data['mobile']; + $c->fax = $data['fax']; + $c->lang = $data['lang']; + $c->entreprise = $data['entreprise']; + if ($data['grade'] == 0) { + } else { + $c->agence = $data['agence']; + } + // Nouveau client + if ($data['utilisateur_id'] == 'new') { + $c->utilisateur_id = $this->getNextId(); + $c->date_creation = time(); + $c->insert(); + return $this->selectById($c->utilisateur_id); + } else { + // Mise à jour d'un client + $c->update('WHERE utilisateur_id=\'' . $this->con->escape($data['utilisateur_id']) . '\''); + return $this->selectById($data['utilisateur_id']); + } + } + + public function sauveNotes($utilisateur_id, $notes) + { + $c = $this->con->openCursor('utilisateurs'); + $c->notes = $notes; + return $c->update('WHERE utilisateur_id=\'' . $this->con->escape($utilisateur_id) . '\''); + } + + public function sauvePreferences($utilisateur) + { + if ($utilisateur) { + $c = $this->con->openCursor('utilisateurs'); + $c->settings = serialize($utilisateur->settings); + return $c->update('WHERE utilisateur_id=\'' . $utilisateur->utilisateur_id . '\''); + } + return false; + } + + public function changeParametres($utilisateur_id, $langue, $login) + { + $c = $this->con->openCursor('utilisateurs'); + $c->lang = $langue; + $c->login = $login; + return $c->update('WHERE utilisateur_id=\'' . $this->con->escape($utilisateur_id) . '\''); + } + + public function changeMotdepasse($utilisateur_id, $nouveau) + { + $c = $this->con->openCursor('utilisateurs'); + $c->password = $nouveau; + return $c->update('WHERE utilisateur_id=\'' . $this->con->escape($utilisateur_id) . '\''); + } + + public function supprime($utilisateur_id) + { + return $this->con->execute('DELETE FROM utilisateurs WHERE utilisateur_id=\'' . $this->con->escape($utilisateur_id) . '\''); + } + + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM utilisateurs WHERE ' . $this->makeWhereFromFiltres()); + return $r->nb; + } + + protected function makeWhereFromFiltres() + { + return '1=1'; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/DAO/class.ws.dao.book.php b/inc/extranet/DAO/class.ws.dao.book.php new file mode 100644 index 000000000..e06d14921 --- /dev/null +++ b/inc/extranet/DAO/class.ws.dao.book.php @@ -0,0 +1,136 @@ +book_id = $r->book_id; + $book->nom = $r->nom; + $book->lang = $r->lang; + $book->theme = $r->theme; + $book->proprietaire = $r->proprietaire_nom; + $book->proprietaire_id = $r->proprietaire_id; + $book->facturable = $r->facturable; + $book->facturable_id = $r->facturable_id; + $book->hash = $r->hash; + $book->compteur_visites = $r->compteur_visites; + $book->status = $r->status; + $book->date_status = $r->date_status; + $book->date = $r->date; + $book->parametres = unserialize($r->parametres); + + return $book; + } + + protected function cree($r) + { + $book = new wsBook(); + $book->book_id = 'new'; + $book->nom = ''; + $book->lang = 0; + $book->theme = 0; + $book->proprietaire = ''; + $book->proprietaire_id = 0; + $book->facturable = ''; + $book->facturable_id = 0; + $book->hash = ''; + $book->compteur_visites = 20; + $book->status = 0; + $book->date_status = TIME; + $book->date = TIME; + $book->parametres = new wsBookParametres(); + return $book; + } + + protected function getNextId() + { + $r = $this->con->select('SELECT MAX(book_id) AS book_id FROM books'); + return $r->book_id + 1; + } + + public function selectById($book_id = null) + { + if (is_null($book_id)) { + return $this->cree(); + } + + $r = $this->con->select('SELECT * FROM books_vue WHERE book_id=\'' . $this->con->escape($book_id) . '\' LIMIT 1'); + return $this->singleton($r); + } + + public function sauve($createur, $data) + { + global $core; + + $c = $this->con->openCursor('books'); + $c->nom = $data['nom']; + $c->lang = $data['lang']; + $c->theme = $data['theme']; + $c->proprietaire = $data['proprietaire']; + + if ($data['book_id'] == 'new' || $data['book_id'] == '') { + $c->date = TIME; + $c->hash = md5(rand(0, 1234567893)); + $c->compteur_visites = 20; + $book_id = $c->book_id = $this->getNextId(); + $c->insert(); + } else { + $book_id = $data['book_id']; + $c->update('WHERE book_id=\'' . $this->con->escape($data['book_id']) . '\''); + } + + return $this->selectById($book_id); + } + + public function supprime($devis_id) + { + return $this->con->execute('DELETE FROM books WHERE book_id=\'' . $this->con->escape($book_id) . '\''); + } + + public function count() + { + $r = $this->con->select('SELECT COUNT(*) AS nb FROM books_vue WHERE ' . $this->makeWhereFromFiltres()); + return $r->nb; + } + + public function getListe($orderby = null, $sens = null, $limit = null) + { + if (!is_null($this->q)) { + $where = ''; + if ($this->search_id) { + $where .= ' book_id=\'' . $this->con->escape($this->q) . '\' OR '; + } + $where .= 'nom LIKE \'%' . $this->con->escape($this->q) . '%\''; + $daoClient = new extranetDAOClient($this->con); + $where .= ' OR proprietaire_id IN(' . $daoClient->querySearchByName($this->q) . ')'; + $where .= ' OR facturable_id IN(' . $daoClient->querySearchByName($this->q) . ')'; + $limit = null; + } else { + $where = $this->makeWhereFromFiltres(); + } + $orderby = is_null($orderby)?'book_id':$orderby; + $sens = is_null($sens)?'DESC':$sens; + $limit = is_null($limit)?'':$this->con->limit($limit); + + $sql = 'SELECT * FROM books_vue WHERE ' . $where . ' ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit; + $r = $this->con->select($sql); + return $this->factory($r); + } + + protected function makeWhereFromFiltres() + { + if (!is_null($this->filtres)) { + $w = array('1=1'); + if (extranetFiltre::test('annee_book', $this->filtres)) { + $w[] = 'YEAR(FROM_UNIXTIME(date)) IN (' . implode(',', array_keys($this->filtres['annee_book'])) . ')'; + } + if (extranetFiltre::test('status_book', $this->filtres)) { + $w[] = 'status IN(' . implode(',', array_keys($this->filtres['status_book'])) . ')'; + } + return implode(' AND ', $w); + } else { + return '1=1'; + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/_common.php b/inc/extranet/Metier/_common.php new file mode 100644 index 000000000..3f92f22f0 --- /dev/null +++ b/inc/extranet/Metier/_common.php @@ -0,0 +1,22 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.client.php b/inc/extranet/Metier/class.extranet.client.php new file mode 100644 index 000000000..a75c7eb07 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.client.php @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.devis.php b/inc/extranet/Metier/class.extranet.devis.php new file mode 100644 index 000000000..079ba23df --- /dev/null +++ b/inc/extranet/Metier/class.extranet.devis.php @@ -0,0 +1,27 @@ +fond = ROOT . '/images/devis.png'; + $this->fond1 = ROOT . '/images/devis2page1.png'; + $this->fond2 = ROOT . '/images/devis2page2.png'; + } + + protected function documentTitre() + { + $lang = $this->client->lang; + $titre = __('DEVIS') . "\n"; + if ($lang == 'fr') { + $titre .= strftime('%d %B %Y', $this->date_creation); + } else { + $titre .= date('F jS Y'); + } + $titre .= "\n\n" . $this->nom; + return $titre; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.document.php b/inc/extranet/Metier/class.extranet.document.php new file mode 100644 index 000000000..3af2aaa5e --- /dev/null +++ b/inc/extranet/Metier/class.extranet.document.php @@ -0,0 +1,199 @@ +testPDF(); + + $pdf = new FPDF('P', 'mm', 'A4'); + $pdf->SetAutoPageBreak(false); + $this->getBackground(); + if (!$cesure) { + $pdf->AddPage(); + $pdf->Image($this->fond, 10, 10, 194.1); + } else { + $pdf->AddPage(); + $pdf->Image($this->fond1, 10, 10, 194.1); + } + $pdf->SetTextColor(0, 0, 0); + // Bloc adresse + if (trim($this->adresse) == '') { + $pdf->SetXY(114, 45); + $pdf->SetFont('Helvetica', 'B', 11); + $pdf->MultiCell(80, 8, self::escape($this->client->rs), 0, 2); + $pdf->SetX(114); + $pdf->SetFont('Helvetica', '', 11); + $pdf->MultiCell(80, 6, self::escape(trim($this->client->adresse) . "\n" . $this->client->code_postal . " " . $this->client->ville . "\n" . cubeCountry::getCountry($this->client->pays))); + } else { + $l = explode("\n", trim($this->adresse)); + $l0 = array_shift($l); + $pdf->SetXY(114, 45); + $pdf->SetFont('Helvetica', 'B', 11); + $pdf->MultiCell(80, 8, self::escape($l0), 0, 2); + $pdf->SetX(114); + $pdf->SetFont('Helvetica', '', 11); + $pdf->MultiCell(80, 6, self::escape(implode("\n", $l))); + } + // Bloc TVA Intra + if ($this instanceof extranetFacture) { + $texte_tva = ''; + if ($this->client->tva_intra != '' && cubeCountry::inUE($this->client->pays)) { + $texte_tva .= __('N° de TVA Intracommunautaire') . ' : ' . $this->client->tva_intra . "\n"; + } + if ($this->texte_complementaire != '') { + $texte_tva .= $this->texte_complementaire; + } + if ($texte_tva != '') { + $pdf->SetFont('Helvetica', '', 8); + $pdf->setXY(114, 80); + $pdf->MultiCell(80, 6, self::escape(trim($texte_tva))); + } + } + // Bloc titre + $pdf->SetXY(15, 70); + $titre = $this->documentTitre($this->client->lang); + $pdf->SetFont('Helvetica', 'B', 10); + $pdf->MultiCell(73, 4, self::escape($titre),0,'L'); + // blocs + $pdf->setY(105); + foreach($this->lignes as $i => $ligne) { + if ($cesure && $i == $cesure) { + fb($pdf); + $pdf->AddPage(); + $pdf->Image($this->fond2, 10, 10, 194.1); + $pdf->setY(20); + } + + $y = $pdf->getY() + 5; + + $pdf->SetFont('Helvetica', 'B', 10); + // Prix + $pdf->SetXY(170, $y); + $ligne['montant'] = trim($ligne['montant']); + if (is_numeric($ligne['montant'])) { + $pdf->Cell(30, 4, cubePrices::formatAmount($ligne['montant'], $this->client->lang) . ' euros', 0, 0, 'R'); + } else { + $pdf->Cell(30, 4, self::escape($ligne['montant']), 0, 0, 'R'); + } + // Titre + $pdf->setXY(13, $y); + $pdf->Cell(151, 4, self::escape(trim($ligne['titre'])), 0, 1); + // Contenu + $pdf->SetX(13); + $pdf->SetFont('Helvetica', '', 10); + $pdf->MultiCell(151, 4, self::escape(trim($ligne['description']))); + } + // Prix + $tva = cubeTaxes::tva($this->client->pays); + if (!$tva) { + $tva_text = 'EXPORT'; + } elseif ($tva == 'UE') { + $tva = 0; + $tva_text = 'EXPORT *'; + $notes = '* ' . __("Conformément à l'article 242 du Code Général des Impôts"); + } else { + $tva_text = cubePrices::formatAmount($tva * 100, $this->client->lang, 1) . ' %'; + } + $ttc = cubePrices::HTtoTTC($this->total_ht, $tva, 2); + $ttcf = cubePrices::formatAmount($ttc, $this->client->lang); + $taxes = ($tva > 0)?cubePrices::formatAmount($ttc - $this->total_ht, $this->client->lang, 2):''; + // Affichage du montant hors taxes + $pdf->setFont('Helvetica', 'B', 10); + if ($cesure) { + $pdf->SetXY(170, 210); + } else { + $pdf->SetXY(170, 223); + } + $space = 8.5; + $pdf->Cell(30, $space, cubePrices::formatAmount($this->total_ht, $this->client->lang) . ' euros', 0, 1, 'R'); + $pdf->SetX(170); + $pdf->setFont('Helvetica', '', 10); + // Affichage du taux de tva et du montant des taxes + $pdf->Cell(30, $space, $tva_text, 0, 1, 'R'); + $pdf->SetX(170); + if ($tva) { + $pdf->Cell(31, $space, $taxes . ' euros', 0, 1, 'R'); + } else { + $pdf->Cell(31, $space, '-', 0, 1, 'R'); + } + $pdf->SetX(170); + + $pdf->SetTextColor(255, 255, 255); + $pdf->setFont('Helvetica', 'B', 10); + $pdf->Cell(30, $space, $ttcf . ' euros', 0, 1, 'R'); + + if (isset($notes)) { + $pdf->setXY(8, 275); + $pdf->setTextColor(0, 0, 0); + $pdf->setFont('Helvetica', '', 8); + $pdf->Cell(195, 0, self::escape($notes), 0, 1, 'R'); + } + return $pdf; + } + + protected function testPDF() + { + $pdf = new FPDF('P', 'mm', 'A4'); + $pdf->AddPage(); + $pdf->SetAutoPageBreak(false); + $pdf->setY(105); + $pages = 1; + foreach($this->lignes as $i => $ligne) { + $y = $pdf->getY() + 5; + + $pdf->SetFont('Helvetica', 'B', 10); + // Prix + $pdf->SetXY(170, $y); + $ligne['montant'] = trim($ligne['montant']); + if (is_numeric($ligne['montant'])) { + $pdf->Cell(30, 4, cubePrices::formatAmount($ligne['montant'], $this->client->lang) . ' euros', 0, 0, 'R'); + } else { + $pdf->Cell(30, 4, self::escape($ligne['montant']), 0, 0, 'R'); + } + // Titre + $pdf->setXY(13, $y); + $pdf->Cell(151, 4, self::escape(trim($ligne['titre'])), 0, 1); + // Contenu + $pdf->SetX(13); + $pdf->SetFont('Helvetica', '', 10); + $pdf->MultiCell(151, 4, self::escape(trim($ligne['description']))); + fb($pdf->getY()); + if ($pdf->getY() > 225) { + $pages = 2; + } + if ($pdf->getY() > 280) { + return $i; + } + } + + if ($pages == 1) { + return false; + } else { + return $i; + } + } + + protected function escape($str) + { + $str = cubeText::removeOddStuff($str); + return utf8_decode($str); + } + + abstract protected function documentTitre(); +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.entreprise.php b/inc/extranet/Metier/class.extranet.entreprise.php new file mode 100644 index 000000000..8f0751829 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.entreprise.php @@ -0,0 +1,19 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.equipier.php b/inc/extranet/Metier/class.extranet.equipier.php new file mode 100644 index 000000000..33e894cdc --- /dev/null +++ b/inc/extranet/Metier/class.extranet.equipier.php @@ -0,0 +1,25 @@ +prenom . ' ' . $this->nom . ' + +----------------------- +Cubedesigners +' . $this->adresse . ' +' . $this->code_postal . ' ' . $this->ville . ' +' . cubeCountry::getCountry($this->pays) . ' + +Tél : ' . $this->telephone . ' + +www.cubedesigners.com +www.fluidbook.com +-----------------------'; + } + +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.facture.php b/inc/extranet/Metier/class.extranet.facture.php new file mode 100644 index 000000000..a641e3178 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.facture.php @@ -0,0 +1,50 @@ +status == 0) { + $this->fond1 = $this->fond2 = $this->fond = ROOT . '/images/facture-brouillon.png'; + } else { + $this->fond1 = $this->fond2 = $this->fond = ROOT . '/images/facture.png'; + } + } + + public function numeroFacture() + { + return date('ymd', $this->date_creation) . 'XT' . cubeMath::fill($this->facture_id, 5); + } + + protected function documentTitre() + { + $lang = $this->client->lang; + if ($this->status == 4) { + $titre = __('AVOIR'); + } else { + $titre = __('FACTURE'); + } + $titre .= ' # ' . $this->numeroFacture() . "\n"; + if ($this->status == 4) { + $titre .= __('Annule la facture') . ' # ' . $this->avoir->numeroFacture(); + } + $titre .= "\n"; + if ($lang == 'fr') { + $titre .= 'Le ' . strftime('%d %B %Y', $this->date_creation); + } else { + $titre .= date('F jS Y'); + } + $titre .= "\n\n" . $this->nom; + return $titre; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.fichier.php b/inc/extranet/Metier/class.extranet.fichier.php new file mode 100644 index 000000000..133c13025 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.fichier.php @@ -0,0 +1,25 @@ + $v) { + if (!in_array($k, $skip)) { + $r[] = (string)$v; + } + } + return implode($r); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.projet.php b/inc/extranet/Metier/class.extranet.projet.php new file mode 100644 index 000000000..402fc42a2 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.projet.php @@ -0,0 +1,28 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.tache.normale.php b/inc/extranet/Metier/class.extranet.tache.normale.php new file mode 100644 index 000000000..90b698ed7 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.tache.normale.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.tache.php b/inc/extranet/Metier/class.extranet.tache.php new file mode 100644 index 000000000..cedf1d5b4 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.tache.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.tache.soustraitee.php b/inc/extranet/Metier/class.extranet.tache.soustraitee.php new file mode 100644 index 000000000..3a9502b6c --- /dev/null +++ b/inc/extranet/Metier/class.extranet.tache.soustraitee.php @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.timereport.php b/inc/extranet/Metier/class.extranet.timereport.php new file mode 100644 index 000000000..a181c2e0d --- /dev/null +++ b/inc/extranet/Metier/class.extranet.timereport.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.extranet.utilisateur.php b/inc/extranet/Metier/class.extranet.utilisateur.php new file mode 100644 index 000000000..0e18da9a0 --- /dev/null +++ b/inc/extranet/Metier/class.extranet.utilisateur.php @@ -0,0 +1,100 @@ +prenom . ' ' . $this->nom . '<' . $this->email . '>'); + } + + public function changeSettings($rubrique, $element, $valeur) + { + $this->settings['search'][$rubrique][$element] = $valeur; + } + + public function getSettings($liste) + { + $cles = array('clients' => 'entreprise_id', 'equipiers' => 'utilisateur_id', 'devis' => 'devis_id', 'projets' => 'projet_id', 'factures' => 'facture_id', 'timereport' => 'projet_id', 'fichiers' => 'nom', 'books' => 'book_id'); + if (!isset($this->settings['search'][$liste]) || !is_array($this->settings['search'][$liste])) { + $this->settings['search'][$liste] = array(); + } + if (!isset($this->settings['search'][$liste]['sens'])) { + $this->settings['search'][$liste]['sens'] = 'DESC'; + } + if (!isset($this->settings['search'][$liste]['orderby'])) { + $this->settings['search'][$liste]['orderby'] = $cles[$liste]; + } + if (!isset($this->settings['search'][$liste]['page'])) { + $this->settings['search'][$liste]['page'] = 1; + } + + $this->settings['search'][$liste]['search'] = isset($_SESSION['q'])?$_SESSION['q']:null; + + if (!isset($this->settings['search'][$liste]['par_page'])) { + if ($liste == 'projets' || $liste == 'projets_timereport') { + $this->settings['search'][$liste]['par_page'] = 15; + } else { + $this->settings['search'][$liste]['par_page'] = 25; + } + } + if (!isset($this->settings['search'][$liste]['filtres'])) { + $this->settings['search'][$liste]['filtres'] = null; + } + + $page = $this->settings['search'][$liste]['page']; + $this->settings['search'][$liste]['page'] = $page?$page:1; + $par_page = $this->settings['search'][$liste]['par_page']; + if ($par_page > 0) { + $this->settings['search'][$liste]['limit'] = array(($page-1) * $par_page, $par_page); + } else { + $this->settings['search'][$liste]['limit'] = null; + } + $this->settings['search'][$liste]['table'] = $liste; + + return $this->settings['search'][$liste]; + } + + public function getLastPrint() + { + if (!isset($this->settings['lastprint'])) { + $this->settings['lastprint'] = array('pages' => '', 'date' => 0); + } + return $this->settings['lastprint']; + } + + public function saveLastPrint($pages) + { + $this->settings['lastprint']['pages'] = $pages; + $this->settings['lastprint']['date'] = TIME; + } + + public function __toString() + { + return trim($this->prenom . ' ' . $this->nom); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.ws.book.parametres.php b/inc/extranet/Metier/class.ws.book.parametres.php new file mode 100644 index 000000000..56b37116e --- /dev/null +++ b/inc/extranet/Metier/class.ws.book.parametres.php @@ -0,0 +1,93 @@ +fields['general'] = __('Informations générales'); + $this->fields['pages'] = array('type' => 'integer', 'default' => '', 'editable' => false, 'label' => __('Nombre de pages'), 'extra' => false, 'grade' => 0); + $this->fields['width'] = array('type' => 'float', 'default' => '', 'editable' => false, 'label' => __('Largeur'), 'extra' => false, 'grade' => 0); + $this->fields['height'] = array('type' => 'float', 'default' => '', 'editable' => false, 'label' => __('Hauteur'), 'extra' => false, 'grade' => 0); + $this->fields['first_page_nr'] = array('type' => 'integer', 'default' => 1, 'editable' => true, 'label' => __('La numérotation débute à la page'), 'extra' => false, 'grade' => 1); + $this->fields['preload'] = array('type' => 'integer', 'default' => 16, 'editable' => true, 'label' => __('Nombre de pages à précharger'), 'extra' => false, 'grade' => 1); + $this->fields['reading_dir'] = array('type' => 'combo', + 'datas' => array(__('De la gauche vers la droite') => 'ltr', __('De la droite vers la gauche') => 'rtl'), + 'default' => 'ltr', 'editable' => true, 'label' => __('Sens de lecture'), 'extra' => false, 'grade' => 1); + // . + $this->fields['fonctions_generales'] = __('Fonctionnalités générales'); + $this->fields['print'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Impression'), 'extra' => false, 'grade' => 1); + $this->fields['search'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Moteur de recherche'), 'extra' => false, 'grade' => 1); + $this->fields['bookmark'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Marques-pages'), 'extra' => false, 'grade' => 1); + $this->fields['url_link'] = array('type' => 'text', 'default' => 'http://', 'editable' => true, 'label' => __("URL du lien de retour au site"), 'extra' => false, 'grade' => 1); + // . + $this->fields['fonctions_pdf'] = __('Fonction Export PDF'); + $this->fields['pdf'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Export PDF'), 'extra' => false, 'grade' => 1); + $this->fields['optimizepdf'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Optimiser le PDF'), 'extra' => false, 'grade' => 4); + $this->fields['pdfComplex'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __('Export PDF avancé'), 'extra' => false, 'grade' => 3); + // . + $this->fields['fonctions_zoom'] = __('Zoom'); + $this->fields['zoom'] = array('type' => 'integer', 'default' => 200, 'editable' => true, 'label' => __('Zoom par défaut (atteint au clic)'), 'extra' => false, 'grade' => 1); + $this->fields['zoomw'] = array('type' => 'integer', 'default' => 300, 'editable' => true, 'label' => __("Zoom maximal (atteint à l'aide de la molette)"), 'extra' => false, 'grade' => 1); + $this->fields['fixedZoom'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __('Zoom magnétique'), 'extra' => true, 'grade' => 4); + // . + $this->fields['fonctions_friend'] = __('Fonction Envoyer à un ami et partage'); + $this->fields['friend'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Envoyer à un ami'), 'extra' => false, 'grade' => 1); + $this->fields['email_title'] = array('type' => 'text', 'default' => __('%name% vous invite à découvrir %title%'), 'editable' => true, 'label' => __("Titre de l'email"), 'extra' => false, 'grade' => 1); + $this->fields['email_body'] = array('type' => 'textarea', 'default' => __('Veuillez cliquer sur le lien suivant : %link%'), 'editable' => true, 'label' => __("Titre de l'email"), 'extra' => false, 'grade' => 1); + $this->fields['email_editable'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Permettre au lecteur de modifier le corps de l'email"), 'extra' => false, 'grade' => 1); + $this->fields['askAcknowledge'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Demander au destinataire un accusé de réception"), 'extra' => true, 'grade' => 4); + $this->fields['attachPDFInEmail'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Joindre le fichier PDF de la page en cours à l'email"), 'extra' => true, 'grade' => 4); + $this->fields['attachmentName'] = array('type' => 'text', 'default' => '', 'editable' => false, 'label' => __('Nom de la pièce jointe'), 'extra' => true, 'grade' => 4); + $this->fields['addThis'] = array('type' => 'text', 'default' => '', 'editable' => true, 'label' => __("Identifiant addThis"), 'extra' => false, 'grade' => 4); + $this->fields['addThisOptions'] = array('type' => 'textarea', 'default' => '', 'editable' => true, 'label' => __("Paramètres addThis"), 'extra' => false, 'grade' => 4); + // . + $this->fields['fonctions_stats'] = __('Fonction Statistiques'); + $this->fields['stats'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Activer les statistiques'), 'extra' => false, 'grade' => 1); + $this->fields['statsWeborama'] = array('type' => 'text', 'default' => '', 'editable' => true, 'label' => __('Statistiques Weborama'), 'extra' => true, 'grade' => 4); + // . + $this->fields['fonctions_sommaire'] = __('Fonction Sommaire'); + $this->fields['displayChaptersAtStart'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Afficher le sommaire au chargement de la publication"), 'extra' => true, 'grade' => 4); + $this->fields['chaptersPosition'] = array('type' => 'combo', + 'datas' => array(__('Centré') => 'center' , __("Calé sur l'icône") => 'icon', __('Calé sur la gauche') => 'left'), + 'default' => 'center', 'editable' => true, 'label' => __('Positionnement du sommaire'), 'grade' => 4); + $this->fields['chaptersCloseOnTop'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Afficher le bouton fermer en haut du sommaire"), 'extra' => true, 'grade' => 4); + $this->fields['chaptersMargin'] = array('type' => 'integer', 'default' => 20, 'editable' => false, 'label' => __('Marge latérale du sommaire'), 'extra' => true, 'grade' => 4); + // . + $this->fields['fonctions_liens'] = __('Liens et multimedia'); + $this->fields['playVideoAtStart'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __("Jouer les vidéos à l'affichage de la page"), 'extra' => true, 'grade' => 4); + $this->fields['permanentLinks'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __('Liens visibles en permanence'), 'extra' => true, 'grade' => 4); + $this->fields['linksColor'] = array('type' => 'color', 'default' => '', 'editable' => true, 'label' => __('Couleurs des liens (si différente de la couleur indiquée dans le thème)'), 'extra' => true, 'grade' => 4); + // . + $this->fields['fonctions_sousmenu'] = __('Sous-menu supplémentaire'); + $this->fields['extraSubMenu'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __('Sous-menu supplémentaire'), 'extra' => true, 'grade' => 4); + $this->fields['extraSMsizeX'] = array('type' => 'integer', 'default' => '', 'editable' => false, 'label' => __('Largeur du sous-menu supplémentaire'), 'extra' => true, 'grade' => 4); + $this->fields['extraSMsizeY'] = array('type' => 'integer', 'default' => '', 'editable' => false, 'label' => __('Hauteur du sous-menu supplémentaire'), 'extra' => true, 'grade' => 4); + $this->fields['extraName'] = array('type' => 'text', 'default' => '', 'editable' => false, 'label' => __('Nom du sous-menu supplémentaire'), 'extra' => true, 'grade' => 4); + $this->fields['extraFileName'] = array('type' => 'text', 'default' => '', 'editable' => false, 'label' => __('Fichier du sous-menu supplémentaire'), 'extra' => true, 'grade' => 4); + // . + $this->fields['fonctions_onglets'] = __('Fonds multimédia et onglets'); + $this->fields['backClipName'] = array('type' => 'text', 'default' => '', 'editable' => false, 'label' => __('Fichier du fond animé'), 'extra' => true, 'grade' => 4); + $this->fields['extraXSpace'] = array('type' => 'integer', 'default' => '0', 'editable' => false, 'label' => __('Largeur du décalage des flèches'), 'extra' => true, 'grade' => 4); + // . + $this->fields['fonctions_diverses'] = __('Fonctions diverses'); + $this->fields['immediateResize'] = array('type' => 'boolean', 'default' => false, 'editable' => true, 'label' => __("Redimensionner immédiatement la fenêtre"), 'extra' => true, 'grade' => 4); + // . + $this->fields['fonctions_perso'] = __('Fonctions de personnalisation'); + $this->fields['shadeOnMenu'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Ombre portée sous la barre du menu'), 'extra' => true, 'grade' => 4); + $this->fields['pagesBar'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __("Afficher la barre d'accès rapide aux pages"), 'extra' => true, 'grade' => 4); + $this->fields['shadeAlpha'] = array('type' => 'integer', 'default' => 100, 'editable' => true, 'label' => __('Transparence des ombres sur les pages (100 : maximale - 0 : invisible)'), 'extra' => true, 'grade' => 4); + $this->fields['usePageEdges'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __("Afficher la bordure des pages"), 'extra' => true, 'grade' => 4); + $this->fields['arrowsColor'] = array('type' => 'color', 'default' => 'ffffff', 'editable' => true, 'label' => __('Couleur des flèches des boutons de navigation (page suivante, page précédente)'), 'extra' => true, 'grade' => 4); + $this->fields['pagesBarTxtColor'] = array('type' => 'color', 'default' => 'ffffff', 'editable' => true, 'label' => __("Couleur des numéros de page de la barre d'accès rapide aux pages"), 'extra' => true, 'grade' => 4); + $this->fields['sections'] = array('type' => 'textarea', 'default' => '', 'editable' => true, 'label' => __("Sections"), 'extra' => false, 'grade' => 4); + $this->fields['indexColors'] = array('type' => 'textarea', 'default' => '', 'editable' => true, 'label' => __("Couleurs des pages de l'index"), 'extra' => true, 'grade' => 4); + $this->fields['displayPageNumber'] = array('type' => 'boolean', 'default' => true, 'editable' => true, 'label' => __('Afficher les numéros de page'), 'extra' => false, 'grade' => 1); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.ws.book.php b/inc/extranet/Metier/class.ws.book.php new file mode 100644 index 000000000..8b477a7ea --- /dev/null +++ b/inc/extranet/Metier/class.ws.book.php @@ -0,0 +1,27 @@ + \ No newline at end of file diff --git a/inc/extranet/Metier/class.ws.document.localinfos.php b/inc/extranet/Metier/class.ws.document.localinfos.php new file mode 100644 index 000000000..dbf97a49d --- /dev/null +++ b/inc/extranet/Metier/class.ws.document.localinfos.php @@ -0,0 +1,13 @@ +fields['fileName'] = array('type' => 'text', 'default' => '', 'editable' => true, 'label' => __("Nom du fichier"), 'extra' => false, 'grade' => 0); + $this->fields['fileSize'] = array('type' => 'integer', 'default' => '', 'editable' => true, 'label' => __("Couleur des sous-menus"), 'extra' => false, 'grade' => 0); + $this->fields['modificationDate'] = array('type' => 'date', 'default' => TIME, 'editable' => true, 'label' => __("Date de dernière modification"), 'extra' => false, 'grade' => 0); + $this->fields['creationDate'] = array('type' => 'date', 'default' => TIME, 'editable' => true, 'label' => __("Date de dernière modification"), 'extra' => false, 'grade' => 0); + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.ws.langue.textes.php b/inc/extranet/Metier/class.ws.langue.textes.php new file mode 100644 index 000000000..146498b9c --- /dev/null +++ b/inc/extranet/Metier/class.ws.langue.textes.php @@ -0,0 +1,19 @@ +'); + } elseif (is_string($xml)) { + $xml = simplexml_load_string($xml); + } + foreach($this->textes as $t) { + $xml->addChild('tradText', $t); + } + return $xml; + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.ws.parametres.php b/inc/extranet/Metier/class.ws.parametres.php new file mode 100644 index 000000000..3735b4eb5 --- /dev/null +++ b/inc/extranet/Metier/class.ws.parametres.php @@ -0,0 +1,120 @@ +initFields(); + $this->datas = array(); + } + + public function __set($varname, $value) + { + $this->set($varname, $value); + } + + public function __unset($varname) + { + $this->set($varname, null); + } + + public function __get($varname) + { + return $this->get($varname); + } + + public function __isset($varname) + { + return $this->_isset($varname); + } + + public function __sleep() + { + return array('datas'); + } + + public function __wakeup() + { + $this->initFields(); + } + + protected function initFields() + { + $this->fields = array(); + } + + protected function set($varname, $value) + { + if (!$this->_isset($varname)) { + throw new Exception('You are setting an attribute (' . get_class($this) . '::' . $varname . ') which not exists'); + } + + if (is_null($value)) { + $this->datas[$varname] = null; + return; + } + + switch ($this->fields[$varname]['type']) { + case 'integer': + $value = intval($value); + break; + case 'float': + $value = floatval($value); + break; + case 'boolean': + $value = ($value == '' || $value == '0' || $value == 'false')?false:true; + break; + case 'color': + $value = substr(trim($value, '#'), 0, 6); + break; + case 'date': + $value = intval($value); + break; + default: + + } // switch + $this->datas[$varname] = $value; + } + + protected function _isset($varname) + { + return isset($this->fields[$varname]) && isset($this->fields[$varname]['default']); + } + + protected function get($varname) + { + if (!$this->_isset($varname)) { + throw new Exception('You are getting an attribute (' . get_class($this) . '::' . $varname . ') which not exists'); + } + if (is_null($this->datas[$varname]) || !isset($this->datas[$varname])) { + return $this->fields[$varname]['default']; + } + return $this->datas[$varname]; + } + + public function fromRecord($r) + { + $c = array_flip($r->columns()); + foreach($this->fields as $n => $f) { + if (isset($c[$n]) && !is_null($r->$n)) { + $this->set($n, $r->$n); + } + } + } + + public function fromXML($xml) + { + foreach($this->fields as $n => $f) { + $xp = $xml->$n; + if (!$xp || !count($xp)) { + continue; + } + foreach($xp as $x) { + $this->set($n, $x); + } + } + } +} + +?> \ No newline at end of file diff --git a/inc/extranet/Metier/class.ws.theme.parametres.php b/inc/extranet/Metier/class.ws.theme.parametres.php new file mode 100644 index 000000000..9b6d26a41 --- /dev/null +++ b/inc/extranet/Metier/class.ws.theme.parametres.php @@ -0,0 +1,21 @@ +fields['couleurA'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur principale (boutons, liens)"), 'extra' => false, 'grade' => 3); + $this->fields['couleurB'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur des sous-menus"), 'extra' => false, 'grade' => 3); + $this->fields['couleurS'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur du texte du moteur de recherche"), 'extra' => false, 'grade' => 3); + $this->fields['couleurL'] = array('type' => 'couleur', 'default' => '', 'editable' => true, 'label' => __("Couleur du fond du loader"), 'extra' => false, 'grade' => 3); + $this->fields['repeat'] = array('type' => 'combo', + 'datas' => array(__('Etirer') => '0', __('Etirer le fond') => '2', __("Répéter") => '1'), + 'default' => '0', 'editable' => true, 'label' => __('Affichage du fond'), 'grade' => 3); + } +} + +?> \ No newline at end of file diff --git a/inc/prepend.php b/inc/prepend.php new file mode 100644 index 000000000..4f7b29fcd --- /dev/null +++ b/inc/prepend.php @@ -0,0 +1,25 @@ +url->registerDefault(array('extranetUrl', 'home')); +$core->url->register('ajax', 'ajax', '^ajax(.*)$', array('cubeAjax', 'ajax')); +$core->url->register('cleanDownload', 'cleanDownload', '^cleanDownload$', array('extranetUrl', 'cleanDownload')); +$core->url->register('flash', 'flash', '^flash(.*)$', array('wsFlash', 'in')); + +if (isset($_POST['q'])) { + $_SESSION['q'] = $_POST['q']?$_POST['q']:null; +} elseif (!isset($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') { + $_SESSION['q'] = null; +} + +?> \ No newline at end of file diff --git a/index.php b/index.php new file mode 100644 index 000000000..077defc81 --- /dev/null +++ b/index.php @@ -0,0 +1,17 @@ +url->getDocument(); +$buffer = ob_get_contents(); + +ob_clean(); + +$js[] = (JS_PATH . '/extranet.js'); +$jsvar['IMG'] = IMG; +$jsvar['SITE_PATH'] = SITE_PATH; +$css[] = CSS_PATH . '/style.css'; +//$css['IE'] = CSS_PATH . '/ie.css'; + +echo cubePage::page($buffer, $js, $jsvar, $css, array(), 6); + +?> \ No newline at end of file diff --git a/js/extranet.js b/js/extranet.js new file mode 100644 index 000000000..3e81ba2da --- /dev/null +++ b/js/extranet.js @@ -0,0 +1,216 @@ +TO_LOAD_INDEX++; +TO_LOAD[TO_LOAD_INDEX]='load_extranet();'; +FIRST_LOAD=true; +function load_extranet(){ + + if($("#devisAdresse #client_nom").length){ + $("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{ + cacheLength : 0, + maxItemsToShow : 15, + onFindValue : findClient, + onItemSelect : findClient + }); + } + + + if($("#factureAdresse #projet_nom").length){ + $("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{ + cacheLength : 0, + maxItemsToShow : 15, + onFindValue : findProjet, + onItemSelect : findProjet + }); + } + + if($(".dashboard").length>=1 && $("#dash").length>=1){ + $("#dash").sortable('destroy'); + if(FIRST_LOAD){ + FIRST_LOAD=false; + }else{ + FIRST_LOAD=true; + $.ajax({ + url : SITE_PATH+'ajax/reloadDashboards', + success : function(data){MyAjax(data);} + }); + } + + $("#dash").sortable({ + opacity : 0.6, + axis : "y", + handle : ".caption", + stop : function(e,ui){ + $.ajax({ + url : SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize') + }); + resize(); + } + }); + } + + if($("#devisLignes").length>=1){ + $("#devisLignes").sortable('destroy'); + + $("#devisLignes").sortable({ + opacity : 0.6, + axis : "y" + }); + } + + + + $(".timereport_field").change(function(){ + var val=parseInt($(this).val()); + if(isNaN(val)){ + val=0; + } + var f=this; + var id=$(this).attr('id'); + var a=id.split('_'); + $.ajax({ + url : SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val, + success : function(data){ + FIRST_LOAD=true; + MyAjax(data); + var td=$(f).parents('td').get(0); + if(parseFloat($(f).val())>0){ + $(td).addClass('filled'); + }else{ + $(td).removeClass('filled'); + } + } + }); + }); + + $("#dash .toggle").click(function(){ + var rel=$(this).attr('rel'); + var div=$(this).parents('.dashboard').get(0); + var liste=$(div).find('.liste'); + + $(liste).slideToggle('fast',function(){resize();}); + $(this).toggleClass('close'); + + $.ajax({ + url : SITE_PATH+'ajax/toggleDashboard/'+rel + }); + return false; + }); + + $(".filtre .bt").click(function(){ + var ul=$(this).parent().parent().children('ul'); + $(ul).slideToggle('fast'); + return false; + }); + + $(".filtre ul").click(function(e){ + if(e.target.nodeName=='INPUT' || e.target.nodeName=='LABEL'){ + return true; + } + $(this).slideToggle('fast'); + }); + $(".filtre span").click(function(){ + var ul=$(this).parent().children('ul'); + $(ul).slideToggle('fast'); + }); + + $(".filtre input").change(function(){ + var form=$(this).parents('form').get(0); + var uls=$(form).find("ul"); + var divs=$(form).find(".input"); + var spans=$(form).find("span"); + var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs; + for(i=0;i20){ + t1=t.substr(0,16)+'...'; + }else{ + t1=t; + } + $(div).find('span').text(t1); + $(div).find('a').attr('title',t); + $(div).addClass('active'); + } + } + return true; + }); + + $(window).resize(function(){ + resize(); + }); + resize(); + +} + +function resize(){ + var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30; + var h=Math.max($(window).height(),allh); + + var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13; + mh=Math.max(mh,450); + $("#main").css('height',mh); + + $(".swfPanel").css('height',mh-10); +} + + +function findClient(li){ + var client=li.selectValue.split(' - '); + if(client.length<=1){ + return; + } + var client_id=parseInt(client[0]); + $("#client").val(client_id); + + $.ajax({ + url : SITE_PATH+'ajax/getAdresseForDevis/'+client_id, + success : function(data){MyAjax(data);} + }); +} + +function findProjet(li){ + var projet=li.selectValue.split(' - '); + if(projet.length<=1){ + return; + } + var projet_id=parseInt(projet[0]); + $("#projet").val(projet_id); + + $.ajax({ + url : SITE_PATH+'ajax/getAdresseForFacture/'+projet_id, + success : function(data){MyAjax(data);} + }); +} + +function refreshFiles(){ + $.ajax({ + url : SITE_PATH+'ajax/refreshFichiers', + success : function(data){MyAjax(data);} + }); +} diff --git a/js/merged-28c4c5.js b/js/merged-28c4c5.js new file mode 100644 index 000000000..5dfd1408c --- /dev/null +++ b/js/merged-28c4c5.js @@ -0,0 +1,702 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.makeArray(selector));},selector:"",jquery:"1.3.1",size:function(){return this.length;},get:function(num){return num===undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,find:function(selector){if(this.length===1&&!/,/.test(selector)){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)?jQuery.unique(elems):elems,"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!==undefined) +this[expando]=null;});if(events===true) +this.find("*").andSelf().each(function(i){if(this.nodeType==3) +return;var events=jQuery.data(this,"events");for(var type in events) +for(var handler in events[type]) +jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)) +return cur;cur=cur.parentNode;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild,extra=this.length>1?fragment.cloneNode(true):fragment;if(first) +for(var i=0,l=this.length;i0?extra.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);} +if(jQuery(elem).is(":visible")) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]+['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);} +return results;};Sizzle.matches=function(expr,set){return Sizzle(expr,null,null,set);};Sizzle.find=function(expr,context,isXML){var set,match;if(!expr){return[];} +for(var i=0,l=Expr.order.length;i":function(checkSet,part,isXML){if(typeof part==="string"&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]="done"+(done++);return match;},ATTR:function(match){var name=match[1].replace(/\\/g,"");if(Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{CHILD:function(elem,match){var type=match[1],parent=elem.parentNode;var doneName=match[0];if(parent&&(!parent[doneName]||!elem.nodeIndex)){var count=1;for(var node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType==1){node.nodeIndex=count++;}} +parent[doneName]=count-1;} +if(type=="first"){return elem.nodeIndex==1;}else if(type=="last"){return elem.nodeIndex==parent[doneName];}else if(type=="only"){return parent[doneName]==1;}else if(type=="nth"){var add=false,first=match[2],last=match[3];if(first==1&&last==0){return true;} +if(first==0){if(elem.nodeIndex==last){add=true;}}else if((elem.nodeIndex-last)%first==0&&(elem.nodeIndex-last)/first>=0){add=true;} +return add;}},PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!match[4]?result:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context){return context.getElementsByClassName(match[1]);};} +function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +this[i].style.display=jQuery.data(this[i],"olddisplay",display);}} +return this;}},hide:function(speed,callback){if(speed){return this.animate(genFx("hide",3),speed,callback);}else{for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)==1){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+ +num(this,"padding"+tl)+ +num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+ +num(this,"border"+tl+"Width")+ +num(this,"border"+br+"Width")+ +(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}};(function($){var _remove=$.fn.remove,isFF2=$.browser.mozilla&&(parseFloat($.browser.version)<1.9);$.ui={version:"1.6rc6",plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]]);}},call:function(instance,name,args){var set=instance.plugins[name];if(!set){return;} +for(var i=0;i').addClass(name).css({position:'absolute',top:'-5000px',left:'-5000px',display:'block'}).appendTo('body');$.ui.cssCache[name]=!!((!(/auto|default/).test(tmp.css('cursor'))||(/^[1-9]/).test(tmp.css('height'))||(/^[1-9]/).test(tmp.css('width'))||!(/none/).test(tmp.css('backgroundImage'))||!(/transparent|rgba\(0, 0, 0, 0\)/).test(tmp.css('backgroundColor'))));try{$('body').get(0).removeChild(tmp.get(0));}catch(e){} +return $.ui.cssCache[name];},hasScroll:function(el,a){if($(el).css('overflow')=='hidden'){return false;} +var scroll=(a&&a=='left')?'scrollLeft':'scrollTop',has=false;if(el[scroll]>0){return true;} +el[scroll]=1;has=(el[scroll]>0);el[scroll]=0;return has;},isOverAxis:function(x,reference,size){return(x>reference)&&(x<(reference+size));},isOver:function(y,x,top,left,height,width){return $.ui.isOverAxis(y,top,height)&&$.ui.isOverAxis(x,left,width);},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(isFF2){var attr=$.attr,removeAttr=$.fn.removeAttr,ariaNS="http://www.w3.org/2005/07/aaa",ariaState=/^aria-/,ariaRole=/^wairole:/;$.attr=function(elem,name,value){var set=value!==undefined;return(name=='role'?(set?attr.call(this,elem,name,"wairole:"+value):(attr.apply(this,arguments)||"").replace(ariaRole,"")):(ariaState.test(name)?(set?elem.setAttributeNS(ariaNS,name.replace(ariaState,"aaa:"),value):attr.call(this,elem,name.replace(ariaState,"aaa:"))):attr.apply(this,arguments)));};$.fn.removeAttr=function(name){return(ariaState.test(name)?this.each(function(){this.removeAttributeNS(ariaNS,name.replace(ariaState,""));}):removeAttr.call(this,name));};} +$.fn.extend({remove:function(){$("*",this).add(this).each(function(){$(this).triggerHandler("remove");});return _remove.apply(this,arguments);},enableSelection:function(){return this.attr('unselectable','off').css('MozUserSelect','').unbind('selectstart.ui');},disableSelection:function(){return this.attr('unselectable','on').css('MozUserSelect','none').bind('selectstart.ui',function(){return false;});},scrollParent:function(){var scrollParent;if(($.browser.msie&&(/(static|relative)/).test(this.css('position')))||(/absolute/).test(this.css('position'))){scrollParent=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test($.curCSS(this,'position',1))&&(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));}).eq(0);}else{scrollParent=this.parents().filter(function(){return(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));}).eq(0);} +return(/fixed/).test(this.css('position'))||!scrollParent.length?$(document):scrollParent;}});$.extend($.expr[':'],{data:function(elem,i,match){return!!$.data(elem,match[3]);},focusable:function(element){var nodeName=element.nodeName.toLowerCase(),tabIndex=$.attr(element,'tabindex');return(/input|select|textarea|button|object/.test(nodeName)?!element.disabled:'a'==nodeName||'area'==nodeName?element.href||!isNaN(tabIndex):!isNaN(tabIndex))&&!$(element)['area'==nodeName?'parents':'closest'](':hidden').length;},tabbable:function(element){var tabIndex=$.attr(element,'tabindex');return(isNaN(tabIndex)||tabIndex>=0)&&$(element).is(':focusable');}});function getter(namespace,plugin,method,args){function getMethods(type){var methods=$[namespace][plugin][type]||[];return(typeof methods=='string'?methods.split(/,?\s+/):methods);} +var methods=getMethods('getter');if(args.length==1&&typeof args[0]=='string'){methods=methods.concat(getMethods('getterSetter'));} +return($.inArray(method,methods)!=-1);} +$.widget=function(name,prototype){var namespace=name.split(".")[0];name=name.split(".")[1];$.fn[name]=function(options){var isMethodCall=(typeof options=='string'),args=Array.prototype.slice.call(arguments,1);if(isMethodCall&&options.substring(0,1)=='_'){return this;} +if(isMethodCall&&getter(namespace,name,options,args)){var instance=$.data(this[0],name);return(instance?instance[options].apply(instance,args):undefined);} +return this.each(function(){var instance=$.data(this,name);(!instance&&!isMethodCall&&$.data(this,name,new $[namespace][name](this,options))._init());(instance&&isMethodCall&&$.isFunction(instance[options])&&instance[options].apply(instance,args));});};$[namespace]=$[namespace]||{};$[namespace][name]=function(element,options){var self=this;this.namespace=namespace;this.widgetName=name;this.widgetEventPrefix=$[namespace][name].eventPrefix||name;this.widgetBaseClass=namespace+'-'+name;this.options=$.extend({},$.widget.defaults,$[namespace][name].defaults,$.metadata&&$.metadata.get(element)[name],options);this.element=$(element).bind('setData.'+name,function(event,key,value){if(event.target==element){return self._setData(key,value);}}).bind('getData.'+name,function(event,key){if(event.target==element){return self._getData(key);}}).bind('remove',function(){return self.destroy();});};$[namespace][name].prototype=$.extend({},$.widget.prototype,prototype);$[namespace][name].getterSetter='option';};$.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+'-disabled'+' '+this.namespace+'-state-disabled').removeAttr('aria-disabled');},option:function(key,value){var options=key,self=this;if(typeof key=="string"){if(value===undefined){return this._getData(key);} +options={};options[key]=value;} +$.each(options,function(key,value){self._setData(key,value);});},_getData:function(key){return this.options[key];},_setData:function(key,value){this.options[key]=value;if(key=='disabled'){this.element +[value?'addClass':'removeClass'](this.widgetBaseClass+'-disabled'+' '+ +this.namespace+'-state-disabled').attr("aria-disabled",value);}},enable:function(){this._setData('disabled',false);},disable:function(){this._setData('disabled',true);},_trigger:function(type,event,data){var callback=this.options[type],eventName=(type==this.widgetEventPrefix?type:this.widgetEventPrefix+type);event=$.Event(event);event.type=eventName;if(event.originalEvent){for(var i=$.event.props.length,prop;i;){prop=$.event.props[--i];event[prop]=event.originalEvent[prop];}} +this.element.trigger(event,data);return!($.isFunction(callback)&&callback.call(this.element[0],event,data)===false||event.isDefaultPrevented());}};$.widget.defaults={disabled:false};$.ui.mouse={_mouseInit:function(){var self=this;this.element.bind('mousedown.'+this.widgetName,function(event){return self._mouseDown(event);}).bind('click.'+this.widgetName,function(event){if(self._preventClickEvent){self._preventClickEvent=false;return false;}});if($.browser.msie){this._mouseUnselectable=this.element.attr('unselectable');this.element.attr('unselectable','on');} +this.started=false;},_mouseDestroy:function(){this.element.unbind('.'+this.widgetName);($.browser.msie&&this.element.attr('unselectable',this._mouseUnselectable));},_mouseDown:function(event){if(event.originalEvent.mouseHandled){return;} +(this._mouseStarted&&this._mouseUp(event));this._mouseDownEvent=event;var self=this,btnIsLeft=(event.which==1),elIsCancel=(typeof this.options.cancel=="string"?$(event.target).parents().add(event.target).filter(this.options.cancel).length:false);if(!btnIsLeft||elIsCancel||!this._mouseCapture(event)){return true;} +this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){self.mouseDelayMet=true;},this.options.delay);} +if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){this._mouseStarted=(this._mouseStart(event)!==false);if(!this._mouseStarted){event.preventDefault();return true;}} +this._mouseMoveDelegate=function(event){return self._mouseMove(event);};this._mouseUpDelegate=function(event){return self._mouseUp(event);};$(document).bind('mousemove.'+this.widgetName,this._mouseMoveDelegate).bind('mouseup.'+this.widgetName,this._mouseUpDelegate);($.browser.safari||event.preventDefault());event.originalEvent.mouseHandled=true;return true;},_mouseMove:function(event){if($.browser.msie&&!event.button){return this._mouseUp(event);} +if(this._mouseStarted){this._mouseDrag(event);return event.preventDefault();} +if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,event)!==false);(this._mouseStarted?this._mouseDrag(event):this._mouseUp(event));} +return!this._mouseStarted;},_mouseUp:function(event){$(document).unbind('mousemove.'+this.widgetName,this._mouseMoveDelegate).unbind('mouseup.'+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=true;this._mouseStop(event);} +return false;},_mouseDistanceMet:function(event){return(Math.max(Math.abs(this._mouseDownEvent.pageX-event.pageX),Math.abs(this._mouseDownEvent.pageY-event.pageY))>=this.options.distance);},_mouseDelayMet:function(event){return this.mouseDelayMet;},_mouseStart:function(event){},_mouseDrag:function(event){},_mouseStop:function(event){},_mouseCapture:function(event){return true;}};$.ui.mouse.defaults={cancel:null,distance:1,delay:0};})(jQuery);(function($){$.widget("ui.draggable",$.extend({},$.ui.mouse,{_init:function(){if(this.options.helper=='original'&&!(/^(?:r|a|f)/).test(this.element.css("position"))) +this.element[0].style.position='relative';(this.options.cssNamespace&&this.element.addClass(this.options.cssNamespace+"-draggable"));(this.options.disabled&&this.element.addClass(this.options.cssNamespace+'-draggable-disabled'));this._mouseInit();},destroy:function(){if(!this.element.data('draggable'))return;this.element.removeData("draggable").unbind(".draggable").removeClass(this.options.cssNamespace+'-draggable '+this.options.cssNamespace+'-draggable-dragging '+this.options.cssNamespace+'-draggable-disabled');this._mouseDestroy();},_mouseCapture:function(event){var o=this.options;if(this.helper||o.disabled||$(event.target).is('.'+this.options.cssNamespace+'-resizable-handle')) +return false;this.handle=this._getHandle(event);if(!this.handle) +return false;return true;},_mouseStart:function(event){var o=this.options;this.helper=this._createHelper(event);this._cacheHelperProportions();if($.ui.ddmanager) +$.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};$.extend(this.offset,{click:{left:event.pageX-this.offset.left,top:event.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(event);this.originalPageX=event.pageX;this.originalPageY=event.pageY;if(o.cursorAt) +this._adjustOffsetFromHelper(o.cursorAt);if(o.containment) +this._setContainment();this._trigger("start",event);this._cacheHelperProportions();if($.ui.ddmanager&&!o.dropBehaviour) +$.ui.ddmanager.prepareOffsets(this,event);this.helper.addClass(o.cssNamespace+"-draggable-dragging");this._mouseDrag(event,true);return true;},_mouseDrag:function(event,noPropagation){this.position=this._generatePosition(event);this.positionAbs=this._convertPositionTo("absolute");if(!noPropagation){var ui=this._uiHash();this._trigger('drag',event,ui);this.position=ui.position;} +if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+'px';if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+'px';if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);return false;},_mouseStop:function(event){var dropped=false;if($.ui.ddmanager&&!this.options.dropBehaviour) +dropped=$.ui.ddmanager.drop(this,event);if(this.dropped){dropped=this.dropped;this.dropped=false;} +if((this.options.revert=="invalid"&&!dropped)||(this.options.revert=="valid"&&dropped)||this.options.revert===true||($.isFunction(this.options.revert)&&this.options.revert.call(this.element,dropped))){var self=this;$(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){self._trigger("stop",event);self._clear();});}else{this._trigger("stop",event);this._clear();} +return false;},_getHandle:function(event){var handle=!this.options.handle||!$(this.options.handle,this.element).length?true:false;$(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==event.target)handle=true;});return handle;},_createHelper:function(event){var o=this.options;var helper=$.isFunction(o.helper)?$(o.helper.apply(this.element[0],[event])):(o.helper=='clone'?this.element.clone():this.element);if(!helper.parents('body').length) +helper.appendTo((o.appendTo=='parent'?this.element[0].parentNode:o.appendTo));if(helper[0]!=this.element[0]&&!(/(fixed|absolute)/).test(helper.css("position"))) +helper.css("position","absolute");return helper;},_adjustOffsetFromHelper:function(obj){if(obj.left!=undefined)this.offset.click.left=obj.left+this.margins.left;if(obj.right!=undefined)this.offset.click.left=this.helperProportions.width-obj.right+this.margins.left;if(obj.top!=undefined)this.offset.click.top=obj.top+this.margins.top;if(obj.bottom!=undefined)this.offset.click.top=this.helperProportions.height-obj.bottom+this.margins.top;},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var po=this.offsetParent.offset();if(this.cssPosition=='absolute'&&this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0])){po.left+=this.scrollParent.scrollLeft();po.top+=this.scrollParent.scrollTop();} +if((this.offsetParent[0]==document.body&&$.browser.mozilla)||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=='html'&&$.browser.msie)) +po={top:0,left:0};return{top:po.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:po.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)};},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var p=this.element.position();return{top:p.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:p.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()};}else{return{top:0,left:0};}},_cacheMargins:function(){this.margins={left:(parseInt(this.element.css("marginLeft"),10)||0),top:(parseInt(this.element.css("marginTop"),10)||0)};},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()};},_setContainment:function(){var o=this.options;if(o.containment=='parent')o.containment=this.helper[0].parentNode;if(o.containment=='document'||o.containment=='window')this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,$(o.containment=='document'?document:window).width()-this.helperProportions.width-this.margins.left,($(o.containment=='document'?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!(/^(document|window|parent)$/).test(o.containment)&&o.containment.constructor!=Array){var ce=$(o.containment)[0];if(!ce)return;var co=$(o.containment).offset();var over=($(ce).css("overflow")!='hidden');this.containment=[co.left+(parseInt($(ce).css("borderLeftWidth"),10)||0)+(parseInt($(ce).css("paddingLeft"),10)||0)-this.margins.left,co.top+(parseInt($(ce).css("borderTopWidth"),10)||0)+(parseInt($(ce).css("paddingTop"),10)||0)-this.margins.top,co.left+(over?Math.max(ce.scrollWidth,ce.offsetWidth):ce.offsetWidth)-(parseInt($(ce).css("borderLeftWidth"),10)||0)-(parseInt($(ce).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,co.top+(over?Math.max(ce.scrollHeight,ce.offsetHeight):ce.offsetHeight)-(parseInt($(ce).css("borderTopWidth"),10)||0)-(parseInt($(ce).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top];}else if(o.containment.constructor==Array){this.containment=o.containment;}},_convertPositionTo:function(d,pos){if(!pos)pos=this.position;var mod=d=="absolute"?1:-1;var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);return{top:(pos.top ++this.offset.relative.top*mod ++this.offset.parent.top*mod +-(this.cssPosition=='fixed'?-this.scrollParent.scrollTop():(scrollIsRootNode?0:scroll.scrollTop()))*mod),left:(pos.left ++this.offset.relative.left*mod ++this.offset.parent.left*mod +-(this.cssPosition=='fixed'?-this.scrollParent.scrollLeft():scrollIsRootNode?0:scroll.scrollLeft())*mod)};},_generatePosition:function(event){var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);if(this.cssPosition=='relative'&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0])){this.offset.relative=this._getRelativeOffset();} +var pageX=event.pageX;var pageY=event.pageY;if(this.originalPosition){if(this.containment){if(event.pageX-this.offset.click.leftthis.containment[2])pageX=this.containment[2]+this.offset.click.left;if(event.pageY-this.offset.click.top>this.containment[3])pageY=this.containment[3]+this.offset.click.top;} +if(o.grid){var top=this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1];pageY=this.containment?(!(top-this.offset.click.topthis.containment[3])?top:(!(top-this.offset.click.topthis.containment[2])?left:(!(left-this.offset.click.left').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1000}).css($(this).offset()).appendTo("body");});},stop:function(event,ui){$("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this);});}});$.ui.plugin.add("draggable","opacity",{start:function(event,ui){var t=$(ui.helper),o=$(this).data('draggable').options;if(t.css("opacity"))o._opacity=t.css("opacity");t.css('opacity',o.opacity);},stop:function(event,ui){var o=$(this).data('draggable').options;if(o._opacity)$(ui.helper).css('opacity',o._opacity);}});$.ui.plugin.add("draggable","scroll",{start:function(event,ui){var i=$(this).data("draggable");if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML')i.overflowOffset=i.scrollParent.offset();},drag:function(event,ui){var i=$(this).data("draggable"),o=i.options,scrolled=false;if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML'){if(!o.axis||o.axis!='x'){if((i.overflowOffset.top+i.scrollParent[0].offsetHeight)-event.pageY=0;i--){var l=inst.snapElements[i].left,r=l+inst.snapElements[i].width,t=inst.snapElements[i].top,b=t+inst.snapElements[i].height;if(!((l-d=0;i--) +this.items[i].item.removeData("sortable-item");},_mouseCapture:function(event,overrideHandle){if(this.reverting){return false;} +if(this.options.disabled||this.options.type=='static')return false;this._refreshItems(event);var currentItem=null,self=this,nodes=$(event.target).parents().each(function(){if($.data(this,'sortable-item')==self){currentItem=$(this);return false;}});if($.data(event.target,'sortable-item')==self)currentItem=$(event.target);if(!currentItem)return false;if(this.options.handle&&!overrideHandle){var validHandle=false;$(this.options.handle,currentItem).find("*").andSelf().each(function(){if(this==event.target)validHandle=true;});if(!validHandle)return false;} +this.currentItem=currentItem;this._removeCurrentsFromItems();return true;},_mouseStart:function(event,overrideHandle,noActivation){var o=this.options,self=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(event);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");$.extend(this.offset,{click:{left:event.pageX-this.offset.left,top:event.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(event);this.originalPageX=event.pageX;this.originalPageY=event.pageY;if(o.cursorAt) +this._adjustOffsetFromHelper(o.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};if(this.helper[0]!=this.currentItem[0]){this.currentItem.hide();} +this._createPlaceholder();if(o.containment) +this._setContainment();if(o.cursor){if($('body').css("cursor"))this._storedCursor=$('body').css("cursor");$('body').css("cursor",o.cursor);} +if(o.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",o.opacity);} +if(o.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",o.zIndex);} +if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML') +this.overflowOffset=this.scrollParent.offset();this._trigger("start",event,this._uiHash());if(!this._preserveHelperProportions) +this._cacheHelperProportions();if(!noActivation){for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._trigger("activate",event,self._uiHash(this));}} +if($.ui.ddmanager) +$.ui.ddmanager.current=this;if($.ui.ddmanager&&!o.dropBehaviour) +$.ui.ddmanager.prepareOffsets(this,event);this.dragging=true;this.helper.addClass(o.cssNamespace+'-sortable-helper');this._mouseDrag(event);return true;},_mouseDrag:function(event){this.position=this._generatePosition(event);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs){this.lastPositionAbs=this.positionAbs;} +if(this.options.scroll){var o=this.options,scrolled=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML'){if((this.overflowOffset.top+this.scrollParent[0].offsetHeight)-event.pageY=0;i--){var item=this.items[i],itemElement=item.item[0],intersection=this._intersectsWithPointer(item);if(!intersection)continue;if(itemElement!=this.currentItem[0]&&this.placeholder[intersection==1?"next":"prev"]()[0]!=itemElement&&!$.ui.contains(this.placeholder[0],itemElement)&&(this.options.type=='semi-dynamic'?!$.ui.contains(this.element[0],itemElement):true)){this.direction=intersection==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(item)){this.options.sortIndicator.call(this,event,item);}else{break;} +this._trigger("change",event,this._uiHash());break;}} +this._contactContainers(event);if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);this._trigger('sort',event,this._uiHash());this.lastPositionAbs=this.positionAbs;return false;},_mouseStop:function(event,noPropagation){if(!event)return;if($.ui.ddmanager&&!this.options.dropBehaviour) +$.ui.ddmanager.drop(this,event);if(this.options.revert){var self=this;var cur=self.placeholder.offset();self.reverting=true;$(this.helper).animate({left:cur.left-this.offset.parent.left-self.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:cur.top-this.offset.parent.top-self.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){self._clear(event);});}else{this._clear(event,noPropagation);} +return false;},cancel:function(){var self=this;if(this.dragging){this._mouseUp();if(this.options.helper=="original") +this.currentItem.css(this._storedCSS).removeClass(this.options.cssNamespace+"-sortable-helper");else +this.currentItem.show();for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._trigger("deactivate",null,self._uiHash(this));if(this.containers[i].containerCache.over){this.containers[i]._trigger("out",null,self._uiHash(this));this.containers[i].containerCache.over=0;}}} +if(this.placeholder[0].parentNode)this.placeholder[0].parentNode.removeChild(this.placeholder[0]);if(this.options.helper!="original"&&this.helper&&this.helper[0].parentNode)this.helper.remove();$.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});if(this.domPosition.prev){$(this.domPosition.prev).after(this.currentItem);}else{$(this.domPosition.parent).prepend(this.currentItem);} +return true;},serialize:function(o){var items=this._getItemsAsjQuery(o&&o.connected);var str=[];o=o||{};$(items).each(function(){var res=($(o.item||this).attr(o.attribute||'id')||'').match(o.expression||(/(.+)[-=_](.+)/));if(res)str.push((o.key||res[1]+'[]')+'='+(o.key&&o.expression?res[1]:res[2]));});return str.join('&');},toArray:function(o){var items=this._getItemsAsjQuery(o&&o.connected);var ret=[];o=o||{};items.each(function(){ret.push($(o.item||this).attr(o.attribute||'id')||'');});return ret;},_intersectsWith:function(item){var x1=this.positionAbs.left,x2=x1+this.helperProportions.width,y1=this.positionAbs.top,y2=y1+this.helperProportions.height;var l=item.left,r=l+item.width,t=item.top,b=t+item.height;var dyClick=this.offset.click.top,dxClick=this.offset.click.left;var isOverElement=(y1+dyClick)>t&&(y1+dyClick)l&&(x1+dxClick)item[this.floating?'width':'height'])){return isOverElement;}else{return(l0?"down":"up");},_getDragHorizontalDirection:function(){var delta=this.positionAbs.left-this.lastPositionAbs.left;return delta!=0&&(delta>0?"right":"left");},refresh:function(event){this._refreshItems(event);this.refreshPositions();},_getItemsAsjQuery:function(connected){var self=this;var items=[];var queries=[];if(this.options.connectWith&&connected){var connectWith=this.options.connectWith.constructor==String?[this.options.connectWith]:this.options.connectWith;for(var i=connectWith.length-1;i>=0;i--){var cur=$(connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element):$(inst.options.items,inst.element).not("."+inst.options.cssNamespace+"-sortable-helper"),inst]);}};};} +queries.push([$.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):$(this.options.items,this.element).not("."+this.options.cssNamespace+"-sortable-helper"),this]);for(var i=queries.length-1;i>=0;i--){queries[i][0].each(function(){items.push(this);});};return $(items);},_removeCurrentsFromItems:function(){var list=this.currentItem.find(":data(sortable-item)");for(var i=0;i=0;i--){var cur=$(this.options.connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element[0],event,{item:this.currentItem}):$(inst.options.items,inst.element),inst]);this.containers.push(inst);}};};} +for(var i=queries.length-1;i>=0;i--){var targetData=queries[i][1];var _queries=queries[i][0];for(var j=0,queriesLength=_queries.length;j=0;i--){var item=this.items[i];if(item.instance!=this.currentContainer&&this.currentContainer&&item.item[0]!=this.currentItem[0]) +continue;var t=this.options.toleranceElement?$(this.options.toleranceElement,item.item):item.item;if(!fast){if(this.options.accurateIntersection){item.width=t.outerWidth();item.height=t.outerHeight();} +else{item.width=t[0].offsetWidth;item.height=t[0].offsetHeight;}} +var p=t.offset();item.left=p.left;item.top=p.top;};if(this.options.custom&&this.options.custom.refreshContainers){this.options.custom.refreshContainers.call(this);}else{for(var i=this.containers.length-1;i>=0;i--){var p=this.containers[i].element.offset();this.containers[i].containerCache.left=p.left;this.containers[i].containerCache.top=p.top;this.containers[i].containerCache.width=this.containers[i].element.outerWidth();this.containers[i].containerCache.height=this.containers[i].element.outerHeight();};}},_createPlaceholder:function(that){var self=that||this,o=self.options;if(!o.placeholder||o.placeholder.constructor==String){var className=o.placeholder;o.placeholder={element:function(){var el=$(document.createElement(self.currentItem[0].nodeName)).addClass(className||self.currentItem[0].className+" "+self.options.cssNamespace+"-sortable-placeholder").removeClass(self.options.cssNamespace+'-sortable-helper')[0];if(!className) +el.style.visibility="hidden";return el;},update:function(container,p){if(className&&!o.forcePlaceholderSize)return;if(!p.height()){p.height(self.currentItem.innerHeight()-parseInt(self.currentItem.css('paddingTop')||0,10)-parseInt(self.currentItem.css('paddingBottom')||0,10));};if(!p.width()){p.width(self.currentItem.innerWidth()-parseInt(self.currentItem.css('paddingLeft')||0,10)-parseInt(self.currentItem.css('paddingRight')||0,10));};}};} +self.placeholder=$(o.placeholder.element.call(self.element,self.currentItem));self.currentItem.after(self.placeholder);o.placeholder.update(self,self.placeholder);},_contactContainers:function(event){for(var i=this.containers.length-1;i>=0;i--){if(this._intersectsWith(this.containers[i].containerCache)){if(!this.containers[i].containerCache.over){if(this.currentContainer!=this.containers[i]){var dist=10000;var itemWithLeastDistance=null;var base=this.positionAbs[this.containers[i].floating?'left':'top'];for(var j=this.items.length-1;j>=0;j--){if(!$.ui.contains(this.containers[i].element[0],this.items[j].item[0]))continue;var cur=this.items[j][this.containers[i].floating?'left':'top'];if(Math.abs(cur-base)this.containment[2])pageX=this.containment[2]+this.offset.click.left;if(event.pageY-this.offset.click.top>this.containment[3])pageY=this.containment[3]+this.offset.click.top;} +if(o.grid){var top=this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1];pageY=this.containment?(!(top-this.offset.click.topthis.containment[3])?top:(!(top-this.offset.click.topthis.containment[2])?left:(!(left-this.offset.click.left=0;i--){if($.ui.contains(this.containers[i].element[0],this.currentItem[0])&&!noPropagation){delayedTriggers.push((function(c){return function(event){c._trigger("receive",event,this._uiHash(this));};}).call(this,this.containers[i]));delayedTriggers.push((function(c){return function(event){c._trigger("update",event,this._uiHash(this));};}).call(this,this.containers[i]));}};};for(var i=this.containers.length-1;i>=0;i--){if(!noPropagation)delayedTriggers.push((function(c){return function(event){c._trigger("deactivate",event,this._uiHash(this));};}).call(this,this.containers[i]));if(this.containers[i].containerCache.over){delayedTriggers.push((function(c){return function(event){c._trigger("out",event,this._uiHash(this));};}).call(this,this.containers[i]));this.containers[i].containerCache.over=0;}} +if(this._storedCursor)$('body').css("cursor",this._storedCursor);if(this._storedOpacity)this.helper.css("opacity",this._storedCursor);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=='auto'?'':this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!noPropagation){this._trigger("beforeStop",event,this._uiHash());for(var i=0;i *',placeholder:false,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,sortIndicator:$.ui.sortable.prototype._rearrange,tolerance:"intersect",zIndex:1000}});})(jQuery);TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data)}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize'),});resize();}});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel,});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-2ded29.js b/js/merged-2ded29.js new file mode 100644 index 000000000..f8d9ad348 --- /dev/null +++ b/js/merged-2ded29.js @@ -0,0 +1,567 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="";_19+="";var _1d=this.getParams();for(var key in _1d){_19+="";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="";}_19+="";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.majorfv.major){return true;}if(this.minorfv.minor){return true;}if(this.rev=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);$(".swfPanel").css('height',mh-10);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-42e0d3.js b/js/merged-42e0d3.js new file mode 100644 index 000000000..e29bc5401 --- /dev/null +++ b/js/merged-42e0d3.js @@ -0,0 +1,506 @@ + +(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;} +if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3]) +return jQuery().find(selector);return jQuery(elem);} +selector=[];}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String) +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]) +jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined) +this[expando]=null;});if(events===true) +this.find("*").andSelf().each(function(i){if(this.nodeType==3) +return;var events=jQuery.data(this,"events");for(var type in events) +for(var handler in events[type]) +jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String) +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true));else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse) +elems.reverse();} +var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr")) +obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")) +scripts=scripts.add(elem);else{if(elem.nodeType==1) +scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!="object"&&typeof target!="function") +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);} +if(jQuery(elem).is(":visible")) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari) +return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";} +if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem)) +ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode) +stack.unshift(a);for(;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);} +elem=jQuery.makeArray(div.childNodes);} +if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select"))) +return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;return elem[name];} +if(msie&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);} +return cur;},find:function(t,context){if(typeof t!="string") +return[t];if(context&&context.nodeType!=1&&context.nodeType!=9) +return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++) +for(var c=ret[i].firstChild;c;c=c.nextSibling) +if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName)) +r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass) +tmp.push(r[i]);} +return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}} +if(!m) +break;if(m[1]==":"&&m[2]=="not") +r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".") +r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not) +tmp.push(a);} +r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0) +add=true;if(add^not) +tmp.push(node);} +r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object") +fn=fn[m[2]];if(typeof fn=="string") +fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}} +return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(jQuery.browser.msie&&elem.setInterval) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered) +return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler) +delete events[type][handler.guid];else +for(handler in events[type]) +if(!parts[1]||events[type][handler].type==parts[1]) +delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;} +if(!elem){if(this.global[type]) +jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8) +return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;} +data[0].type=type;if(exclusive) +data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle) +val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +val=false;if(event) +data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined) +val=ret;} +if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;} +return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false) +val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}} +return val;},fix:function(event){if(event[expando]==true) +return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--) +event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault) +originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation) +originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +callback=callback||function(){};var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr){xhr.abort();if(!requestDone) +onreadystatechange("timeout");}},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(filter) +data=filter(data,type);if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery) +jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else +for(var j in a) +if(a[j]&&a[j].constructor==Array) +jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else +s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none") +this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1) +return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden) +return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}} +if(opt.overflow!=null) +this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val)) +e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;} +if(parts[1]) +end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else +e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";} +if(!type||(typeof type=="string"&&!fn)) +return queue(this[0],type);return this.each(function(){if(fn.constructor==Array) +queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1) +fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue) +this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array) +q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));} +return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length) +q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width") +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +this.elem.style.display="none";if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);} +if(done) +this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2) +border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed") +fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;} +while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display"))) +add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible") +border(parent);parent=parent.parentNode;} +if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute")) +add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed) +add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));} +results={top:top,left:left};} +function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));} +function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;} +return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+ +num(this,"padding"+tl)+ +num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+ +num(this,"border"+tl+"Width")+ +num(this,"border"+br+"Width")+ +(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +if($("#pw_"+i+" .c>div").height()+10>mh){$("#pw_"+i+" .c>div").css("overflow",'auto');}else{$("#pw_"+i+" .c>div").css("overflow",'visible');} +$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[@src*="png"]:not([@fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_emptyfield();';function load_emptyfield(){$("input.empty_field").each(function(){if($(this).attr('orig')){return;} +$(this).attr('orig',$(this).attr('value'));});$("input.empty_field").click(function(){if($(this).val()==$(this).attr('orig')){$(this).val('');}});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_truepopups();';function load_truepopups(){$(".truePopup").click(function(){$(this).attr('rel',$(this).attr('rel').replace(/screen.height/,screen.height));$(this).attr('rel',$(this).attr('rel').replace(/screen.width/,screen.width));window.open($(this).attr('href'),'',$(this).attr('rel'));return false;});$(".popupFS").click(function(){var n='PopupFS'+randval(1000,9999).toString();window.open($(this).attr('href'),n,'width='+screen.width+',height='+screen.height+',resizable=yes');return false;});$(".popupA4").click(function(){var h=screen.height;var n='PopupFS'+randval(1000,9999).toString();var w=h/1.4;window.open($(this).attr('href'),n,'width='+w+',height='+h+',resizable=yes');return false;});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){$("#devisAdresse select").change(function(){var client=$(this).val();$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client,success:function(data){MyAjax(data);}});});$("#factureAdresse select").change(function(){var projet=$(this).val();$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet,success:function(data){MyAjax(data);}});});if($(".dashboard").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data)}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize'),});resize();}});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel,});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} \ No newline at end of file diff --git a/js/merged-4703e7.js b/js/merged-4703e7.js new file mode 100644 index 000000000..581c60d76 --- /dev/null +++ b/js/merged-4703e7.js @@ -0,0 +1,754 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +jQuery.autocomplete=function(input,options){var me=this;var $input=$(input).attr("autocomplete","off");if(options.inputClass){$input.addClass(options.inputClass);} +var results=document.createElement("div");var $results=$(results).hide().addClass(options.resultsClass).css("position","absolute");if(options.width>0){$results.css("width",options.width);} +$(input).parent().append(results);input.autocompleter=me;var timeout=null;var prev="";var active=-1;var cache={};var keyb=false;var hasFocus=false;var lastKeyPressCode=null;var mouseDownOnSelect=false;var hidingResults=false;function flushCache(){cache={};cache.data={};cache.length=0;} +flushCache();if(options.data!=null){var sFirstChar="",stMatchSets={},row=[];if(typeof options.url!="string"){options.cacheLength=1;} +for(var i=0;i0){sFirstChar=row[0].substring(0,1).toLowerCase();if(!stMatchSets[sFirstChar])stMatchSets[sFirstChar]=[];stMatchSets[sFirstChar].push(row);}} +for(var k in stMatchSets){options.cacheLength++;addToCache(k,stMatchSets[k]);}} +$input.keydown(function(e){lastKeyPressCode=e.keyCode;switch(e.keyCode){case 38:e.preventDefault();moveSelect(-1);break;case 40:e.preventDefault();moveSelect(1);break;case 9:case 13:if(selectCurrent()){var i=$input.get(0);$(i).change();$(i).blur();e.preventDefault();} +break;default:active=-1;if(timeout)clearTimeout(timeout);timeout=setTimeout(function(){onChange();},options.delay);break;}}).focus(function(){hasFocus=true;}).blur(function(){hasFocus=false;if(!mouseDownOnSelect){hideResults();}});hideResultsNow();function onChange(){if(lastKeyPressCode==46||(lastKeyPressCode>8&&lastKeyPressCode<32))return $results.hide();var v=$input.val();if(v==prev)return;prev=v;if(v.length>=options.minChars){$input.addClass(options.loadingClass);requestData(v);}else{$input.removeClass(options.loadingClass);$results.hide();}};function moveSelect(step){var lis=$("li",results);if(!lis)return;active+=step;if(active<0){active=0;}else if(active>=lis.size()){active=lis.size()-1;} +lis.removeClass("ac_over");$(lis[active]).addClass("ac_over");};function selectCurrent(){var li=$("li.ac_over",results)[0];if(!li){var $li=$("li",results);if(options.selectOnly){if($li.length==1)li=$li[0];}else if(options.selectFirst){li=$li[0];}} +if(li){selectItem(li);return true;}else{return false;}};function selectItem(li){if(!li){li=document.createElement("li");li.extra=[];li.selectValue="";} +var v=$.trim(li.selectValue?li.selectValue:li.innerHTML);input.lastSelected=v;prev=v;$results.html("");$input.val(v);hideResultsNow();if(options.onItemSelect){setTimeout(function(){options.onItemSelect(li)},1);}};function createSelection(start,end){var field=$input.get(0);if(field.createTextRange){var selRange=field.createTextRange();selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}else if(field.setSelectionRange){field.setSelectionRange(start,end);}else{if(field.selectionStart){field.selectionStart=start;field.selectionEnd=end;}} +field.focus();};function autoFill(sValue){if(lastKeyPressCode!=8){$input.val($input.val()+sValue.substring(prev.length));createSelection(prev.length,sValue.length);}};function showResults(){var pos=$(input).position();var iWidth=(options.width>0)?options.width:$input.width();$results.css({width:parseInt(iWidth)+"px",top:parseInt(pos.top+parseInt($(input).height()))+"px",left:pos.left+"px",zIndex:'10',display:'block',position:'absolute'}).show();};function hideResults(){if(timeout)clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);};function hideResultsNow(){if(hidingResults){return;} +hidingResults=true;if(timeout){clearTimeout(timeout);} +var v=$input.removeClass(options.loadingClass).val();if($results.is(":visible")){$results.hide();} +if(options.mustMatch){if(!input.lastSelected||input.lastSelected!=v){selectItem(null);}} +hidingResults=false;};function receiveData(q,data){if(data){$input.removeClass(options.loadingClass);results.innerHTML="";if(!hasFocus||data.length==0)return hideResultsNow();if($.browser.msie){$results.append(document.createElement('iframe'));} +results.appendChild(dataToDom(data));if(options.autoFill&&($input.val().toLowerCase()==q.toLowerCase()))autoFill(data[0][0]);showResults();flushCache();}else{hideResultsNow();}};function parseData(data){if(!data)return null;var parsed=[];var rows=data[1];for(var i=0;i0)&&(options.maxItemsToShow1){extra=[];for(var j=1;j0)){$.getJSON(makeUrl(q),function(data){data=parseData(data);addToCache(q,data);receiveData(q,data);});}else{$input.removeClass(options.loadingClass);}};function makeUrl(q){var sep=options.url.indexOf('?')==-1?'?':'&';var url=options.url+sep+"q="+encodeURI(q);for(var i in options.extraParams){url+="&"+i+"="+encodeURI(options.extraParams[i]);} +return url;};function loadFromCache(q){if(!q)return null;if(cache.data[q])return cache.data[q];if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var qs=q.substr(0,i);var c=cache.data[qs];if(c){var csub=[];for(var j=0;j0)){$.get(makeUrl(q),function(data){data=parseData(data) +addToCache(q,data);findValueCallback(q,data);});}else{findValueCallback(q,null);}} +function findValueCallback(q,data){if(data)$input.removeClass(options.loadingClass);var num=(data)?data.length:0;var li=null;for(var i=0;i1){extra=[];for(var j=1;joptions.cacheLength){flushCache();cache.length++;}else if(!cache[q]){cache.length++;} +cache.data[q]=data;};function findPos(obj){var curleft=obj.offsetLeft||0;var curtop=obj.offsetTop||0;while(obj=obj.offsetParent){curleft+=obj.offsetLeft +curtop+=obj.offsetTop} +return{x:curleft,y:curtop};}} +jQuery.fn.autocomplete=function(url,options,data){options=options||{};options.url=url;options.data=((typeof data=="object")&&(data.constructor==Array))?data:null;options.inputClass=options.inputClass||"ac_input";options.resultsClass=options.resultsClass||"ac_results";options.lineSeparator=options.lineSeparator||"\n";options.cellSeparator=options.cellSeparator||"|";options.minChars=options.minChars||1;options.delay=options.delay||400;options.matchCase=options.matchCase||0;options.matchSubset=options.matchSubset||1;options.matchContains=options.matchContains||0;options.cacheLength=options.cacheLength||1;options.mustMatch=options.mustMatch||0;options.extraParams=options.extraParams||{};options.loadingClass=options.loadingClass||"ac_loading";options.selectFirst=options.selectFirst||false;options.selectOnly=options.selectOnly||false;options.maxItemsToShow=options.maxItemsToShow||-1;options.autoFill=options.autoFill||false;options.width=parseInt(options.width,10)||0;this.each(function(){var input=this;new jQuery.autocomplete(input,options);});return this;} +jQuery.fn.autocompleteArray=function(data,options){return this.autocomplete(null,options,data);} +jQuery.fn.indexOf=function(e){for(var i=0;i');$(this).autocomplete($(this).attr('rel'),{maxItemsToShow:15,cacheLength:0});});$(".autocompletestatic").each(function(){$(this).wrap('
');tab=$(this).attr('rel').split('§');$(this).autocompleteArray(tab,{maxItemsToShow:15,cacheLength:0});});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_emptyfield();';function load_emptyfield(){$("input.empty_field,input.empty-field").each(function(){if($(this).attr('orig')){return;} +$(this).attr('orig',$(this).attr('value'));});$("input.empty_field,input.empty-field").click(function(){if($(this).val()==$(this).attr('orig')){$(this).val('');}});};jQuery.ui||(function($){var _remove=$.fn.remove,isFF2=$.browser.mozilla&&(parseFloat($.browser.version)<1.9);$.ui={version:"1.7.2",plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]]);}},call:function(instance,name,args){var set=instance.plugins[name];if(!set||!instance.element[0].parentNode){return;} +for(var i=0;i0){return true;} +el[scroll]=1;has=(el[scroll]>0);el[scroll]=0;return has;},isOverAxis:function(x,reference,size){return(x>reference)&&(x<(reference+size));},isOver:function(y,x,top,left,height,width){return $.ui.isOverAxis(y,top,height)&&$.ui.isOverAxis(x,left,width);},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(isFF2){var attr=$.attr,removeAttr=$.fn.removeAttr,ariaNS="http://www.w3.org/2005/07/aaa",ariaState=/^aria-/,ariaRole=/^wairole:/;$.attr=function(elem,name,value){var set=value!==undefined;return(name=='role'?(set?attr.call(this,elem,name,"wairole:"+value):(attr.apply(this,arguments)||"").replace(ariaRole,"")):(ariaState.test(name)?(set?elem.setAttributeNS(ariaNS,name.replace(ariaState,"aaa:"),value):attr.call(this,elem,name.replace(ariaState,"aaa:"))):attr.apply(this,arguments)));};$.fn.removeAttr=function(name){return(ariaState.test(name)?this.each(function(){this.removeAttributeNS(ariaNS,name.replace(ariaState,""));}):removeAttr.call(this,name));};} +$.fn.extend({remove:function(){$("*",this).add(this).each(function(){$(this).triggerHandler("remove");});return _remove.apply(this,arguments);},enableSelection:function(){return this.attr('unselectable','off').css('MozUserSelect','').unbind('selectstart.ui');},disableSelection:function(){return this.attr('unselectable','on').css('MozUserSelect','none').bind('selectstart.ui',function(){return false;});},scrollParent:function(){var scrollParent;if(($.browser.msie&&(/(static|relative)/).test(this.css('position')))||(/absolute/).test(this.css('position'))){scrollParent=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test($.curCSS(this,'position',1))&&(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));}).eq(0);}else{scrollParent=this.parents().filter(function(){return(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));}).eq(0);} +return(/fixed/).test(this.css('position'))||!scrollParent.length?$(document):scrollParent;}});$.extend($.expr[':'],{data:function(elem,i,match){return!!$.data(elem,match[3]);},focusable:function(element){var nodeName=element.nodeName.toLowerCase(),tabIndex=$.attr(element,'tabindex');return(/input|select|textarea|button|object/.test(nodeName)?!element.disabled:'a'==nodeName||'area'==nodeName?element.href||!isNaN(tabIndex):!isNaN(tabIndex))&&!$(element)['area'==nodeName?'parents':'closest'](':hidden').length;},tabbable:function(element){var tabIndex=$.attr(element,'tabindex');return(isNaN(tabIndex)||tabIndex>=0)&&$(element).is(':focusable');}});function getter(namespace,plugin,method,args){function getMethods(type){var methods=$[namespace][plugin][type]||[];return(typeof methods=='string'?methods.split(/,?\s+/):methods);} +var methods=getMethods('getter');if(args.length==1&&typeof args[0]=='string'){methods=methods.concat(getMethods('getterSetter'));} +return($.inArray(method,methods)!=-1);} +$.widget=function(name,prototype){var namespace=name.split(".")[0];name=name.split(".")[1];$.fn[name]=function(options){var isMethodCall=(typeof options=='string'),args=Array.prototype.slice.call(arguments,1);if(isMethodCall&&options.substring(0,1)=='_'){return this;} +if(isMethodCall&&getter(namespace,name,options,args)){var instance=$.data(this[0],name);return(instance?instance[options].apply(instance,args):undefined);} +return this.each(function(){var instance=$.data(this,name);(!instance&&!isMethodCall&&$.data(this,name,new $[namespace][name](this,options))._init());(instance&&isMethodCall&&$.isFunction(instance[options])&&instance[options].apply(instance,args));});};$[namespace]=$[namespace]||{};$[namespace][name]=function(element,options){var self=this;this.namespace=namespace;this.widgetName=name;this.widgetEventPrefix=$[namespace][name].eventPrefix||name;this.widgetBaseClass=namespace+'-'+name;this.options=$.extend({},$.widget.defaults,$[namespace][name].defaults,$.metadata&&$.metadata.get(element)[name],options);this.element=$(element).bind('setData.'+name,function(event,key,value){if(event.target==element){return self._setData(key,value);}}).bind('getData.'+name,function(event,key){if(event.target==element){return self._getData(key);}}).bind('remove',function(){return self.destroy();});};$[namespace][name].prototype=$.extend({},$.widget.prototype,prototype);$[namespace][name].getterSetter='option';};$.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+'-disabled'+' '+this.namespace+'-state-disabled').removeAttr('aria-disabled');},option:function(key,value){var options=key,self=this;if(typeof key=="string"){if(value===undefined){return this._getData(key);} +options={};options[key]=value;} +$.each(options,function(key,value){self._setData(key,value);});},_getData:function(key){return this.options[key];},_setData:function(key,value){this.options[key]=value;if(key=='disabled'){this.element +[value?'addClass':'removeClass'](this.widgetBaseClass+'-disabled'+' '+ +this.namespace+'-state-disabled').attr("aria-disabled",value);}},enable:function(){this._setData('disabled',false);},disable:function(){this._setData('disabled',true);},_trigger:function(type,event,data){var callback=this.options[type],eventName=(type==this.widgetEventPrefix?type:this.widgetEventPrefix+type);event=$.Event(event);event.type=eventName;if(event.originalEvent){for(var i=$.event.props.length,prop;i;){prop=$.event.props[--i];event[prop]=event.originalEvent[prop];}} +this.element.trigger(event,data);return!($.isFunction(callback)&&callback.call(this.element[0],event,data)===false||event.isDefaultPrevented());}};$.widget.defaults={disabled:false};$.ui.mouse={_mouseInit:function(){var self=this;this.element.bind('mousedown.'+this.widgetName,function(event){return self._mouseDown(event);}).bind('click.'+this.widgetName,function(event){if(self._preventClickEvent){self._preventClickEvent=false;event.stopImmediatePropagation();return false;}});if($.browser.msie){this._mouseUnselectable=this.element.attr('unselectable');this.element.attr('unselectable','on');} +this.started=false;},_mouseDestroy:function(){this.element.unbind('.'+this.widgetName);($.browser.msie&&this.element.attr('unselectable',this._mouseUnselectable));},_mouseDown:function(event){event.originalEvent=event.originalEvent||{};if(event.originalEvent.mouseHandled){return;} +(this._mouseStarted&&this._mouseUp(event));this._mouseDownEvent=event;var self=this,btnIsLeft=(event.which==1),elIsCancel=(typeof this.options.cancel=="string"?$(event.target).parents().add(event.target).filter(this.options.cancel).length:false);if(!btnIsLeft||elIsCancel||!this._mouseCapture(event)){return true;} +this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){self.mouseDelayMet=true;},this.options.delay);} +if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){this._mouseStarted=(this._mouseStart(event)!==false);if(!this._mouseStarted){event.preventDefault();return true;}} +this._mouseMoveDelegate=function(event){return self._mouseMove(event);};this._mouseUpDelegate=function(event){return self._mouseUp(event);};$(document).bind('mousemove.'+this.widgetName,this._mouseMoveDelegate).bind('mouseup.'+this.widgetName,this._mouseUpDelegate);($.browser.safari||event.preventDefault());event.originalEvent.mouseHandled=true;return true;},_mouseMove:function(event){if($.browser.msie&&!event.button){return this._mouseUp(event);} +if(this._mouseStarted){this._mouseDrag(event);return event.preventDefault();} +if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,event)!==false);(this._mouseStarted?this._mouseDrag(event):this._mouseUp(event));} +return!this._mouseStarted;},_mouseUp:function(event){$(document).unbind('mousemove.'+this.widgetName,this._mouseMoveDelegate).unbind('mouseup.'+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(event.target==this._mouseDownEvent.target);this._mouseStop(event);} +return false;},_mouseDistanceMet:function(event){return(Math.max(Math.abs(this._mouseDownEvent.pageX-event.pageX),Math.abs(this._mouseDownEvent.pageY-event.pageY))>=this.options.distance);},_mouseDelayMet:function(event){return this.mouseDelayMet;},_mouseStart:function(event){},_mouseDrag:function(event){},_mouseStop:function(event){},_mouseCapture:function(event){return true;}};$.ui.mouse.defaults={cancel:null,distance:1,delay:0};})(jQuery);(function($){$.widget("ui.draggable",$.extend({},$.ui.mouse,{_init:function(){if(this.options.helper=='original'&&!(/^(?:r|a|f)/).test(this.element.css("position"))) +this.element[0].style.position='relative';(this.options.addClasses&&this.element.addClass("ui-draggable"));(this.options.disabled&&this.element.addClass("ui-draggable-disabled"));this._mouseInit();},destroy:function(){if(!this.element.data('draggable'))return;this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable" ++" ui-draggable-dragging" ++" ui-draggable-disabled");this._mouseDestroy();},_mouseCapture:function(event){var o=this.options;if(this.helper||o.disabled||$(event.target).is('.ui-resizable-handle')) +return false;this.handle=this._getHandle(event);if(!this.handle) +return false;return true;},_mouseStart:function(event){var o=this.options;this.helper=this._createHelper(event);this._cacheHelperProportions();if($.ui.ddmanager) +$.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};$.extend(this.offset,{click:{left:event.pageX-this.offset.left,top:event.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(event);this.originalPageX=event.pageX;this.originalPageY=event.pageY;if(o.cursorAt) +this._adjustOffsetFromHelper(o.cursorAt);if(o.containment) +this._setContainment();this._trigger("start",event);this._cacheHelperProportions();if($.ui.ddmanager&&!o.dropBehaviour) +$.ui.ddmanager.prepareOffsets(this,event);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(event,true);return true;},_mouseDrag:function(event,noPropagation){this.position=this._generatePosition(event);this.positionAbs=this._convertPositionTo("absolute");if(!noPropagation){var ui=this._uiHash();this._trigger('drag',event,ui);this.position=ui.position;} +if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+'px';if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+'px';if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);return false;},_mouseStop:function(event){var dropped=false;if($.ui.ddmanager&&!this.options.dropBehaviour) +dropped=$.ui.ddmanager.drop(this,event);if(this.dropped){dropped=this.dropped;this.dropped=false;} +if((this.options.revert=="invalid"&&!dropped)||(this.options.revert=="valid"&&dropped)||this.options.revert===true||($.isFunction(this.options.revert)&&this.options.revert.call(this.element,dropped))){var self=this;$(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){self._trigger("stop",event);self._clear();});}else{this._trigger("stop",event);this._clear();} +return false;},_getHandle:function(event){var handle=!this.options.handle||!$(this.options.handle,this.element).length?true:false;$(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==event.target)handle=true;});return handle;},_createHelper:function(event){var o=this.options;var helper=$.isFunction(o.helper)?$(o.helper.apply(this.element[0],[event])):(o.helper=='clone'?this.element.clone():this.element);if(!helper.parents('body').length) +helper.appendTo((o.appendTo=='parent'?this.element[0].parentNode:o.appendTo));if(helper[0]!=this.element[0]&&!(/(fixed|absolute)/).test(helper.css("position"))) +helper.css("position","absolute");return helper;},_adjustOffsetFromHelper:function(obj){if(obj.left!=undefined)this.offset.click.left=obj.left+this.margins.left;if(obj.right!=undefined)this.offset.click.left=this.helperProportions.width-obj.right+this.margins.left;if(obj.top!=undefined)this.offset.click.top=obj.top+this.margins.top;if(obj.bottom!=undefined)this.offset.click.top=this.helperProportions.height-obj.bottom+this.margins.top;},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var po=this.offsetParent.offset();if(this.cssPosition=='absolute'&&this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0])){po.left+=this.scrollParent.scrollLeft();po.top+=this.scrollParent.scrollTop();} +if((this.offsetParent[0]==document.body)||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=='html'&&$.browser.msie)) +po={top:0,left:0};return{top:po.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:po.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)};},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var p=this.element.position();return{top:p.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:p.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()};}else{return{top:0,left:0};}},_cacheMargins:function(){this.margins={left:(parseInt(this.element.css("marginLeft"),10)||0),top:(parseInt(this.element.css("marginTop"),10)||0)};},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()};},_setContainment:function(){var o=this.options;if(o.containment=='parent')o.containment=this.helper[0].parentNode;if(o.containment=='document'||o.containment=='window')this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,$(o.containment=='document'?document:window).width()-this.helperProportions.width-this.margins.left,($(o.containment=='document'?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!(/^(document|window|parent)$/).test(o.containment)&&o.containment.constructor!=Array){var ce=$(o.containment)[0];if(!ce)return;var co=$(o.containment).offset();var over=($(ce).css("overflow")!='hidden');this.containment=[co.left+(parseInt($(ce).css("borderLeftWidth"),10)||0)+(parseInt($(ce).css("paddingLeft"),10)||0)-this.margins.left,co.top+(parseInt($(ce).css("borderTopWidth"),10)||0)+(parseInt($(ce).css("paddingTop"),10)||0)-this.margins.top,co.left+(over?Math.max(ce.scrollWidth,ce.offsetWidth):ce.offsetWidth)-(parseInt($(ce).css("borderLeftWidth"),10)||0)-(parseInt($(ce).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,co.top+(over?Math.max(ce.scrollHeight,ce.offsetHeight):ce.offsetHeight)-(parseInt($(ce).css("borderTopWidth"),10)||0)-(parseInt($(ce).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top];}else if(o.containment.constructor==Array){this.containment=o.containment;}},_convertPositionTo:function(d,pos){if(!pos)pos=this.position;var mod=d=="absolute"?1:-1;var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);return{top:(pos.top ++this.offset.relative.top*mod ++this.offset.parent.top*mod +-($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollTop():(scrollIsRootNode?0:scroll.scrollTop()))*mod)),left:(pos.left ++this.offset.relative.left*mod ++this.offset.parent.left*mod +-($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollLeft():scrollIsRootNode?0:scroll.scrollLeft())*mod))};},_generatePosition:function(event){var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);if(this.cssPosition=='relative'&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0])){this.offset.relative=this._getRelativeOffset();} +var pageX=event.pageX;var pageY=event.pageY;if(this.originalPosition){if(this.containment){if(event.pageX-this.offset.click.leftthis.containment[2])pageX=this.containment[2]+this.offset.click.left;if(event.pageY-this.offset.click.top>this.containment[3])pageY=this.containment[3]+this.offset.click.top;} +if(o.grid){var top=this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1];pageY=this.containment?(!(top-this.offset.click.topthis.containment[3])?top:(!(top-this.offset.click.topthis.containment[2])?left:(!(left-this.offset.click.left').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1000}).css($(this).offset()).appendTo("body");});},stop:function(event,ui){$("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this);});}});$.ui.plugin.add("draggable","opacity",{start:function(event,ui){var t=$(ui.helper),o=$(this).data('draggable').options;if(t.css("opacity"))o._opacity=t.css("opacity");t.css('opacity',o.opacity);},stop:function(event,ui){var o=$(this).data('draggable').options;if(o._opacity)$(ui.helper).css('opacity',o._opacity);}});$.ui.plugin.add("draggable","scroll",{start:function(event,ui){var i=$(this).data("draggable");if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML')i.overflowOffset=i.scrollParent.offset();},drag:function(event,ui){var i=$(this).data("draggable"),o=i.options,scrolled=false;if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML'){if(!o.axis||o.axis!='x'){if((i.overflowOffset.top+i.scrollParent[0].offsetHeight)-event.pageY=0;i--){var l=inst.snapElements[i].left,r=l+inst.snapElements[i].width,t=inst.snapElements[i].top,b=t+inst.snapElements[i].height;if(!((l-d=0;i--) +this.items[i].item.removeData("sortable-item");},_mouseCapture:function(event,overrideHandle){if(this.reverting){return false;} +if(this.options.disabled||this.options.type=='static')return false;this._refreshItems(event);var currentItem=null,self=this,nodes=$(event.target).parents().each(function(){if($.data(this,'sortable-item')==self){currentItem=$(this);return false;}});if($.data(event.target,'sortable-item')==self)currentItem=$(event.target);if(!currentItem)return false;if(this.options.handle&&!overrideHandle){var validHandle=false;$(this.options.handle,currentItem).find("*").andSelf().each(function(){if(this==event.target)validHandle=true;});if(!validHandle)return false;} +this.currentItem=currentItem;this._removeCurrentsFromItems();return true;},_mouseStart:function(event,overrideHandle,noActivation){var o=this.options,self=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(event);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");$.extend(this.offset,{click:{left:event.pageX-this.offset.left,top:event.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(event);this.originalPageX=event.pageX;this.originalPageY=event.pageY;if(o.cursorAt) +this._adjustOffsetFromHelper(o.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};if(this.helper[0]!=this.currentItem[0]){this.currentItem.hide();} +this._createPlaceholder();if(o.containment) +this._setContainment();if(o.cursor){if($('body').css("cursor"))this._storedCursor=$('body').css("cursor");$('body').css("cursor",o.cursor);} +if(o.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",o.opacity);} +if(o.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",o.zIndex);} +if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML') +this.overflowOffset=this.scrollParent.offset();this._trigger("start",event,this._uiHash());if(!this._preserveHelperProportions) +this._cacheHelperProportions();if(!noActivation){for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._trigger("activate",event,self._uiHash(this));}} +if($.ui.ddmanager) +$.ui.ddmanager.current=this;if($.ui.ddmanager&&!o.dropBehaviour) +$.ui.ddmanager.prepareOffsets(this,event);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(event);return true;},_mouseDrag:function(event){this.position=this._generatePosition(event);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs){this.lastPositionAbs=this.positionAbs;} +if(this.options.scroll){var o=this.options,scrolled=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML'){if((this.overflowOffset.top+this.scrollParent[0].offsetHeight)-event.pageY=0;i--){var item=this.items[i],itemElement=item.item[0],intersection=this._intersectsWithPointer(item);if(!intersection)continue;if(itemElement!=this.currentItem[0]&&this.placeholder[intersection==1?"next":"prev"]()[0]!=itemElement&&!$.ui.contains(this.placeholder[0],itemElement)&&(this.options.type=='semi-dynamic'?!$.ui.contains(this.element[0],itemElement):true)){this.direction=intersection==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(item)){this._rearrange(event,item);}else{break;} +this._trigger("change",event,this._uiHash());break;}} +this._contactContainers(event);if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);this._trigger('sort',event,this._uiHash());this.lastPositionAbs=this.positionAbs;return false;},_mouseStop:function(event,noPropagation){if(!event)return;if($.ui.ddmanager&&!this.options.dropBehaviour) +$.ui.ddmanager.drop(this,event);if(this.options.revert){var self=this;var cur=self.placeholder.offset();self.reverting=true;$(this.helper).animate({left:cur.left-this.offset.parent.left-self.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:cur.top-this.offset.parent.top-self.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){self._clear(event);});}else{this._clear(event,noPropagation);} +return false;},cancel:function(){var self=this;if(this.dragging){this._mouseUp();if(this.options.helper=="original") +this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper");else +this.currentItem.show();for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._trigger("deactivate",null,self._uiHash(this));if(this.containers[i].containerCache.over){this.containers[i]._trigger("out",null,self._uiHash(this));this.containers[i].containerCache.over=0;}}} +if(this.placeholder[0].parentNode)this.placeholder[0].parentNode.removeChild(this.placeholder[0]);if(this.options.helper!="original"&&this.helper&&this.helper[0].parentNode)this.helper.remove();$.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});if(this.domPosition.prev){$(this.domPosition.prev).after(this.currentItem);}else{$(this.domPosition.parent).prepend(this.currentItem);} +return true;},serialize:function(o){var items=this._getItemsAsjQuery(o&&o.connected);var str=[];o=o||{};$(items).each(function(){var res=($(o.item||this).attr(o.attribute||'id')||'').match(o.expression||(/(.+)[-=_](.+)/));if(res)str.push((o.key||res[1]+'[]')+'='+(o.key&&o.expression?res[1]:res[2]));});return str.join('&');},toArray:function(o){var items=this._getItemsAsjQuery(o&&o.connected);var ret=[];o=o||{};items.each(function(){ret.push($(o.item||this).attr(o.attribute||'id')||'');});return ret;},_intersectsWith:function(item){var x1=this.positionAbs.left,x2=x1+this.helperProportions.width,y1=this.positionAbs.top,y2=y1+this.helperProportions.height;var l=item.left,r=l+item.width,t=item.top,b=t+item.height;var dyClick=this.offset.click.top,dxClick=this.offset.click.left;var isOverElement=(y1+dyClick)>t&&(y1+dyClick)l&&(x1+dxClick)item[this.floating?'width':'height'])){return isOverElement;}else{return(l0?"down":"up");},_getDragHorizontalDirection:function(){var delta=this.positionAbs.left-this.lastPositionAbs.left;return delta!=0&&(delta>0?"right":"left");},refresh:function(event){this._refreshItems(event);this.refreshPositions();},_connectWith:function(){var options=this.options;return options.connectWith.constructor==String?[options.connectWith]:options.connectWith;},_getItemsAsjQuery:function(connected){var self=this;var items=[];var queries=[];var connectWith=this._connectWith();if(connectWith&&connected){for(var i=connectWith.length-1;i>=0;i--){var cur=$(connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element):$(inst.options.items,inst.element).not(".ui-sortable-helper"),inst]);}};};} +queries.push([$.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):$(this.options.items,this.element).not(".ui-sortable-helper"),this]);for(var i=queries.length-1;i>=0;i--){queries[i][0].each(function(){items.push(this);});};return $(items);},_removeCurrentsFromItems:function(){var list=this.currentItem.find(":data(sortable-item)");for(var i=0;i=0;i--){var cur=$(connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element[0],event,{item:this.currentItem}):$(inst.options.items,inst.element),inst]);this.containers.push(inst);}};};} +for(var i=queries.length-1;i>=0;i--){var targetData=queries[i][1];var _queries=queries[i][0];for(var j=0,queriesLength=_queries.length;j=0;i--){var item=this.items[i];if(item.instance!=this.currentContainer&&this.currentContainer&&item.item[0]!=this.currentItem[0]) +continue;var t=this.options.toleranceElement?$(this.options.toleranceElement,item.item):item.item;if(!fast){item.width=t.outerWidth();item.height=t.outerHeight();} +var p=t.offset();item.left=p.left;item.top=p.top;};if(this.options.custom&&this.options.custom.refreshContainers){this.options.custom.refreshContainers.call(this);}else{for(var i=this.containers.length-1;i>=0;i--){var p=this.containers[i].element.offset();this.containers[i].containerCache.left=p.left;this.containers[i].containerCache.top=p.top;this.containers[i].containerCache.width=this.containers[i].element.outerWidth();this.containers[i].containerCache.height=this.containers[i].element.outerHeight();};}},_createPlaceholder:function(that){var self=that||this,o=self.options;if(!o.placeholder||o.placeholder.constructor==String){var className=o.placeholder;o.placeholder={element:function(){var el=$(document.createElement(self.currentItem[0].nodeName)).addClass(className||self.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!className) +el.style.visibility="hidden";return el;},update:function(container,p){if(className&&!o.forcePlaceholderSize)return;if(!p.height()){p.height(self.currentItem.innerHeight()-parseInt(self.currentItem.css('paddingTop')||0,10)-parseInt(self.currentItem.css('paddingBottom')||0,10));};if(!p.width()){p.width(self.currentItem.innerWidth()-parseInt(self.currentItem.css('paddingLeft')||0,10)-parseInt(self.currentItem.css('paddingRight')||0,10));};}};} +self.placeholder=$(o.placeholder.element.call(self.element,self.currentItem));self.currentItem.after(self.placeholder);o.placeholder.update(self,self.placeholder);},_contactContainers:function(event){for(var i=this.containers.length-1;i>=0;i--){if(this._intersectsWith(this.containers[i].containerCache)){if(!this.containers[i].containerCache.over){if(this.currentContainer!=this.containers[i]){var dist=10000;var itemWithLeastDistance=null;var base=this.positionAbs[this.containers[i].floating?'left':'top'];for(var j=this.items.length-1;j>=0;j--){if(!$.ui.contains(this.containers[i].element[0],this.items[j].item[0]))continue;var cur=this.items[j][this.containers[i].floating?'left':'top'];if(Math.abs(cur-base)this.containment[2])pageX=this.containment[2]+this.offset.click.left;if(event.pageY-this.offset.click.top>this.containment[3])pageY=this.containment[3]+this.offset.click.top;} +if(o.grid){var top=this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1];pageY=this.containment?(!(top-this.offset.click.topthis.containment[3])?top:(!(top-this.offset.click.topthis.containment[2])?left:(!(left-this.offset.click.left=0;i--){if($.ui.contains(this.containers[i].element[0],this.currentItem[0])&&!noPropagation){delayedTriggers.push((function(c){return function(event){c._trigger("receive",event,this._uiHash(this));};}).call(this,this.containers[i]));delayedTriggers.push((function(c){return function(event){c._trigger("update",event,this._uiHash(this));};}).call(this,this.containers[i]));}};};for(var i=this.containers.length-1;i>=0;i--){if(!noPropagation)delayedTriggers.push((function(c){return function(event){c._trigger("deactivate",event,this._uiHash(this));};}).call(this,this.containers[i]));if(this.containers[i].containerCache.over){delayedTriggers.push((function(c){return function(event){c._trigger("out",event,this._uiHash(this));};}).call(this,this.containers[i]));this.containers[i].containerCache.over=0;}} +if(this._storedCursor)$('body').css("cursor",this._storedCursor);if(this._storedOpacity)this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=='auto'?'':this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!noPropagation){this._trigger("beforeStop",event,this._uiHash());for(var i=0;i *',opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1000}});})(jQuery);TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-6298ca.js b/js/merged-6298ca.js new file mode 100644 index 000000000..f0af59a57 --- /dev/null +++ b/js/merged-6298ca.js @@ -0,0 +1,569 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_emptyfield();';function load_emptyfield(){$("input.empty_field,input.empty-field").each(function(){if($(this).attr('orig')){return;} +$(this).attr('orig',$(this).attr('value'));});$("input.empty_field,input.empty-field").click(function(){if($(this).val()==$(this).attr('orig')){$(this).val('');}});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-62e846.js b/js/merged-62e846.js new file mode 100644 index 000000000..4a2e8e38b --- /dev/null +++ b/js/merged-62e846.js @@ -0,0 +1,521 @@ + +(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;} +if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3]) +return jQuery().find(selector);return jQuery(elem);} +selector=[];}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String) +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]) +jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined) +this[expando]=null;});if(events===true) +this.find("*").andSelf().each(function(i){if(this.nodeType==3) +return;var events=jQuery.data(this,"events");for(var type in events) +for(var handler in events[type]) +jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String) +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true));else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse) +elems.reverse();} +var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr")) +obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")) +scripts=scripts.add(elem);else{if(elem.nodeType==1) +scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!="object"&&typeof target!="function") +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);} +if(jQuery(elem).is(":visible")) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari) +return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";} +if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem)) +ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode) +stack.unshift(a);for(;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);} +elem=jQuery.makeArray(div.childNodes);} +if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select"))) +return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;return elem[name];} +if(msie&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);} +return cur;},find:function(t,context){if(typeof t!="string") +return[t];if(context&&context.nodeType!=1&&context.nodeType!=9) +return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++) +for(var c=ret[i].firstChild;c;c=c.nextSibling) +if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName)) +r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass) +tmp.push(r[i]);} +return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}} +if(!m) +break;if(m[1]==":"&&m[2]=="not") +r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".") +r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not) +tmp.push(a);} +r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0) +add=true;if(add^not) +tmp.push(node);} +r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object") +fn=fn[m[2]];if(typeof fn=="string") +fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}} +return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(jQuery.browser.msie&&elem.setInterval) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered) +return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler) +delete events[type][handler.guid];else +for(handler in events[type]) +if(!parts[1]||events[type][handler].type==parts[1]) +delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;} +if(!elem){if(this.global[type]) +jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8) +return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;} +data[0].type=type;if(exclusive) +data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle) +val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +val=false;if(event) +data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined) +val=ret;} +if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;} +return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false) +val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}} +return val;},fix:function(event){if(event[expando]==true) +return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--) +event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault) +originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation) +originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +callback=callback||function(){};var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr){xhr.abort();if(!requestDone) +onreadystatechange("timeout");}},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(filter) +data=filter(data,type);if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery) +jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else +for(var j in a) +if(a[j]&&a[j].constructor==Array) +jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else +s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none") +this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1) +return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden) +return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}} +if(opt.overflow!=null) +this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val)) +e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;} +if(parts[1]) +end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else +e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";} +if(!type||(typeof type=="string"&&!fn)) +return queue(this[0],type);return this.each(function(){if(fn.constructor==Array) +queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1) +fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue) +this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array) +q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));} +return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length) +q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width") +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +this.elem.style.display="none";if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);} +if(done) +this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2) +border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed") +fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;} +while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display"))) +add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible") +border(parent);parent=parent.parentNode;} +if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute")) +add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed) +add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));} +results={top:top,left:left};} +function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));} +function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;} +return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+ +num(this,"padding"+tl)+ +num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+ +num(this,"border"+tl+"Width")+ +num(this,"border"+br+"Width")+ +(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +if($("#pw_"+i+" .c>div").height()+10>mh){$("#pw_"+i+" .c>div").css("overflow",'auto');}else{$("#pw_"+i+" .c>div").css("overflow",'visible');} +$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[@src*="png"]:not([@fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}};(function($){var _remove=$.fn.remove;$.fn.remove=function(){$("*",this).add(this).triggerHandler("remove");return _remove.apply(this,arguments);};$.expr[':'].data="jQuery.data(a, m[3])";$.keyCode={BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38};function getter(namespace,plugin,method,args){function getMethods(type){var methods=$[namespace][plugin][type]||[];return(typeof methods=='string'?methods.split(/,?\s+/):methods);} +var methods=getMethods('getter');if(args.length==1&&typeof args[0]=='string'){methods=methods.concat(getMethods('getterSetter'));} +return($.inArray(method,methods)!=-1);} +$.widget=function(name,prototype){var namespace=name.split(".")[0];name=name.split(".")[1];$.fn[name]=function(options){var isMethodCall=(typeof options=='string'),args=Array.prototype.slice.call(arguments,1);if(isMethodCall&&options.substring(0,1)=='_'){return this;} +if(isMethodCall&&getter(namespace,name,options,args)){var instance=$.data(this[0],name);return(instance?instance[options].apply(instance,args):undefined);} +return this.each(function(){var instance=$.data(this,name);(!instance&&!isMethodCall&&$.data(this,name,new $[namespace][name](this,options)));(instance&&isMethodCall&&instance[options].apply(instance,args));});};$[namespace][name]=function(element,options){var self=this;this.widgetName=name;this.widgetEventPrefix=$[namespace][name].eventPrefix||name;this.widgetBaseClass=namespace+'-'+name;this.options=$.extend({},$.widget.defaults,$[namespace][name].defaults,$.metadata&&$.metadata.get(element)[name],options);this.element=$(element).bind('setData.'+name,function(e,key,value){return self._setData(key,value);}).bind('getData.'+name,function(e,key){return self._getData(key);}).bind('remove',function(){return self.destroy();});this._init();};$[namespace][name].prototype=$.extend({},$.widget.prototype,prototype);$[namespace][name].getterSetter='option';};$.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName);},option:function(key,value){var options=key,self=this;if(typeof key=="string"){if(value===undefined){return this._getData(key);} +options={};options[key]=value;} +$.each(options,function(key,value){self._setData(key,value);});},_getData:function(key){return this.options[key];},_setData:function(key,value){this.options[key]=value;if(key=='disabled'){this.element[value?'addClass':'removeClass'](this.widgetBaseClass+'-disabled');}},enable:function(){this._setData('disabled',false);},disable:function(){this._setData('disabled',true);},_trigger:function(type,e,data){var eventName=(type==this.widgetEventPrefix?type:this.widgetEventPrefix+type);e=e||$.event.fix({type:eventName,target:this.element[0]});return this.element.triggerHandler(eventName,[e,data],this.options[type]);}};$.widget.defaults={disabled:false};$.ui={plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]]);}},call:function(instance,name,args){var set=instance.plugins[name];if(!set){return;} +for(var i=0;i').addClass(name).css({position:'absolute',top:'-5000px',left:'-5000px',display:'block'}).appendTo('body');$.ui.cssCache[name]=!!((!(/auto|default/).test(tmp.css('cursor'))||(/^[1-9]/).test(tmp.css('height'))||(/^[1-9]/).test(tmp.css('width'))||!(/none/).test(tmp.css('backgroundImage'))||!(/transparent|rgba\(0, 0, 0, 0\)/).test(tmp.css('backgroundColor'))));try{$('body').get(0).removeChild(tmp.get(0));}catch(e){} +return $.ui.cssCache[name];},disableSelection:function(el){$(el).attr('unselectable','on').css('MozUserSelect','none').bind('selectstart.ui',function(){return false;});},enableSelection:function(el){$(el).attr('unselectable','off').css('MozUserSelect','').unbind('selectstart.ui');},hasScroll:function(e,a){var scroll=(a&&a=='left')?'scrollLeft':'scrollTop',has=false;if(e[scroll]>0){return true;} +e[scroll]=1;has=(e[scroll]>0);e[scroll]=0;return has;}};$.ui.mouse={_mouseInit:function(){var self=this;this.element.bind('mousedown.'+this.widgetName,function(e){return self._mouseDown(e);});if($.browser.msie){this._mouseUnselectable=this.element.attr('unselectable');this.element.attr('unselectable','on');} +this.started=false;},_mouseDestroy:function(){this.element.unbind('.'+this.widgetName);($.browser.msie&&this.element.attr('unselectable',this._mouseUnselectable));},_mouseDown:function(e){(this._mouseStarted&&this._mouseUp(e));this._mouseDownEvent=e;var self=this,btnIsLeft=(e.which==1),elIsCancel=(typeof this.options.cancel=="string"?$(e.target).parents().add(e.target).filter(this.options.cancel).length:false);if(!btnIsLeft||elIsCancel||!this._mouseCapture(e)){return true;} +this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){self.mouseDelayMet=true;},this.options.delay);} +if(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)){this._mouseStarted=(this._mouseStart(e)!==false);if(!this._mouseStarted){e.preventDefault();return true;}} +this._mouseMoveDelegate=function(e){return self._mouseMove(e);};this._mouseUpDelegate=function(e){return self._mouseUp(e);};$(document).bind('mousemove.'+this.widgetName,this._mouseMoveDelegate).bind('mouseup.'+this.widgetName,this._mouseUpDelegate);return false;},_mouseMove:function(e){if($.browser.msie&&!e.button){return this._mouseUp(e);} +if(this._mouseStarted){this._mouseDrag(e);return false;} +if(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,e)!==false);(this._mouseStarted?this._mouseDrag(e):this._mouseUp(e));} +return!this._mouseStarted;},_mouseUp:function(e){$(document).unbind('mousemove.'+this.widgetName,this._mouseMoveDelegate).unbind('mouseup.'+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._mouseStop(e);} +return false;},_mouseDistanceMet:function(e){return(Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance);},_mouseDelayMet:function(e){return this.mouseDelayMet;},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return true;}};$.ui.mouse.defaults={cancel:null,distance:1,delay:0};})(jQuery);TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($(".dashboard").length>=1){if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data)}});} +$(".dashboard").sortable();} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast');$(this).toggleClass('closed');$.ajax({url:SITE_PATH+'ajax/toogleDashboard/'+rel,});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} \ No newline at end of file diff --git a/js/merged-657b8b.js b/js/merged-657b8b.js new file mode 100644 index 000000000..47e41c0c9 --- /dev/null +++ b/js/merged-657b8b.js @@ -0,0 +1,567 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);$(".swfPanel").css('height',mh-10);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-849b2d.js b/js/merged-849b2d.js new file mode 100644 index 000000000..93e41ba76 --- /dev/null +++ b/js/merged-849b2d.js @@ -0,0 +1,577 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_emptyfield();';function load_emptyfield(){$("input.empty_field,input.empty-field").each(function(){if($(this).attr('orig')){return;} +$(this).attr('orig',$(this).attr('value'));});$("input.empty_field,input.empty-field").click(function(){if($(this).val()==$(this).attr('orig')){$(this).val('');}});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_truepopups();';function load_truepopups(){$(".truePopup").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +$(this).attr('rel',$(this).attr('rel').replace(/screen.height/,screen.height));$(this).attr('rel',$(this).attr('rel').replace(/screen.width/,screen.width));window.open($(this).attr('href'),n,$(this).attr('rel'));return false;});$(".popupFS").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +window.open($(this).attr('href'),n,'width='+screen.width+',height='+screen.height+',resizable=yes');return false;});$(".popupA4").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +var h=screen.height;var w=h/1.5;window.open($(this).attr('href'),n,'width='+w+',height='+h+',resizable=yes');return false;});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_contextmenu();';function load_contextmenu(){$("*:not(.openContextMenu)").click(function(){$(".contextMenu").hide();});$(".openContextMenu").click(function(e){$(".contextMenu").hide();var rel=$(this).attr('rel');var cm=$("#"+rel).clone(true);var args=$(this).attr('rev').split('§');var h=$(cm).html();var j;var mask;for(var i=0;i=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-91dc42.js b/js/merged-91dc42.js new file mode 100644 index 000000000..75407c362 --- /dev/null +++ b/js/merged-91dc42.js @@ -0,0 +1,715 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}};jQuery.ui||(function($){var _remove=$.fn.remove,isFF2=$.browser.mozilla&&(parseFloat($.browser.version)<1.9);$.ui={version:"1.7.2",plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]]);}},call:function(instance,name,args){var set=instance.plugins[name];if(!set||!instance.element[0].parentNode){return;} +for(var i=0;i0){return true;} +el[scroll]=1;has=(el[scroll]>0);el[scroll]=0;return has;},isOverAxis:function(x,reference,size){return(x>reference)&&(x<(reference+size));},isOver:function(y,x,top,left,height,width){return $.ui.isOverAxis(y,top,height)&&$.ui.isOverAxis(x,left,width);},keyCode:{BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38}};if(isFF2){var attr=$.attr,removeAttr=$.fn.removeAttr,ariaNS="http://www.w3.org/2005/07/aaa",ariaState=/^aria-/,ariaRole=/^wairole:/;$.attr=function(elem,name,value){var set=value!==undefined;return(name=='role'?(set?attr.call(this,elem,name,"wairole:"+value):(attr.apply(this,arguments)||"").replace(ariaRole,"")):(ariaState.test(name)?(set?elem.setAttributeNS(ariaNS,name.replace(ariaState,"aaa:"),value):attr.call(this,elem,name.replace(ariaState,"aaa:"))):attr.apply(this,arguments)));};$.fn.removeAttr=function(name){return(ariaState.test(name)?this.each(function(){this.removeAttributeNS(ariaNS,name.replace(ariaState,""));}):removeAttr.call(this,name));};} +$.fn.extend({remove:function(){$("*",this).add(this).each(function(){$(this).triggerHandler("remove");});return _remove.apply(this,arguments);},enableSelection:function(){return this.attr('unselectable','off').css('MozUserSelect','').unbind('selectstart.ui');},disableSelection:function(){return this.attr('unselectable','on').css('MozUserSelect','none').bind('selectstart.ui',function(){return false;});},scrollParent:function(){var scrollParent;if(($.browser.msie&&(/(static|relative)/).test(this.css('position')))||(/absolute/).test(this.css('position'))){scrollParent=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test($.curCSS(this,'position',1))&&(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));}).eq(0);}else{scrollParent=this.parents().filter(function(){return(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));}).eq(0);} +return(/fixed/).test(this.css('position'))||!scrollParent.length?$(document):scrollParent;}});$.extend($.expr[':'],{data:function(elem,i,match){return!!$.data(elem,match[3]);},focusable:function(element){var nodeName=element.nodeName.toLowerCase(),tabIndex=$.attr(element,'tabindex');return(/input|select|textarea|button|object/.test(nodeName)?!element.disabled:'a'==nodeName||'area'==nodeName?element.href||!isNaN(tabIndex):!isNaN(tabIndex))&&!$(element)['area'==nodeName?'parents':'closest'](':hidden').length;},tabbable:function(element){var tabIndex=$.attr(element,'tabindex');return(isNaN(tabIndex)||tabIndex>=0)&&$(element).is(':focusable');}});function getter(namespace,plugin,method,args){function getMethods(type){var methods=$[namespace][plugin][type]||[];return(typeof methods=='string'?methods.split(/,?\s+/):methods);} +var methods=getMethods('getter');if(args.length==1&&typeof args[0]=='string'){methods=methods.concat(getMethods('getterSetter'));} +return($.inArray(method,methods)!=-1);} +$.widget=function(name,prototype){var namespace=name.split(".")[0];name=name.split(".")[1];$.fn[name]=function(options){var isMethodCall=(typeof options=='string'),args=Array.prototype.slice.call(arguments,1);if(isMethodCall&&options.substring(0,1)=='_'){return this;} +if(isMethodCall&&getter(namespace,name,options,args)){var instance=$.data(this[0],name);return(instance?instance[options].apply(instance,args):undefined);} +return this.each(function(){var instance=$.data(this,name);(!instance&&!isMethodCall&&$.data(this,name,new $[namespace][name](this,options))._init());(instance&&isMethodCall&&$.isFunction(instance[options])&&instance[options].apply(instance,args));});};$[namespace]=$[namespace]||{};$[namespace][name]=function(element,options){var self=this;this.namespace=namespace;this.widgetName=name;this.widgetEventPrefix=$[namespace][name].eventPrefix||name;this.widgetBaseClass=namespace+'-'+name;this.options=$.extend({},$.widget.defaults,$[namespace][name].defaults,$.metadata&&$.metadata.get(element)[name],options);this.element=$(element).bind('setData.'+name,function(event,key,value){if(event.target==element){return self._setData(key,value);}}).bind('getData.'+name,function(event,key){if(event.target==element){return self._getData(key);}}).bind('remove',function(){return self.destroy();});};$[namespace][name].prototype=$.extend({},$.widget.prototype,prototype);$[namespace][name].getterSetter='option';};$.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName).removeClass(this.widgetBaseClass+'-disabled'+' '+this.namespace+'-state-disabled').removeAttr('aria-disabled');},option:function(key,value){var options=key,self=this;if(typeof key=="string"){if(value===undefined){return this._getData(key);} +options={};options[key]=value;} +$.each(options,function(key,value){self._setData(key,value);});},_getData:function(key){return this.options[key];},_setData:function(key,value){this.options[key]=value;if(key=='disabled'){this.element +[value?'addClass':'removeClass'](this.widgetBaseClass+'-disabled'+' '+ +this.namespace+'-state-disabled').attr("aria-disabled",value);}},enable:function(){this._setData('disabled',false);},disable:function(){this._setData('disabled',true);},_trigger:function(type,event,data){var callback=this.options[type],eventName=(type==this.widgetEventPrefix?type:this.widgetEventPrefix+type);event=$.Event(event);event.type=eventName;if(event.originalEvent){for(var i=$.event.props.length,prop;i;){prop=$.event.props[--i];event[prop]=event.originalEvent[prop];}} +this.element.trigger(event,data);return!($.isFunction(callback)&&callback.call(this.element[0],event,data)===false||event.isDefaultPrevented());}};$.widget.defaults={disabled:false};$.ui.mouse={_mouseInit:function(){var self=this;this.element.bind('mousedown.'+this.widgetName,function(event){return self._mouseDown(event);}).bind('click.'+this.widgetName,function(event){if(self._preventClickEvent){self._preventClickEvent=false;event.stopImmediatePropagation();return false;}});if($.browser.msie){this._mouseUnselectable=this.element.attr('unselectable');this.element.attr('unselectable','on');} +this.started=false;},_mouseDestroy:function(){this.element.unbind('.'+this.widgetName);($.browser.msie&&this.element.attr('unselectable',this._mouseUnselectable));},_mouseDown:function(event){event.originalEvent=event.originalEvent||{};if(event.originalEvent.mouseHandled){return;} +(this._mouseStarted&&this._mouseUp(event));this._mouseDownEvent=event;var self=this,btnIsLeft=(event.which==1),elIsCancel=(typeof this.options.cancel=="string"?$(event.target).parents().add(event.target).filter(this.options.cancel).length:false);if(!btnIsLeft||elIsCancel||!this._mouseCapture(event)){return true;} +this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){self.mouseDelayMet=true;},this.options.delay);} +if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){this._mouseStarted=(this._mouseStart(event)!==false);if(!this._mouseStarted){event.preventDefault();return true;}} +this._mouseMoveDelegate=function(event){return self._mouseMove(event);};this._mouseUpDelegate=function(event){return self._mouseUp(event);};$(document).bind('mousemove.'+this.widgetName,this._mouseMoveDelegate).bind('mouseup.'+this.widgetName,this._mouseUpDelegate);($.browser.safari||event.preventDefault());event.originalEvent.mouseHandled=true;return true;},_mouseMove:function(event){if($.browser.msie&&!event.button){return this._mouseUp(event);} +if(this._mouseStarted){this._mouseDrag(event);return event.preventDefault();} +if(this._mouseDistanceMet(event)&&this._mouseDelayMet(event)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,event)!==false);(this._mouseStarted?this._mouseDrag(event):this._mouseUp(event));} +return!this._mouseStarted;},_mouseUp:function(event){$(document).unbind('mousemove.'+this.widgetName,this._mouseMoveDelegate).unbind('mouseup.'+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=(event.target==this._mouseDownEvent.target);this._mouseStop(event);} +return false;},_mouseDistanceMet:function(event){return(Math.max(Math.abs(this._mouseDownEvent.pageX-event.pageX),Math.abs(this._mouseDownEvent.pageY-event.pageY))>=this.options.distance);},_mouseDelayMet:function(event){return this.mouseDelayMet;},_mouseStart:function(event){},_mouseDrag:function(event){},_mouseStop:function(event){},_mouseCapture:function(event){return true;}};$.ui.mouse.defaults={cancel:null,distance:1,delay:0};})(jQuery);(function($){$.widget("ui.draggable",$.extend({},$.ui.mouse,{_init:function(){if(this.options.helper=='original'&&!(/^(?:r|a|f)/).test(this.element.css("position"))) +this.element[0].style.position='relative';(this.options.addClasses&&this.element.addClass("ui-draggable"));(this.options.disabled&&this.element.addClass("ui-draggable-disabled"));this._mouseInit();},destroy:function(){if(!this.element.data('draggable'))return;this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable" ++" ui-draggable-dragging" ++" ui-draggable-disabled");this._mouseDestroy();},_mouseCapture:function(event){var o=this.options;if(this.helper||o.disabled||$(event.target).is('.ui-resizable-handle')) +return false;this.handle=this._getHandle(event);if(!this.handle) +return false;return true;},_mouseStart:function(event){var o=this.options;this.helper=this._createHelper(event);this._cacheHelperProportions();if($.ui.ddmanager) +$.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};$.extend(this.offset,{click:{left:event.pageX-this.offset.left,top:event.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(event);this.originalPageX=event.pageX;this.originalPageY=event.pageY;if(o.cursorAt) +this._adjustOffsetFromHelper(o.cursorAt);if(o.containment) +this._setContainment();this._trigger("start",event);this._cacheHelperProportions();if($.ui.ddmanager&&!o.dropBehaviour) +$.ui.ddmanager.prepareOffsets(this,event);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(event,true);return true;},_mouseDrag:function(event,noPropagation){this.position=this._generatePosition(event);this.positionAbs=this._convertPositionTo("absolute");if(!noPropagation){var ui=this._uiHash();this._trigger('drag',event,ui);this.position=ui.position;} +if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+'px';if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+'px';if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);return false;},_mouseStop:function(event){var dropped=false;if($.ui.ddmanager&&!this.options.dropBehaviour) +dropped=$.ui.ddmanager.drop(this,event);if(this.dropped){dropped=this.dropped;this.dropped=false;} +if((this.options.revert=="invalid"&&!dropped)||(this.options.revert=="valid"&&dropped)||this.options.revert===true||($.isFunction(this.options.revert)&&this.options.revert.call(this.element,dropped))){var self=this;$(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){self._trigger("stop",event);self._clear();});}else{this._trigger("stop",event);this._clear();} +return false;},_getHandle:function(event){var handle=!this.options.handle||!$(this.options.handle,this.element).length?true:false;$(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==event.target)handle=true;});return handle;},_createHelper:function(event){var o=this.options;var helper=$.isFunction(o.helper)?$(o.helper.apply(this.element[0],[event])):(o.helper=='clone'?this.element.clone():this.element);if(!helper.parents('body').length) +helper.appendTo((o.appendTo=='parent'?this.element[0].parentNode:o.appendTo));if(helper[0]!=this.element[0]&&!(/(fixed|absolute)/).test(helper.css("position"))) +helper.css("position","absolute");return helper;},_adjustOffsetFromHelper:function(obj){if(obj.left!=undefined)this.offset.click.left=obj.left+this.margins.left;if(obj.right!=undefined)this.offset.click.left=this.helperProportions.width-obj.right+this.margins.left;if(obj.top!=undefined)this.offset.click.top=obj.top+this.margins.top;if(obj.bottom!=undefined)this.offset.click.top=this.helperProportions.height-obj.bottom+this.margins.top;},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var po=this.offsetParent.offset();if(this.cssPosition=='absolute'&&this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0])){po.left+=this.scrollParent.scrollLeft();po.top+=this.scrollParent.scrollTop();} +if((this.offsetParent[0]==document.body)||(this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=='html'&&$.browser.msie)) +po={top:0,left:0};return{top:po.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:po.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)};},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var p=this.element.position();return{top:p.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:p.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()};}else{return{top:0,left:0};}},_cacheMargins:function(){this.margins={left:(parseInt(this.element.css("marginLeft"),10)||0),top:(parseInt(this.element.css("marginTop"),10)||0)};},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()};},_setContainment:function(){var o=this.options;if(o.containment=='parent')o.containment=this.helper[0].parentNode;if(o.containment=='document'||o.containment=='window')this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,$(o.containment=='document'?document:window).width()-this.helperProportions.width-this.margins.left,($(o.containment=='document'?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!(/^(document|window|parent)$/).test(o.containment)&&o.containment.constructor!=Array){var ce=$(o.containment)[0];if(!ce)return;var co=$(o.containment).offset();var over=($(ce).css("overflow")!='hidden');this.containment=[co.left+(parseInt($(ce).css("borderLeftWidth"),10)||0)+(parseInt($(ce).css("paddingLeft"),10)||0)-this.margins.left,co.top+(parseInt($(ce).css("borderTopWidth"),10)||0)+(parseInt($(ce).css("paddingTop"),10)||0)-this.margins.top,co.left+(over?Math.max(ce.scrollWidth,ce.offsetWidth):ce.offsetWidth)-(parseInt($(ce).css("borderLeftWidth"),10)||0)-(parseInt($(ce).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,co.top+(over?Math.max(ce.scrollHeight,ce.offsetHeight):ce.offsetHeight)-(parseInt($(ce).css("borderTopWidth"),10)||0)-(parseInt($(ce).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top];}else if(o.containment.constructor==Array){this.containment=o.containment;}},_convertPositionTo:function(d,pos){if(!pos)pos=this.position;var mod=d=="absolute"?1:-1;var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);return{top:(pos.top ++this.offset.relative.top*mod ++this.offset.parent.top*mod +-($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollTop():(scrollIsRootNode?0:scroll.scrollTop()))*mod)),left:(pos.left ++this.offset.relative.left*mod ++this.offset.parent.left*mod +-($.browser.safari&&this.cssPosition=='fixed'?0:(this.cssPosition=='fixed'?-this.scrollParent.scrollLeft():scrollIsRootNode?0:scroll.scrollLeft())*mod))};},_generatePosition:function(event){var o=this.options,scroll=this.cssPosition=='absolute'&&!(this.scrollParent[0]!=document&&$.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,scrollIsRootNode=(/(html|body)/i).test(scroll[0].tagName);if(this.cssPosition=='relative'&&!(this.scrollParent[0]!=document&&this.scrollParent[0]!=this.offsetParent[0])){this.offset.relative=this._getRelativeOffset();} +var pageX=event.pageX;var pageY=event.pageY;if(this.originalPosition){if(this.containment){if(event.pageX-this.offset.click.leftthis.containment[2])pageX=this.containment[2]+this.offset.click.left;if(event.pageY-this.offset.click.top>this.containment[3])pageY=this.containment[3]+this.offset.click.top;} +if(o.grid){var top=this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1];pageY=this.containment?(!(top-this.offset.click.topthis.containment[3])?top:(!(top-this.offset.click.topthis.containment[2])?left:(!(left-this.offset.click.left').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1000}).css($(this).offset()).appendTo("body");});},stop:function(event,ui){$("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this);});}});$.ui.plugin.add("draggable","opacity",{start:function(event,ui){var t=$(ui.helper),o=$(this).data('draggable').options;if(t.css("opacity"))o._opacity=t.css("opacity");t.css('opacity',o.opacity);},stop:function(event,ui){var o=$(this).data('draggable').options;if(o._opacity)$(ui.helper).css('opacity',o._opacity);}});$.ui.plugin.add("draggable","scroll",{start:function(event,ui){var i=$(this).data("draggable");if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML')i.overflowOffset=i.scrollParent.offset();},drag:function(event,ui){var i=$(this).data("draggable"),o=i.options,scrolled=false;if(i.scrollParent[0]!=document&&i.scrollParent[0].tagName!='HTML'){if(!o.axis||o.axis!='x'){if((i.overflowOffset.top+i.scrollParent[0].offsetHeight)-event.pageY=0;i--){var l=inst.snapElements[i].left,r=l+inst.snapElements[i].width,t=inst.snapElements[i].top,b=t+inst.snapElements[i].height;if(!((l-d=0;i--) +this.items[i].item.removeData("sortable-item");},_mouseCapture:function(event,overrideHandle){if(this.reverting){return false;} +if(this.options.disabled||this.options.type=='static')return false;this._refreshItems(event);var currentItem=null,self=this,nodes=$(event.target).parents().each(function(){if($.data(this,'sortable-item')==self){currentItem=$(this);return false;}});if($.data(event.target,'sortable-item')==self)currentItem=$(event.target);if(!currentItem)return false;if(this.options.handle&&!overrideHandle){var validHandle=false;$(this.options.handle,currentItem).find("*").andSelf().each(function(){if(this==event.target)validHandle=true;});if(!validHandle)return false;} +this.currentItem=currentItem;this._removeCurrentsFromItems();return true;},_mouseStart:function(event,overrideHandle,noActivation){var o=this.options,self=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(event);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");$.extend(this.offset,{click:{left:event.pageX-this.offset.left,top:event.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(event);this.originalPageX=event.pageX;this.originalPageY=event.pageY;if(o.cursorAt) +this._adjustOffsetFromHelper(o.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};if(this.helper[0]!=this.currentItem[0]){this.currentItem.hide();} +this._createPlaceholder();if(o.containment) +this._setContainment();if(o.cursor){if($('body').css("cursor"))this._storedCursor=$('body').css("cursor");$('body').css("cursor",o.cursor);} +if(o.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",o.opacity);} +if(o.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",o.zIndex);} +if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML') +this.overflowOffset=this.scrollParent.offset();this._trigger("start",event,this._uiHash());if(!this._preserveHelperProportions) +this._cacheHelperProportions();if(!noActivation){for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._trigger("activate",event,self._uiHash(this));}} +if($.ui.ddmanager) +$.ui.ddmanager.current=this;if($.ui.ddmanager&&!o.dropBehaviour) +$.ui.ddmanager.prepareOffsets(this,event);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(event);return true;},_mouseDrag:function(event){this.position=this._generatePosition(event);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs){this.lastPositionAbs=this.positionAbs;} +if(this.options.scroll){var o=this.options,scrolled=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!='HTML'){if((this.overflowOffset.top+this.scrollParent[0].offsetHeight)-event.pageY=0;i--){var item=this.items[i],itemElement=item.item[0],intersection=this._intersectsWithPointer(item);if(!intersection)continue;if(itemElement!=this.currentItem[0]&&this.placeholder[intersection==1?"next":"prev"]()[0]!=itemElement&&!$.ui.contains(this.placeholder[0],itemElement)&&(this.options.type=='semi-dynamic'?!$.ui.contains(this.element[0],itemElement):true)){this.direction=intersection==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(item)){this._rearrange(event,item);}else{break;} +this._trigger("change",event,this._uiHash());break;}} +this._contactContainers(event);if($.ui.ddmanager)$.ui.ddmanager.drag(this,event);this._trigger('sort',event,this._uiHash());this.lastPositionAbs=this.positionAbs;return false;},_mouseStop:function(event,noPropagation){if(!event)return;if($.ui.ddmanager&&!this.options.dropBehaviour) +$.ui.ddmanager.drop(this,event);if(this.options.revert){var self=this;var cur=self.placeholder.offset();self.reverting=true;$(this.helper).animate({left:cur.left-this.offset.parent.left-self.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:cur.top-this.offset.parent.top-self.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){self._clear(event);});}else{this._clear(event,noPropagation);} +return false;},cancel:function(){var self=this;if(this.dragging){this._mouseUp();if(this.options.helper=="original") +this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper");else +this.currentItem.show();for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._trigger("deactivate",null,self._uiHash(this));if(this.containers[i].containerCache.over){this.containers[i]._trigger("out",null,self._uiHash(this));this.containers[i].containerCache.over=0;}}} +if(this.placeholder[0].parentNode)this.placeholder[0].parentNode.removeChild(this.placeholder[0]);if(this.options.helper!="original"&&this.helper&&this.helper[0].parentNode)this.helper.remove();$.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});if(this.domPosition.prev){$(this.domPosition.prev).after(this.currentItem);}else{$(this.domPosition.parent).prepend(this.currentItem);} +return true;},serialize:function(o){var items=this._getItemsAsjQuery(o&&o.connected);var str=[];o=o||{};$(items).each(function(){var res=($(o.item||this).attr(o.attribute||'id')||'').match(o.expression||(/(.+)[-=_](.+)/));if(res)str.push((o.key||res[1]+'[]')+'='+(o.key&&o.expression?res[1]:res[2]));});return str.join('&');},toArray:function(o){var items=this._getItemsAsjQuery(o&&o.connected);var ret=[];o=o||{};items.each(function(){ret.push($(o.item||this).attr(o.attribute||'id')||'');});return ret;},_intersectsWith:function(item){var x1=this.positionAbs.left,x2=x1+this.helperProportions.width,y1=this.positionAbs.top,y2=y1+this.helperProportions.height;var l=item.left,r=l+item.width,t=item.top,b=t+item.height;var dyClick=this.offset.click.top,dxClick=this.offset.click.left;var isOverElement=(y1+dyClick)>t&&(y1+dyClick)l&&(x1+dxClick)item[this.floating?'width':'height'])){return isOverElement;}else{return(l0?"down":"up");},_getDragHorizontalDirection:function(){var delta=this.positionAbs.left-this.lastPositionAbs.left;return delta!=0&&(delta>0?"right":"left");},refresh:function(event){this._refreshItems(event);this.refreshPositions();},_connectWith:function(){var options=this.options;return options.connectWith.constructor==String?[options.connectWith]:options.connectWith;},_getItemsAsjQuery:function(connected){var self=this;var items=[];var queries=[];var connectWith=this._connectWith();if(connectWith&&connected){for(var i=connectWith.length-1;i>=0;i--){var cur=$(connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element):$(inst.options.items,inst.element).not(".ui-sortable-helper"),inst]);}};};} +queries.push([$.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):$(this.options.items,this.element).not(".ui-sortable-helper"),this]);for(var i=queries.length-1;i>=0;i--){queries[i][0].each(function(){items.push(this);});};return $(items);},_removeCurrentsFromItems:function(){var list=this.currentItem.find(":data(sortable-item)");for(var i=0;i=0;i--){var cur=$(connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element[0],event,{item:this.currentItem}):$(inst.options.items,inst.element),inst]);this.containers.push(inst);}};};} +for(var i=queries.length-1;i>=0;i--){var targetData=queries[i][1];var _queries=queries[i][0];for(var j=0,queriesLength=_queries.length;j=0;i--){var item=this.items[i];if(item.instance!=this.currentContainer&&this.currentContainer&&item.item[0]!=this.currentItem[0]) +continue;var t=this.options.toleranceElement?$(this.options.toleranceElement,item.item):item.item;if(!fast){item.width=t.outerWidth();item.height=t.outerHeight();} +var p=t.offset();item.left=p.left;item.top=p.top;};if(this.options.custom&&this.options.custom.refreshContainers){this.options.custom.refreshContainers.call(this);}else{for(var i=this.containers.length-1;i>=0;i--){var p=this.containers[i].element.offset();this.containers[i].containerCache.left=p.left;this.containers[i].containerCache.top=p.top;this.containers[i].containerCache.width=this.containers[i].element.outerWidth();this.containers[i].containerCache.height=this.containers[i].element.outerHeight();};}},_createPlaceholder:function(that){var self=that||this,o=self.options;if(!o.placeholder||o.placeholder.constructor==String){var className=o.placeholder;o.placeholder={element:function(){var el=$(document.createElement(self.currentItem[0].nodeName)).addClass(className||self.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!className) +el.style.visibility="hidden";return el;},update:function(container,p){if(className&&!o.forcePlaceholderSize)return;if(!p.height()){p.height(self.currentItem.innerHeight()-parseInt(self.currentItem.css('paddingTop')||0,10)-parseInt(self.currentItem.css('paddingBottom')||0,10));};if(!p.width()){p.width(self.currentItem.innerWidth()-parseInt(self.currentItem.css('paddingLeft')||0,10)-parseInt(self.currentItem.css('paddingRight')||0,10));};}};} +self.placeholder=$(o.placeholder.element.call(self.element,self.currentItem));self.currentItem.after(self.placeholder);o.placeholder.update(self,self.placeholder);},_contactContainers:function(event){for(var i=this.containers.length-1;i>=0;i--){if(this._intersectsWith(this.containers[i].containerCache)){if(!this.containers[i].containerCache.over){if(this.currentContainer!=this.containers[i]){var dist=10000;var itemWithLeastDistance=null;var base=this.positionAbs[this.containers[i].floating?'left':'top'];for(var j=this.items.length-1;j>=0;j--){if(!$.ui.contains(this.containers[i].element[0],this.items[j].item[0]))continue;var cur=this.items[j][this.containers[i].floating?'left':'top'];if(Math.abs(cur-base)this.containment[2])pageX=this.containment[2]+this.offset.click.left;if(event.pageY-this.offset.click.top>this.containment[3])pageY=this.containment[3]+this.offset.click.top;} +if(o.grid){var top=this.originalPageY+Math.round((pageY-this.originalPageY)/o.grid[1])*o.grid[1];pageY=this.containment?(!(top-this.offset.click.topthis.containment[3])?top:(!(top-this.offset.click.topthis.containment[2])?left:(!(left-this.offset.click.left=0;i--){if($.ui.contains(this.containers[i].element[0],this.currentItem[0])&&!noPropagation){delayedTriggers.push((function(c){return function(event){c._trigger("receive",event,this._uiHash(this));};}).call(this,this.containers[i]));delayedTriggers.push((function(c){return function(event){c._trigger("update",event,this._uiHash(this));};}).call(this,this.containers[i]));}};};for(var i=this.containers.length-1;i>=0;i--){if(!noPropagation)delayedTriggers.push((function(c){return function(event){c._trigger("deactivate",event,this._uiHash(this));};}).call(this,this.containers[i]));if(this.containers[i].containerCache.over){delayedTriggers.push((function(c){return function(event){c._trigger("out",event,this._uiHash(this));};}).call(this,this.containers[i]));this.containers[i].containerCache.over=0;}} +if(this._storedCursor)$('body').css("cursor",this._storedCursor);if(this._storedOpacity)this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=='auto'?'':this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!noPropagation){this._trigger("beforeStop",event,this._uiHash());for(var i=0;i *',opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1000}});})(jQuery);TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);$(".swfPanel").css('height',mh-10);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-a9c9c5.js b/js/merged-a9c9c5.js new file mode 100644 index 000000000..d55887d91 --- /dev/null +++ b/js/merged-a9c9c5.js @@ -0,0 +1,554 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.makeArray(selector));},selector:"",jquery:"1.3.1",size:function(){return this.length;},get:function(num){return num===undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,find:function(selector){if(this.length===1&&!/,/.test(selector)){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)?jQuery.unique(elems):elems,"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!==undefined) +this[expando]=null;});if(events===true) +this.find("*").andSelf().each(function(i){if(this.nodeType==3) +return;var events=jQuery.data(this,"events");for(var type in events) +for(var handler in events[type]) +jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)) +return cur;cur=cur.parentNode;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild,extra=this.length>1?fragment.cloneNode(true):fragment;if(first) +for(var i=0,l=this.length;i0?extra.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);} +if(jQuery(elem).is(":visible")) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]+['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);} +return results;};Sizzle.matches=function(expr,set){return Sizzle(expr,null,null,set);};Sizzle.find=function(expr,context,isXML){var set,match;if(!expr){return[];} +for(var i=0,l=Expr.order.length;i":function(checkSet,part,isXML){if(typeof part==="string"&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]="done"+(done++);return match;},ATTR:function(match){var name=match[1].replace(/\\/g,"");if(Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{CHILD:function(elem,match){var type=match[1],parent=elem.parentNode;var doneName=match[0];if(parent&&(!parent[doneName]||!elem.nodeIndex)){var count=1;for(var node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType==1){node.nodeIndex=count++;}} +parent[doneName]=count-1;} +if(type=="first"){return elem.nodeIndex==1;}else if(type=="last"){return elem.nodeIndex==parent[doneName];}else if(type=="only"){return parent[doneName]==1;}else if(type=="nth"){var add=false,first=match[2],last=match[3];if(first==1&&last==0){return true;} +if(first==0){if(elem.nodeIndex==last){add=true;}}else if((elem.nodeIndex-last)%first==0&&(elem.nodeIndex-last)/first>=0){add=true;} +return add;}},PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!match[4]?result:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context){return context.getElementsByClassName(match[1]);};} +function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +this[i].style.display=jQuery.data(this[i],"olddisplay",display);}} +return this;}},hide:function(speed,callback){if(speed){return this.animate(genFx("hide",3),speed,callback);}else{for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)==1){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+ +num(this,"padding"+tl)+ +num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+ +num(this,"border"+tl+"Width")+ +num(this,"border"+br+"Width")+ +(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data)}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize'),});resize();}});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel,});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-ab8f61.js b/js/merged-ab8f61.js new file mode 100644 index 000000000..87a6e5daf --- /dev/null +++ b/js/merged-ab8f61.js @@ -0,0 +1,548 @@ + +(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;} +if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3]) +return jQuery().find(selector);return jQuery(elem);} +selector=[];}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String) +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]) +jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined) +this[expando]=null;});if(events===true) +this.find("*").andSelf().each(function(i){if(this.nodeType==3) +return;var events=jQuery.data(this,"events");for(var type in events) +for(var handler in events[type]) +jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String) +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true));else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse) +elems.reverse();} +var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr")) +obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")) +scripts=scripts.add(elem);else{if(elem.nodeType==1) +scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!="object"&&typeof target!="function") +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);} +if(jQuery(elem).is(":visible")) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari) +return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";} +if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem)) +ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode) +stack.unshift(a);for(;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);} +elem=jQuery.makeArray(div.childNodes);} +if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select"))) +return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;return elem[name];} +if(msie&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);} +return cur;},find:function(t,context){if(typeof t!="string") +return[t];if(context&&context.nodeType!=1&&context.nodeType!=9) +return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++) +for(var c=ret[i].firstChild;c;c=c.nextSibling) +if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName)) +r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass) +tmp.push(r[i]);} +return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}} +if(!m) +break;if(m[1]==":"&&m[2]=="not") +r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".") +r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not) +tmp.push(a);} +r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0) +add=true;if(add^not) +tmp.push(node);} +r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object") +fn=fn[m[2]];if(typeof fn=="string") +fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}} +return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(jQuery.browser.msie&&elem.setInterval) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered) +return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler) +delete events[type][handler.guid];else +for(handler in events[type]) +if(!parts[1]||events[type][handler].type==parts[1]) +delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;} +if(!elem){if(this.global[type]) +jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8) +return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;} +data[0].type=type;if(exclusive) +data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle) +val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +val=false;if(event) +data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined) +val=ret;} +if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;} +return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false) +val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}} +return val;},fix:function(event){if(event[expando]==true) +return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--) +event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault) +originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation) +originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +callback=callback||function(){};var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr){xhr.abort();if(!requestDone) +onreadystatechange("timeout");}},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(filter) +data=filter(data,type);if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery) +jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else +for(var j in a) +if(a[j]&&a[j].constructor==Array) +jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else +s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none") +this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1) +return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden) +return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}} +if(opt.overflow!=null) +this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val)) +e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;} +if(parts[1]) +end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else +e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";} +if(!type||(typeof type=="string"&&!fn)) +return queue(this[0],type);return this.each(function(){if(fn.constructor==Array) +queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1) +fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue) +this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array) +q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));} +return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length) +q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width") +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +this.elem.style.display="none";if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);} +if(done) +this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2) +border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed") +fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;} +while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display"))) +add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible") +border(parent);parent=parent.parentNode;} +if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute")) +add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed) +add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));} +results={top:top,left:left};} +function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));} +function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;} +return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+ +num(this,"padding"+tl)+ +num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+ +num(this,"border"+tl+"Width")+ +num(this,"border"+br+"Width")+ +(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +if($("#pw_"+i+" .c>div").height()+10>mh){$("#pw_"+i+" .c>div").css("overflow",'auto');}else{$("#pw_"+i+" .c>div").css("overflow",'visible');} +$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[@src*="png"]:not([@fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +jQuery.autocomplete=function(input,options){var me=this;var $input=$(input).attr("autocomplete","off");if(options.inputClass){$input.addClass(options.inputClass);} +var results=document.createElement("div");var $results=$(results).hide().addClass(options.resultsClass).css("position","absolute");if(options.width>0){$results.css("width",options.width);} +$("body").append(results);input.autocompleter=me;var timeout=null;var prev="";var active=-1;var cache={};var keyb=false;var hasFocus=false;var lastKeyPressCode=null;var mouseDownOnSelect=false;var hidingResults=false;function flushCache(){cache={};cache.data={};cache.length=0;} +flushCache();if(options.data!=null){var sFirstChar="",stMatchSets={},row=[];if(typeof options.url!="string"){options.cacheLength=1;} +for(var i=0;i0){sFirstChar=row[0].substring(0,1).toLowerCase();if(!stMatchSets[sFirstChar])stMatchSets[sFirstChar]=[];stMatchSets[sFirstChar].push(row);}} +for(var k in stMatchSets){options.cacheLength++;addToCache(k,stMatchSets[k]);}} +$input.keydown(function(e){lastKeyPressCode=e.keyCode;switch(e.keyCode){case 38:e.preventDefault();moveSelect(-1);break;case 40:e.preventDefault();moveSelect(1);break;case 9:case 13:if(selectCurrent()){var i=$input.get(0);$(i).change();$(i).blur();e.preventDefault();} +break;default:active=-1;if(timeout)clearTimeout(timeout);timeout=setTimeout(function(){onChange();},options.delay);break;}}).focus(function(){hasFocus=true;}).blur(function(){hasFocus=false;if(!mouseDownOnSelect){hideResults();}});hideResultsNow();function onChange(){if(lastKeyPressCode==46||(lastKeyPressCode>8&&lastKeyPressCode<32))return $results.hide();var v=$input.val();if(v==prev)return;prev=v;if(v.length>=options.minChars){$input.addClass(options.loadingClass);requestData(v);}else{$input.removeClass(options.loadingClass);$results.hide();}};function moveSelect(step){var lis=$("li",results);if(!lis)return;active+=step;if(active<0){active=0;}else if(active>=lis.size()){active=lis.size()-1;} +lis.removeClass("ac_over");$(lis[active]).addClass("ac_over");};function selectCurrent(){var li=$("li.ac_over",results)[0];if(!li){var $li=$("li",results);if(options.selectOnly){if($li.length==1)li=$li[0];}else if(options.selectFirst){li=$li[0];}} +if(li){selectItem(li);return true;}else{return false;}};function selectItem(li){if(!li){li=document.createElement("li");li.extra=[];li.selectValue="";} +var v=$.trim(li.selectValue?li.selectValue:li.innerHTML);input.lastSelected=v;prev=v;$results.html("");$input.val(v);hideResultsNow();if(options.onItemSelect){setTimeout(function(){options.onItemSelect(li)},1);}};function createSelection(start,end){var field=$input.get(0);if(field.createTextRange){var selRange=field.createTextRange();selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}else if(field.setSelectionRange){field.setSelectionRange(start,end);}else{if(field.selectionStart){field.selectionStart=start;field.selectionEnd=end;}} +field.focus();};function autoFill(sValue){if(lastKeyPressCode!=8){$input.val($input.val()+sValue.substring(prev.length));createSelection(prev.length,sValue.length);}};function showResults(){var pos=$(input).offset();var iWidth=(options.width>0)?options.width:$input.width();$results.css({width:parseInt(iWidth)+"px",top:(pos.top+$(input).height())+"px",left:pos.left+"px",zIndex:'10',display:'block'}).show();};function hideResults(){if(timeout)clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);};function hideResultsNow(){if(hidingResults){return;} +hidingResults=true;if(timeout){clearTimeout(timeout);} +var v=$input.removeClass(options.loadingClass).val();if($results.is(":visible")){$results.hide();} +if(options.mustMatch){if(!input.lastSelected||input.lastSelected!=v){selectItem(null);}} +hidingResults=false;};function receiveData(q,data){if(data){$input.removeClass(options.loadingClass);results.innerHTML="";if(!hasFocus||data.length==0)return hideResultsNow();if($.browser.msie){$results.append(document.createElement('iframe'));} +results.appendChild(dataToDom(data));if(options.autoFill&&($input.val().toLowerCase()==q.toLowerCase()))autoFill(data[0][0]);showResults();flushCache();}else{hideResultsNow();}};function parseData(data){if(!data)return null;var parsed=[];var rows=data[1];for(var i=0;i0)&&(options.maxItemsToShow1){extra=[];for(var j=1;j0)){$.getJSON(makeUrl(q),function(data){data=parseData(data);addToCache(q,data);receiveData(q,data);});}else{$input.removeClass(options.loadingClass);}};function makeUrl(q){var sep=options.url.indexOf('?')==-1?'?':'&';var url=options.url+sep+"q="+encodeURI(q);for(var i in options.extraParams){url+="&"+i+"="+encodeURI(options.extraParams[i]);} +return url;};function loadFromCache(q){if(!q)return null;if(cache.data[q])return cache.data[q];if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var qs=q.substr(0,i);var c=cache.data[qs];if(c){var csub=[];for(var j=0;j0)){$.get(makeUrl(q),function(data){data=parseData(data) +addToCache(q,data);findValueCallback(q,data);});}else{findValueCallback(q,null);}} +function findValueCallback(q,data){if(data)$input.removeClass(options.loadingClass);var num=(data)?data.length:0;var li=null;for(var i=0;i1){extra=[];for(var j=1;joptions.cacheLength){flushCache();cache.length++;}else if(!cache[q]){cache.length++;} +cache.data[q]=data;};function findPos(obj){var curleft=obj.offsetLeft||0;var curtop=obj.offsetTop||0;while(obj=obj.offsetParent){curleft+=obj.offsetLeft +curtop+=obj.offsetTop} +return{x:curleft,y:curtop};}} +jQuery.fn.autocomplete=function(url,options,data){options=options||{};options.url=url;options.data=((typeof data=="object")&&(data.constructor==Array))?data:null;options.inputClass=options.inputClass||"ac_input";options.resultsClass=options.resultsClass||"ac_results";options.lineSeparator=options.lineSeparator||"\n";options.cellSeparator=options.cellSeparator||"|";options.minChars=options.minChars||1;options.delay=options.delay||400;options.matchCase=options.matchCase||0;options.matchSubset=options.matchSubset||1;options.matchContains=options.matchContains||0;options.cacheLength=options.cacheLength||1;options.mustMatch=options.mustMatch||0;options.extraParams=options.extraParams||{};options.loadingClass=options.loadingClass||"ac_loading";options.selectFirst=options.selectFirst||false;options.selectOnly=options.selectOnly||false;options.maxItemsToShow=options.maxItemsToShow||-1;options.autoFill=options.autoFill||false;options.width=parseInt(options.width,10)||0;this.each(function(){var input=this;new jQuery.autocomplete(input,options);});return this;} +jQuery.fn.autocompleteArray=function(data,options){return this.autocomplete(null,options,data);} +jQuery.fn.indexOf=function(e){for(var i=0;i=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data)}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize'),});resize();}});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel,});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-b1daaf.js b/js/merged-b1daaf.js new file mode 100644 index 000000000..dfadc1e12 --- /dev/null +++ b/js/merged-b1daaf.js @@ -0,0 +1,571 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_truepopups();';function load_truepopups(){$(".truePopup").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +$(this).attr('rel',$(this).attr('rel').replace(/screen.height/,screen.height));$(this).attr('rel',$(this).attr('rel').replace(/screen.width/,screen.width));window.open($(this).attr('href'),n,$(this).attr('rel'));return false;});$(".popupFS").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +window.open($(this).attr('href'),n,'width='+screen.width+',height='+screen.height+',resizable=yes');return false;});$(".popupA4").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +var h=screen.height;var w=h/1.5;window.open($(this).attr('href'),n,'width='+w+',height='+h+',resizable=yes');return false;});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-d07698.js b/js/merged-d07698.js new file mode 100644 index 000000000..15e7bdaef --- /dev/null +++ b/js/merged-d07698.js @@ -0,0 +1,573 @@ + +(function(){var +window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;} +if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3]) +return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;} +return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find") +ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name) +ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string") +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode) +wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);} +return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;} +return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else +return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName) +return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}} +i++;});} +return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;} +cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string") +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option')) +return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first) +for(var i=0,l=this.length;i1||i>0?fragment.cloneNode(true):fragment);if(scripts) +jQuery.each(scripts,evalScript);} +return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!=="object"&&!jQuery.isFunction(target)) +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border") +return;jQuery.each(which,function(){if(!extra) +val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin") +val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else +val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});} +if(elem.offsetWidth!==0) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle) +ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="") +ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}} +return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined") +context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match) +return[context.createElement(match[1])];} +var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number") +elem+='';if(!elem) +return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||!jQuery.support.htmlSerialize&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);} +if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);} +if(elem.nodeType) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1) +ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}} +return scripts;} +return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;} +return elem[name];} +if(!jQuery.support.style&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);} +return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1) +this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean") +state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode) +this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;} +var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id) +id=elem[expando]=++uuid;if(name&&!jQuery.cache[id]) +jQuery.cache[id]={};if(data!==undefined) +jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id]) +break;if(!name) +jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute) +elem.removeAttribute(expando);} +delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data)) +q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data) +q.push(data);} +return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx") +fn=queue[0];if(fn!==undefined) +fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";} +if(data===undefined) +return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1) +queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9) +return[];if(!selector||typeof selector!=="string"){return results;} +var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}} +if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]) +selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;} +while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();} +if(pop==null){pop=context;} +Expr.relative[cur](checkSet,pop,isXML(context));}} +if(!checkSet){checkSet=set;} +if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);} +if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);} +if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i=0)){if(!inplace) +result.push(elem);}else if(inplace){curLoop[i]=false;}}} +return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){} +return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;} +match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];} +if(match[2]==="~="){match[4]=" "+match[4]+" ";} +return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);} +return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;} +return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return imatch[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);} +var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;} +return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};} +root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}} +results=tmp;} +return results;};} +div.innerHTML="";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="

";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;} +Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}} +return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="
";if(div.getElementsByClassName("e").length===0) +return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1) +return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i0){match=elem;break;}} +elem=elem[dir];} +checkSet[i]=match;}}} +var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");} +selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";} +return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(elem.setInterval&&elem!=window) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler) +delete events[type][handler.guid];else +for(var handle in events[type]) +if(namespace.test(events[type][handle].type)) +delete events[type][handle];if(jQuery.event.specialAll[type]) +jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;} +if(!elem){event.stopPropagation();if(this.global[type]) +jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type]) +jQuery.event.trigger(event,data,this.handle.elem);});} +if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);} +event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle) +handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent) +jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}} +if(event.isImmediatePropagationStopped()) +break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando]) +return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];} +if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type)) +remove++;});if(remove<1) +jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault) +return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else +this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;} +function returnTrue(){return true;} +jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.preventDefault) +e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e) +return;if(e.stopPropagation) +e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this) +try{parent=parent.parentNode;} +catch(e){parent=this;} +if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);if(callback) +self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=s.xhr();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(isTimeout) +xhr.abort();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr&&!requestDone) +onreadystatechange("timeout");},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){} +return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(s&&s.dataFilter) +data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=window["eval"]("("+data+")");} +return data;},param:function(a){var s=[];function add(key,value){s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery) +jQuery.each(a,function(){add(this.name,this.value);});else +for(var j in a) +if(jQuery.isArray(a[j])) +jQuery.each(a[j],function(){add(j,this);});else +add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;} +jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i").appendTo("body");display=elem.css("display");if(display==="none") +display="block";elem.remove();elemdisplay[tagName]=display;} +jQuery.data(this[i],"olddisplay",display);}} +for(var i=0,l=this.length;i=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style) +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +jQuery(this.elem).hide();if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);} +return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null) +fx.elem.style[fx.prop]=fx.now+fx.unit;else +fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"]) +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else +jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName))) +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;} +if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible") +top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;} +if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static") +top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed") +top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='
';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset) +top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);if(GOTOAFTERSUBMIT!=''){window.location=GOTOAFTERSUBMIT;GOTOAFTERSUBMIT='';}}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +$("#pw_"+i+" .c>div").css("overflow-y",'auto');$("#pw_"+i+" .c>div").css("overflow-x",'visible');$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[src*="png"]:not([fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_emptyfield();';function load_emptyfield(){$("input.empty_field,input.empty-field").each(function(){if($(this).attr('orig')){return;} +$(this).attr('orig',$(this).attr('value'));});$("input.empty_field,input.empty-field").click(function(){if($(this).val()==$(this).attr('orig')){$(this).val('');}});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_truepopups();';function load_truepopups(){$(".truePopup").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +$(this).attr('rel',$(this).attr('rel').replace(/screen.height/,screen.height));$(this).attr('rel',$(this).attr('rel').replace(/screen.width/,screen.width));window.open($(this).attr('href'),n,$(this).attr('rel'));return false;});$(".popupFS").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +window.open($(this).attr('href'),n,'width='+screen.width+',height='+screen.height+',resizable=yes');return false;});$(".popupA4").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +var h=screen.height;var w=h/1.5;window.open($(this).attr('href'),n,'width='+w+',height='+h+',resizable=yes');return false;});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1&&$("#dash").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data);}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize')});resize();}});} +if($("#devisLignes").length>=1){$("#devisLignes").sortable('destroy');$("#devisLignes").sortable({opacity:0.6,axis:"y"});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);$(".swfPanel").css('height',mh-10);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} +function refreshFiles(){$.ajax({url:SITE_PATH+'ajax/refreshFichiers',success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-f0580e.js b/js/merged-f0580e.js new file mode 100644 index 000000000..90e218274 --- /dev/null +++ b/js/merged-f0580e.js @@ -0,0 +1,519 @@ + +(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;} +if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3]) +return jQuery().find(selector);return jQuery(elem);} +selector=[];}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String) +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]) +jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined) +this[expando]=null;});if(events===true) +this.find("*").andSelf().each(function(i){if(this.nodeType==3) +return;var events=jQuery.data(this,"events");for(var type in events) +for(var handler in events[type]) +jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String) +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true));else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse) +elems.reverse();} +var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr")) +obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")) +scripts=scripts.add(elem);else{if(elem.nodeType==1) +scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!="object"&&typeof target!="function") +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);} +if(jQuery(elem).is(":visible")) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari) +return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";} +if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem)) +ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode) +stack.unshift(a);for(;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);} +elem=jQuery.makeArray(div.childNodes);} +if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select"))) +return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;return elem[name];} +if(msie&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);} +return cur;},find:function(t,context){if(typeof t!="string") +return[t];if(context&&context.nodeType!=1&&context.nodeType!=9) +return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++) +for(var c=ret[i].firstChild;c;c=c.nextSibling) +if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName)) +r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass) +tmp.push(r[i]);} +return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}} +if(!m) +break;if(m[1]==":"&&m[2]=="not") +r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".") +r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not) +tmp.push(a);} +r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0) +add=true;if(add^not) +tmp.push(node);} +r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object") +fn=fn[m[2]];if(typeof fn=="string") +fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}} +return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(jQuery.browser.msie&&elem.setInterval) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered) +return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler) +delete events[type][handler.guid];else +for(handler in events[type]) +if(!parts[1]||events[type][handler].type==parts[1]) +delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;} +if(!elem){if(this.global[type]) +jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8) +return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;} +data[0].type=type;if(exclusive) +data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle) +val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +val=false;if(event) +data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined) +val=ret;} +if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;} +return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false) +val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}} +return val;},fix:function(event){if(event[expando]==true) +return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--) +event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault) +originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation) +originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +callback=callback||function(){};var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr){xhr.abort();if(!requestDone) +onreadystatechange("timeout");}},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(filter) +data=filter(data,type);if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery) +jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else +for(var j in a) +if(a[j]&&a[j].constructor==Array) +jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else +s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none") +this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1) +return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden) +return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}} +if(opt.overflow!=null) +this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val)) +e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;} +if(parts[1]) +end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else +e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";} +if(!type||(typeof type=="string"&&!fn)) +return queue(this[0],type);return this.each(function(){if(fn.constructor==Array) +queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1) +fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue) +this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array) +q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));} +return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length) +q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width") +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +this.elem.style.display="none";if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);} +if(done) +this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2) +border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed") +fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;} +while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display"))) +add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible") +border(parent);parent=parent.parentNode;} +if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute")) +add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed) +add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));} +results={top:top,left:left};} +function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));} +function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;} +return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+ +num(this,"padding"+tl)+ +num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+ +num(this,"border"+tl+"Width")+ +num(this,"border"+br+"Width")+ +(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +if($("#pw_"+i+" .c>div").height()+10>mh){$("#pw_"+i+" .c>div").css("overflow",'auto');}else{$("#pw_"+i+" .c>div").css("overflow",'visible');} +$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[@src*="png"]:not([@fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_emptyfield();';function load_emptyfield(){$("input.empty_field,input.empty-field").each(function(){if($(this).attr('orig')){return;} +$(this).attr('orig',$(this).attr('value'));});$("input.empty_field,input.empty-field").click(function(){if($(this).val()==$(this).attr('orig')){$(this).val('');}});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_truepopups();';function load_truepopups(){$(".truePopup").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +$(this).attr('rel',$(this).attr('rel').replace(/screen.height/,screen.height));$(this).attr('rel',$(this).attr('rel').replace(/screen.width/,screen.width));window.open($(this).attr('href'),n,$(this).attr('rel'));return false;});$(".popupFS").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +window.open($(this).attr('href'),n,'width='+screen.width+',height='+screen.height+',resizable=yes');return false;});$(".popupA4").click(function(){var rev=$(this).attr('rev');if(!rev||rev==''){var n='PopupFS'+randval(1000,9999).toString();}else{n=rev;} +var h=screen.height;var w=h/1.5;window.open($(this).attr('href'),n,'width='+w+',height='+h+',resizable=yes');return false;});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_contextmenu();';function load_contextmenu(){$("*:not(.openContextMenu)").click(function(){$(".contextMenu").hide();});$(".openContextMenu").click(function(e){$(".contextMenu").hide();var rel=$(this).attr('rel');var cm=$("#"+rel).clone(true);var args=$(this).attr('rev').split('§');var h=$(cm).html();var j;var mask;for(var i=0;i=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data)}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize'),});resize();}});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel,});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/js/merged-fe88f4.js b/js/merged-fe88f4.js new file mode 100644 index 000000000..de25baa7f --- /dev/null +++ b/js/merged-fe88f4.js @@ -0,0 +1,511 @@ + +(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;} +if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]) +selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3]) +return jQuery().find(selector);return jQuery(elem);} +selector=[];}}else +return jQuery(context).find(selector);}else if(jQuery.isFunction(selector)) +return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String) +if(value===undefined) +return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;} +return this.each(function(i){for(name in options) +jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0) +value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null) +return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8) +ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]) +jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild) +elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1) +this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1) +this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else +return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined) +this[expando]=null;});if(events===true) +this.find("*").andSelf().each(function(i){if(this.nodeType==3) +return;var events=jQuery.data(this,"events");for(var type in events) +for(var handler in events[type]) +jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String) +if(isSimple.test(selector)) +return this.pushStack(jQuery.multiFilter(selector,this,true));else +selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0) +return null;for(var i=one?index:0,max=one?index+1:options.length;i=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length) +this.selectedIndex=-1;}else +this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length) +data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else +return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse) +elems.reverse();} +var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr")) +obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")) +scripts=scripts.add(elem);else{if(elem.nodeType==1) +scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src) +jQuery.ajax({url:elem.src,async:false,dataType:"script"});else +jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode) +elem.parentNode.removeChild(elem);} +function now(){return+new Date;} +jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;} +if(typeof target!="object"&&typeof target!="function") +target={};if(length==i){target=this;--i;} +for(;i-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];} +callback.call(elem);for(var name in options) +elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);} +if(jQuery(elem).is(":visible")) +getWH();else +jQuery.swap(elem,props,getWH);return Math.max(0,val);} +return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari) +return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";} +if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;} +if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;} +if(name.match(/float/i)) +name=styleFloat;if(!force&&style&&style[name]) +ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i)) +name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem)) +ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode) +stack.unshift(a);for(;i]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("",""]||!tags.indexOf("",""]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"","
"]||!tags.indexOf("",""]||(!tags.indexOf("",""]||!tags.indexOf("",""]||jQuery.browser.msie&&[1,"div
","
"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--) +div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf(""&&tags.indexOf("=0;--j) +if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length) +tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem)) +div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);} +elem=jQuery.makeArray(div.childNodes);} +if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select"))) +return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options) +ret.push(elem);else +ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8) +return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari) +elem.parentNode.selectedIndex;if(name in elem&¬xml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode) +throw"type property can't be changed";elem[name]=value;} +if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name)) +return elem.getAttributeNode(name).nodeValue;return elem[name];} +if(msie&¬xml&&name=="style") +return jQuery.attr(elem.style,"cssText",value);if(set) +elem.setAttribute(name,""+value);var attr=msie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;} +if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+ +(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");} +return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";} +name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set) +elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call) +ret[0]=array;else +while(i) +ret[--i]=array[i];} +return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i*",this).remove();while(this.firstChild) +this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return im[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);} +return cur;},find:function(t,context){if(typeof t!="string") +return[t];if(context&&context.nodeType!=1&&context.nodeType!=9) +return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++) +for(var c=ret[i].firstChild;c;c=c.nextSibling) +if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName)) +r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j=0;if(!not&&pass||not&&!pass) +tmp.push(r[i]);} +return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}} +if(!m) +break;if(m[1]==":"&&m[2]=="not") +r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".") +r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i=0)^not) +tmp.push(a);} +r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i=0) +add=true;if(add^not) +tmp.push(node);} +r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object") +fn=fn[m[2]];if(typeof fn=="string") +fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}} +return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1) +matched.push(cur);cur=cur[dir];} +return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]) +if(cur.nodeType==1&&++num==result) +break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem) +r.push(n);} +return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8) +return;if(jQuery.browser.msie&&elem.setInterval) +elem=window;if(!handler.guid) +handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;} +var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered) +return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener) +elem.addEventListener(type,handle,false);else if(elem.attachEvent) +elem.attachEvent("on"+type,handle);}} +handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8) +return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)==".")) +for(var type in events) +this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;} +jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler) +delete events[type][handler.guid];else +for(handler in events[type]) +if(!parts[1]||events[type][handler].type==parts[1]) +delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener) +elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent) +elem.detachEvent("on"+type,jQuery.data(elem,"handle"));} +ret=null;delete events[type];}}});} +for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;} +if(!elem){if(this.global[type]) +jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8) +return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;} +data[0].type=type;if(exclusive) +data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle) +val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false) +val=false;if(event) +data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined) +val=ret;} +if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}} +this.triggered=false;} +return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false) +val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}} +return val;},fix:function(event){if(event[expando]==true) +return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--) +event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault) +originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation) +originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target) +event.target=event.srcElement||document;if(event.target.nodeType==3) +event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement) +event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);} +if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode)) +event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey) +event.metaKey=event.ctrlKey;if(!event.which&&event.button) +event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i=0){var selector=url.slice(off,url.length);url=url.slice(0,off);} +callback=callback||function(){};var type="GET";if(params) +if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";} +var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified") +self.html(selector?jQuery("
").append(res.responseText.replace(//g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;} +return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};} +return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string") +s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre)) +s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre)) +s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";} +if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data) +s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){} +if(head) +head.removeChild(script);};} +if(s.dataType=="script"&&s.cache==null) +s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");} +if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;} +if(s.global&&!jQuery.active++) +jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset) +script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};} +head.appendChild(script);return undefined;} +var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username) +xhr.open(type,s.url,s.async,s.username,s.password);else +xhr.open(type,s.url,s.async);try{if(s.data) +xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified) +xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){} +if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;} +if(s.global) +jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;} +status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}} +if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){} +if(s.ifModified&&modRes) +jQuery.lastModified[s.url]=modRes;if(!jsonp) +success();}else +jQuery.handleError(s,xhr,status);complete();if(s.async) +xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0) +setTimeout(function(){if(xhr){xhr.abort();if(!requestDone) +onreadystatechange("timeout");}},s.timeout);} +try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);} +if(!s.async) +onreadystatechange();function success(){if(s.success) +s.success(data,status);if(s.global) +jQuery.event.trigger("ajaxSuccess",[xhr,s]);} +function complete(){if(s.complete) +s.complete(xhr,status);if(s.global) +jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active) +jQuery.event.trigger("ajaxStop");} +return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global) +jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){} +return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror") +throw"parsererror";if(filter) +data=filter(data,type);if(type=="script") +jQuery.globalEval(data);if(type=="json") +data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery) +jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else +for(var j in a) +if(a[j]&&a[j].constructor==Array) +jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else +s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none") +this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1) +return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden) +return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}} +if(opt.overflow!=null) +this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val)) +e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;} +if(parts[1]) +end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else +e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";} +if(!type||(typeof type=="string"&&!fn)) +return queue(this[0],type);return this.each(function(){if(fn.constructor==Array) +queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1) +fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue) +this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--) +if(timers[i].elem==this){if(gotoEnd) +timers[i](true);timers.splice(i,1);}});if(!gotoEnd) +this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array) +q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));} +return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length) +q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false) +jQuery(this).dequeue();if(jQuery.isFunction(opt.old)) +opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig) +options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step) +this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width") +this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null) +return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);} +t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;ithis.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim) +if(this.options.curAnim[i]!==true) +done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none") +this.elem.style.display="block";} +if(this.options.hide) +this.elem.style.display="none";if(this.options.hide||this.options.show) +for(var p in this.options.curAnim) +jQuery.attr(this.elem.style,p,this.options.orig[p]);} +if(done) +this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();} +return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2) +border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed") +fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;} +while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display"))) +add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible") +border(parent);parent=parent.parentNode;} +if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute")) +add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed) +add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));} +results={top:top,left:left};} +function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));} +function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;} +return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};} +return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static')) +offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+ +num(this,"padding"+tl)+ +num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+ +num(this,"border"+tl+"Width")+ +num(this,"border"+br+"Width")+ +(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})();(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;} +if(typeof options=='function') +options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;} +var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data) +a.push({name:n,value:options.data[n]});} +if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;} +this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;} +var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;} +else +options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});} +else if(options.success) +callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i');var io=$io[0];if($.browser.msie||$.browser.opera) +io.src='javascript:false;document.write("");';$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}} +setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');$form.attr({target:id,encoding:'multipart/form-data',enctype:'multipart/form-data',method:'POST',action:opts.url});if(opts.timeout) +setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData) +for(var n in options.extraData) +extraInputs.push($('').appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();} +finally{$form.attr('action',a);t?$form.attr('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var operaHack=0;var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if(doc.body==null&&!operaHack&&$.browser.opera){operaHack=1;cbInvoked--;setTimeout(cb,100);return;} +xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;} +else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);} +data=$.httpData(xhr,opts.dataType);} +catch(e){ok=false;$.handleError(opts,xhr,'error',e);} +if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);} +if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);} +else +doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var $form=this.form;$form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){$form.clk_x=e.offsetX;$form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();$form.clk_x=e.pageX-offset.left;$form.clk_y=e.pageY-offset.top;}else{$form.clk_x=e.pageX-this.offsetLeft;$form.clk_y=e.pageY-this.offsetTop;}} +setTimeout(function(){$form.clk=$form.clk_x=$form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i'+$(this).attr('title')+'

');$(this).parents("form").submit();$(this).parents("form").hide();return false;});$("form").submit(function(){$(this).attr('change','0');return true;});$("form.blank").each(function(){$(this).attr('target','_blank');$(this).removeClass('_blank');});$("form").not(".notajax").submit(function(){display_loader();$(this).ajaxSubmit({url:SITE_PATH+'ajax/'+$(this).attr('action'),success:function(data){MyAjax(data);}});return false;});$(".notajax form").unbind();$("form.submitonchange :input").each(function(){$(this).one('change',function(){$(this).parents("form").submit();});});$(":input").change(function(){$(this).parents("form").attr("change",1);});$("a.ajax").click(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>-1){if(!window.confirm(title)){return false;}} +if($(this).hasClass('wait')){wait();} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.dajax").dblclick(function(){var title=$(this).attr('title');var href=$(this).attr('rel');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href,success:function(data){MyAjax(data);}});return false;});$("a.ajaxh").click(function(){var title=$(this).attr('title');var href=$(this).attr('href');if(title!=''&&title!=undefined&&title.search(/\?/)>=0){if(!window.confirm(title)){return false;}} +display_loader();$.ajax({url:href,success:function(data){MyAjax(data);}});return false;});$("a.prompt").click(function(){var href=$(this).attr('rel');var defaut=$(this).attr('rev');var name=window.prompt($(this).attr('title'),defaut);if(name==null||name=='null'||name==''){return false;} +display_loader();$.ajax({url:SITE_PATH+'ajax/'+href+'?var='+name,success:function(data){MyAjax(data);}});return false;});$("a.closePopup").click(function(){closePopup($(this),true);return false;});$("a.closePopupNotConfirm").click(function(){closePopup($(this),false);return false;});$("a.popup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){createPopup(data);}});remove_loader();return false;});$("a.changepopup").click(function(){display_loader();$.ajax({url:SITE_PATH+'ajax/'+$(this).attr('rel'),dataType:'responseText',success:function(data){changepopup(data);load_jquery();}});remove_loader();return false;});$("a.blank").click(function(){$(this).attr('target','_blank');return true;});$("a.nothing").click(function(){return false;});$(".pemail").each(function(){var protected=$(this).text();var adresse=rot13(protected);$(this).text(adresse);$(this).attr('href','mailto:'+adresse);$(this).removeClass('pemail');});var len=TO_LOAD.length;for(var i=0;i0&&$("#jquery_time").text()==''){var E=new Date();var m=(parseInt(E-S)/1000).toString().replace('.',',');$("#jquery_time").text(m);}} +function randval(min,max){var diff=max-min;return Math.round(Math.random()*diff)+diff;} +function rot(t,u,v){return String.fromCharCode(((t-u+v)%(v*2))+u);} +function rot13(s){var b=[],c,i=s.length,a='a'.charCodeAt(),z=a+26,A='A'.charCodeAt(),Z=A+26;while(i--){c=s.charCodeAt(i);if(c>=a&&c=A&&c
');$("#po_"+POPUP_COUNTER).css('opacity',0.65);$("#po_"+POPUP_COUNTER).css('display','block');$("#pw_"+POPUP_COUNTER).html(data);$("#pw_"+POPUP_COUNTER).show();popup_dimensions(POPUP_COUNTER);load_jquery();POPUP_COUNTER+=1;} +function closePopup(object,confirm){if(object==undefined||object==null){var i=$(".popupLayer").length-1;var elements=$(".popupLayer").get();var e=elements[i];var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(e).remove();POPUP_COUNTER-=1;popup_dimensions();}}else{$(object).parents(".popupLayer").each(function(){var changes=false;$(this).find("form").each(function(){if($(this).attr("change")==1){changes=true;}});if(confirm==false||(changes==true&&window.confirm(CONFIRM_CLOSE))||changes==false){$(this).remove();POPUP_COUNTER-=1;popup_dimensions();}});}} +function popup_dimensions(i){if(i==undefined){i=POPUP_COUNTER-1;} +if(i<0){return;} +var margin=30;var mh=$(window).height()-(margin*2);if(!$.browser.msie){$("#pw_"+i).css("opacity",0);} +if($("#pw_"+i+" .c>div").height()+10>mh){$("#pw_"+i+" .c>div").css("overflow",'auto');}else{$("#pw_"+i+" .c>div").css("overflow",'visible');} +$("#pw_"+i+" .c>div").css("max-height",mh);$("#pw_"+i).css("left",($(window).width()-$("#pw_"+i).width())/2);if($("#pw_"+i+" .c>div").attr('top')){$("#pw_"+i).css("top",parseInt($("#pw_"+i+" .c>div").attr('top')));}else{var top=(mh-$("#pw_"+i).height())/2+margin;$("#pw_"+i).css("top",top);} +if(!$.browser.msie){$("#pw_"+i).css("opacity",1);}} +function changepopup(data){var pc=POPUP_COUNTER-1;$("#pw_"+pc).html(data);popup_dimensions(pc);} +function checkUpload(){if($.browser.msie){var iframe=uploadIframe.document;}else{var uploadIframe=document.getElementById('uploadIframe');var iframe=uploadIframe.contentDocument;} +if(iframe.getElementById('status')!=undefined&&iframe.contentDocument.getElementById('status').innerHTML!=undefined){clearInterval(INTERVAL);$.ajax({url:UPDATE,success:function(data){MyAjax(data);}});if(iframe.getElementById('status').innerHTML!='ok'){window.alert(ERREUR_FICHIER+' : \n'+iframe.getElementById('status').innerHTML);} +if(POPUP_COUNTER>0){closePopup(null,false);} +$("#uploadIframe").remove();}} +function isSet(i){return(i==null||i=='null'||i==''||i=='undefined');} +function callAjaxSwf(urlLink){$.ajax({url:urlLink,success:function(data){MyAjax(data);}});} +function swfAjax(data){MyAjax(strToXML(data));} +function MyAjax(data,reload){var error=new Array();var confirmation='';var ok=true;var t=$(data).children('rsp').children().get();for(var i=0;i"+contentconfirm+"

";}else if(name=='error'){var errors=$(e).children().get();for(var j=0;j=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='replace'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='append'){var contents=$(e).children().get();for(var k=0;k=0){popup_dimensions(POPUP_COUNTER-1);}}}else if(name=='param'){var ids=$(e).children().get();for(var p=0;p0){$("#message").html(error.join('
'));}else{$("#message").html('');} +if(confirmation!=''){$("#confirmation").html(confirmation);$("#confirmation").animate({height:26,opacity:1},2000,function(){$("#confirmation").fadeTo(10000,1,function(){$("#confirmation").animate({height:0,opacity:0},2000);$("#confirmation").empty();});});} +if(reload==true||reload==undefined){load_jquery();} +remove_loader();return ok;} +function truePopup(url){var rand=Math.round(Math.random()*200);window.open(url,'Popup'+rand,'width='+window.width+',height='+window.height);} +function _fixPNG(){var png;var images=$('img[@src*="png"]:not([@fixed="fixed"])');images.each(function(){png=$(this).attr('src');$(this).attr('src',IMG_CUBE+'/spacer.gif');$(this).css('filter',"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+png+"')");$(this).attr('fixed','fixed');});} +function __fixPNG(){if($.browser.msie&&parseInt(navigator.userAgent.match(/MSIE (\d+(?:\.\d+)+(?:b\d*)?)/)[1])<=6){_fixPNG();}} +function getWindowHeight(){var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;} +else{if(document.documentElement&&document.documentElement.clientHeight){windowHeight=document.documentElement.clientHeight;} +else{if(document.body&&document.body.clientHeight){windowHeight=document.body.clientHeight;}}} +return windowHeight;} +function getWindowWidth(){var myWidth=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;} +else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;} +else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;} +return myWidth;} +function doNothing(){} +function htmlEditorGetText(id){var text=document.getElementById(id).value;return'

'+text+'

';} +function htmlEditorPutText(id,text){document.getElementById(id).value=text;} +function display_loader(){if(LOADER_AJAX==''){}else{$("body").append('
');}} +function remove_loader(){if(LOADER_AJAX==''){}else{$("#loader").remove();}} +function URLEncode(clearString){var output='';var x=0;clearString=clearString.toString();var regex=/(^[a-zA-Z0-9_.]*)/;while(x1&&match[1]!=''){output+=match[1];x+=match[1].length;}else{if(clearString[x]==' ') +output+='+';else{var charCode=clearString.charCodeAt(x);var hexVal=charCode.toString(16);output+='%'+(hexVal.length<2?'0':'')+hexVal.toUpperCase();} +x++;}} +return output;} +function strToXML(str){var contentType='application/xml';if(typeof(DOMParser)!='undefined'){return(new DOMParser()).parseFromString(str.substr(0,4095),contentType);}else if(typeof(ActiveXObject)!='undefined'){var xmldata=new ActiveXObject('MSXML.DomDocument');xmldata.async=false;xmldata.loadXML(str);return xmldata;}else if(typeof(XMLHttpRequest)!='undefined'){var xmldata=new XMLHttpRequest;if(!contentType){contentType='application/xml';} +xmldata.open('GET','data:'+contentType+';charset=utf-8,'+encodeURIComponent(str),false);if(xmldata.overrideMimeType){xmldata.overrideMimeType(contentType);} +xmldata.send(null);return xmldata.responseXML;}} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_emptyfield();';function load_emptyfield(){$("input.empty_field,input.empty-field").each(function(){if($(this).attr('orig')){return;} +$(this).attr('orig',$(this).attr('value'));});$("input.empty_field,input.empty-field").click(function(){if($(this).val()==$(this).attr('orig')){$(this).val('');}});} +TO_LOAD_INDEX++;TO_LOAD[TO_LOAD_INDEX]='load_extranet();';FIRST_LOAD=true;function load_extranet(){if($("#devisAdresse #client_nom").length){$("#devisAdresse #client_nom").autocomplete(SITE_PATH+'autocomplete/client',{cacheLength:0,maxItemsToShow:15,onFindValue:findClient,onItemSelect:findClient});} +if($("#factureAdresse #projet_nom").length){$("#factureAdresse #projet_nom").autocomplete(SITE_PATH+'autocomplete/projet',{cacheLength:0,maxItemsToShow:15,onFindValue:findProjet,onItemSelect:findProjet});} +if($(".dashboard").length>=1){$("#dash").sortable('destroy');if(FIRST_LOAD){FIRST_LOAD=false;}else{FIRST_LOAD=true;$.ajax({url:SITE_PATH+'ajax/reloadDashboards',success:function(data){MyAjax(data)}});} +$("#dash").sortable({opacity:0.6,axis:"y",handle:".caption",stop:function(e,ui){$.ajax({url:SITE_PATH+'ajax/orderDashboards?'+$("#dash").sortable('serialize'),});resize();}});} +$(".timereport_field").change(function(){var val=parseInt($(this).val());if(isNaN(val)){val=0;} +var f=this;var id=$(this).attr('id');var a=id.split('_');$.ajax({url:SITE_PATH+'ajax/saveTimereport/'+a[1]+'/'+a[2]+'/'+val,success:function(data){FIRST_LOAD=true;MyAjax(data);var td=$(f).parents('td').get(0);if(parseFloat($(f).val())>0){$(td).addClass('filled');}else{$(td).removeClass('filled');}}});});$("#dash .toggle").click(function(){var rel=$(this).attr('rel');var div=$(this).parents('.dashboard').get(0);var liste=$(div).find('.liste');$(liste).slideToggle('fast',function(){resize();});$(this).toggleClass('close');$.ajax({url:SITE_PATH+'ajax/toggleDashboard/'+rel,});return false;});$(".filtre .bt").click(function(){var ul=$(this).parent().parent().children('ul');$(ul).slideToggle('fast');return false;});$(".filtre ul").click(function(e){if(e.target.nodeName=='INPUT'||e.target.nodeName=='LABEL'){return true;} +$(this).slideToggle('fast');});$(".filtre span").click(function(){var ul=$(this).parent().children('ul');$(ul).slideToggle('fast');});$(".filtre input").change(function(){var form=$(this).parents('form').get(0);var uls=$(form).find("ul");var divs=$(form).find(".input");var spans=$(form).find("span");var i,j,k,ul,lis,li,input,label,checked,div,titre,t,t1,allc,inputs;for(i=0;i20){t1=t.substr(0,16)+'...';}else{t1=t;} +$(div).find('span').text(t1);$(div).find('a').attr('title',t);$(div).addClass('active');}} +return true;});$(window).resize(function(){resize();});resize();} +function resize(){var allh=$("#header").height()+$("#footer").height()+$("#bar").height()+$("#main .content").height()+13+30;var h=Math.max($(window).height(),allh);var mh=h-$("#header").height()-$("#footer").height()-$("#bar").height()-30-13;mh=Math.max(mh,450);$("#main").css('height',mh);} +function findClient(li){var client=li.selectValue.split(' - ');if(client.length<=1){return;} +var client_id=parseInt(client[0]);$("#client").val(client_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForDevis/'+client_id,success:function(data){MyAjax(data);}});} +function findProjet(li){var projet=li.selectValue.split(' - ');if(projet.length<=1){return;} +var projet_id=parseInt(projet[0]);$("#projet").val(projet_id);$.ajax({url:SITE_PATH+'ajax/getAdresseForFacture/'+projet_id,success:function(data){MyAjax(data);}});} \ No newline at end of file diff --git a/l10n/en/main.lang.php b/l10n/en/main.lang.php new file mode 100644 index 000000000..5d80db26b --- /dev/null +++ b/l10n/en/main.lang.php @@ -0,0 +1,187 @@ + 'Save', + 'Recevoir mon mot de passe par e-mail' => 'I want to receive my password by e-mail', + 'Extranet Cubedesigners' => 'Cubedesigner\'s Extranet', + 'Récupération de vos identifiants' => 'Recover your login and password', + 'Bonjour,' => 'Hi,', + 'Vous avez demandé la récupération de votre mot de passe sur notre extranet.' => 'You have ask a password recovery on our extranet', + 'Voici toutes les informations vous permettant de vous y connecter à nouveau :' => 'Please see below your login informations', + 'Adresse' => 'Address', + 'Identifiant' => 'Login', + 'Mot de passe' => 'Password', + 'Cordialement,' => 'Greetings,', + 'L\'Equipe Cubedesigners' => 'The Cubedesigner\'s team', + 'Vos identifiants vous ont été envoyé par e-mail' => 'Your login details have beed sended by e-mail', + 'Une erreur s\'est produite lors de l\'envoi de vos identifiants' => 'An error occured during sending login details', + 'Cet e-mail ne correspond à aucun utilisateur du système' => 'This e-mail don\'t exists in our database', + 'Enregistrer mon nouveau mot de passe' => 'Save my new password', + 'Votre mot de passe a été modifié' => 'You password has been changed', + 'Edition d\'un client' => 'Client edition', + 'Edition des notes' => 'Post-it edition', + 'Edition d\'un projet' => 'Project edition', + 'Edition d\'un tâche' => 'Task edition', + 'Edition d\'un tâche sous-traitée' => 'CM Task edition', + 'Informations relatives au paiement de la facture' => 'Payment details', + 'Ajouter un élément au dashboard' => 'Add an item to dashboard', + 'Client' => 'Client', + 'Equipier' => 'Worker', + ' Gérant' => 'Manager', + 'Non défini' => 'Undefined', + 'Gestion de projet' => 'Project management', + 'Design Web' => 'Web design', + 'Design Industriel' => 'Product design', + 'Print' => 'Print', + 'Newsletter' => 'Newsletter', + 'Développement PHP' => 'PHP developpement', + 'Développement Flash' => 'Flash developpement', + 'Fluidbook' => 'Fluidbook', + 'Formation' => 'Training', + 'Administratif' => 'Admin', + 'Divers' => 'Miscellaneous', + 'Intégration HTML' => 'HTML Integration', + 'En cours' => 'Active', + 'Terminé' => 'Finished', + 'Brouillon' => 'Draft', + 'Envoyé' => 'Sended', + 'Validé' => 'Validated', + 'Refusé' => 'Refused', + 'En attente de paiement' => 'Waiting_payment', + 'Payée' => 'Paid', + 'Annulée' => 'Canceled', + 'Devis' => 'Quotations', + 'Factures' => 'Invoices', + 'Dashboard' => 'Dashboard', + 'Projets' => 'Projects', + 'Timereport' => 'Timereport', + 'Clients' => 'Clients', + 'Chiffres' => 'Money', + 'Traduction' => 'Translation', + 'Tous' => 'All', + 'Toutes' => 'All', + 'Facturés' => 'Invoiced', + 'Non facturés' => 'Not invoiced', + 'Bienvenue' => 'Welcome', + 'Mes paramètres' => 'My settings', + 'Se déconnecter' => 'Logout', + 'Rechercher' => 'Search', + 'Identification' => 'Login', + 'Effacer les filtres' => 'Erase filters', + 'Ajouter à mon tableau de bord' => 'Add to my dashboard', + 'E-mail / mot de passe incorrects' => 'Login or password wrong', + 'Veuillez vous identifier' => 'Please login', + 'Votre e-mail ou login' => 'Your e-mail or login', + 'Votre mot de passe' => 'Your password', + 'Mot de passe oublié ? Cliquez ici' => 'Lost your password ? Click here', + 'Entrez votre e-mail' => 'Type your e-mail', + 'Mes informations' => 'My informations', + 'Numéro de client' => 'Client number', + 'Prénom' => 'First name', + 'Nom' => 'Last name', + 'Adresse e-mail' => 'E-mail address', + 'Raison sociale' => 'Business name', + 'Numéro de téléphone' => 'Phone number', + 'Numéro de TVA intracommunautaire' => 'VAT identification number', + 'Si les informations ci-dessus sont incomplètes ou erronées, veuillez nous
en informer en nous écrivant à ' => 'If these informations are incompletes or wrong, please contact us at', + 'Votre mot de passe doit comprendre en 6 et 10 caractères' => 'Your password must have between 6 and 10 characters', + 'Tapez votre mot de passe actuel' => 'Type your password', + 'Tapez votre nouveau mot de passe' => 'Type your new password', + 'Confirmez votre nouveau mot de passe' => 'Please confirm your new password', + 'Ayant un projet' => 'Who have a project', + 'Contact' => 'Contact', + 'Téléphone' => 'Phone', + 'E-mail' => 'E-mail', + 'Chiffre d\'affaire' => 'Revenue', + 'Voir le détail du chiffre d\'affaire' => 'See revenue details', + 'Êtes vous certain de vouloir supprimer ce client ?' => 'Are you sure you want delete this client ?', + 'clients' => 'clients', + 'Prénom du contact' => 'First name of contact', + 'Nom du contact' => 'Last name of contact', + 'Code postal' => 'Zip code', + 'Ville' => 'City', + 'Pays' => 'Country', + 'Langue' => 'Language', + 'Crée par' => 'Created by', + 'Status' => 'Statut', + 'Année' => 'Year', + 'Projet' => 'Project', + 'Chef' => 'Manager', + 'Facturé' => 'Invoiced', + 'Payé' => 'Paid', + 'Budget' => 'Budget', + 'Progression' => 'Progress', + 'Modifier le status du projet' => 'Change project statut', + 'Non' => 'No', + 'Oui' => 'Yes', + 'Partie' => 'Part', + 'Trop' => 'Too much', + 'Créer la facture pour ce projet' => 'Create the invoice of this project', + 'projets' => 'projects', + 'Tâche' => 'Task', + 'Catégorie' => 'Category', + 'Chef de projet' => 'Project Manager', + 'Jours prévus' => 'Planned days', + 'Jours consommés' => 'Consumed days', + 'Êtes vous certain de vouloir supprimer ce projet ?' => 'Are you sure you want delete this project ?', + 'Tâche sous-traitée' => 'CM Task', + 'Êtes vous certain de vouloir supprimer cette tâche ?' => 'Are you sure you want delete this task ?', + 'Numéro de projet' => 'Project number', + 'Nom du projet' => 'Project name', + 'Date de début' => 'Start date', + 'Deadline' => 'Deadline', + 'Date de fin' => 'End date', + 'Numéro de tâche' => 'Task number', + 'Taux journalier' => 'Daily rate', + 'Participants' => 'Workers', + 'Créées par' => 'Created by', + 'Changer le status du devis' => 'Change quotation statut', + 'Valider puis créer le projet correspondant' => 'Valid and create the project', + 'Date' => 'Date', + 'Montant HT' => 'taxless price', + 'd/m/Y' => 'm/d/Y', + 'Editer le devis' => 'Edit quotation', + 'Êtes vous certain de vouloir supprimer ce devis ?' => 'Are you sure you want delete this quotation', + 'Voir le devis' => 'See the quotation', + 'Dupliquer le devis' => 'Duplicate the quotation', + 'devis' => 'quotations', + 'Vous n\'avez pour le moment aucun devis associé à votre compte' => 'You don\'t have any quotation', + 'Entrez le nom du client' => 'Type the client name', + 'De' => 'From', + 'Sujet' => 'Subject', + 'Corps' => 'Message', + 'N° de TVA Intracommunautaire' => 'VAT identification number', + 'Editer les informations de ce client' => 'Edit client informations', + 'A' => 'To', + 'Message' => 'Message', + 'Le devis est sur le point d\'être validé, mais l\'email ne sera pas envoyé. Veuillez confirmer votre choix ?' => 'The quotation will be validated, but no e-mail will be send. Please confirm your choice.', + 'Valider sans envoyer le devis' => 'Valid without sending the quotation', + 'Le devis est sur le point d\'être envoyé. Veuillez confirmer votre choix ?' => 'The quotation will be sended. Please confirm your choice', + 'Valider et envoyer le devis' => 'Valid and send quotation', + 'Changer le status de la facture' => 'Change invoice status', + 'Editer la facture' => 'Edit the invoice', + 'Êtes vous certain de vouloir supprimer cette facture ?' => 'Are you sure you want delete this invoice', + 'Voir la facture' => 'See the invoice', + 'Dupliquer la facture' => 'Duplicate the invoice', + 'factures' => 'invoices', + 'Vous n\'avez pour le moment aucune facture associée à votre compte' => 'You don\'t have any invoice', + 'Date de paiement' => 'Payment date', + 'Informations de paiement' => 'Payment details', + 'Entrez le nom du projet ou du client' => 'Type the project name or client name', + 'La facture est sur le point d\'être validée. Elle ne sera plus éditable. Veuillez confirmer votre choix ?' => 'The invoice will be validated. It will not be editable anymore. Please confirm your choice', + 'Valider la facture' => 'Valid the invoice', + 'Chiffre d\'affaire généré par les projets commencés en' => 'Revenue for projects started in', + 'Chiffre d\'affaire généré par les projets terminés en' => 'Revenue for projects finished in', + 'Chiffre d\'affaire annuel' => 'Annual revenue', + 'Total' => 'Total', + 'Chiffre d\'affaire par catégorie' => 'Revenue by category', + 'Rapport Temps travaillé / Temps payé' => 'Time spended / Time payed rate', + 'Tous les ' => 'All', + 'Afficher' => 'Display', + 'par page' => 'per page', + 'Êtes vous certain de vouloir supprimer cette liste de votre dashboard ?' => 'Are you sure tou want delete this item from your dashboard ?', + 'Traduction de l\'application en anglais' => 'English translation of the application', + 'DEVIS' => 'ESTIMATE', + 'FACTURE' => 'INVOICE', +) + +?> \ No newline at end of file diff --git a/robots.txt b/robots.txt new file mode 100644 index 000000000..d476dd830 --- /dev/null +++ b/robots.txt @@ -0,0 +1,2 @@ +User-Agent: * +Allow: / \ No newline at end of file diff --git a/style/extranet/arrows.png b/style/extranet/arrows.png new file mode 100644 index 000000000..7e457c396 Binary files /dev/null and b/style/extranet/arrows.png differ diff --git a/style/extranet/b-e.png b/style/extranet/b-e.png new file mode 100644 index 000000000..f301f4e3a Binary files /dev/null and b/style/extranet/b-e.png differ diff --git a/style/extranet/b-h.png b/style/extranet/b-h.png new file mode 100644 index 000000000..417b0fce5 Binary files /dev/null and b/style/extranet/b-h.png differ diff --git a/style/extranet/b-n.png b/style/extranet/b-n.png new file mode 100644 index 000000000..e0922e3c9 Binary files /dev/null and b/style/extranet/b-n.png differ diff --git a/style/extranet/b-ne.png b/style/extranet/b-ne.png new file mode 100644 index 000000000..fcabb64ca Binary files /dev/null and b/style/extranet/b-ne.png differ diff --git a/style/extranet/b-nw.png b/style/extranet/b-nw.png new file mode 100644 index 000000000..607df5f4b Binary files /dev/null and b/style/extranet/b-nw.png differ diff --git a/style/extranet/b-s.png b/style/extranet/b-s.png new file mode 100644 index 000000000..c1210d586 Binary files /dev/null and b/style/extranet/b-s.png differ diff --git a/style/extranet/b-se.png b/style/extranet/b-se.png new file mode 100644 index 000000000..53b09e507 Binary files /dev/null and b/style/extranet/b-se.png differ diff --git a/style/extranet/b-sw.png b/style/extranet/b-sw.png new file mode 100644 index 000000000..c9414df24 Binary files /dev/null and b/style/extranet/b-sw.png differ diff --git a/style/extranet/b-w.png b/style/extranet/b-w.png new file mode 100644 index 000000000..269bfd2be Binary files /dev/null and b/style/extranet/b-w.png differ diff --git a/style/extranet/bg-bar.png b/style/extranet/bg-bar.png new file mode 100644 index 000000000..5a0d59c43 Binary files /dev/null and b/style/extranet/bg-bar.png differ diff --git a/style/extranet/bg-document.png b/style/extranet/bg-document.png new file mode 100644 index 000000000..563ee498d Binary files /dev/null and b/style/extranet/bg-document.png differ diff --git a/style/extranet/bg-footer.png b/style/extranet/bg-footer.png new file mode 100644 index 000000000..303b8b75a Binary files /dev/null and b/style/extranet/bg-footer.png differ diff --git a/style/extranet/bg-header.png b/style/extranet/bg-header.png new file mode 100644 index 000000000..d4e5de02d Binary files /dev/null and b/style/extranet/bg-header.png differ diff --git a/style/extranet/bg-logo.png b/style/extranet/bg-logo.png new file mode 100644 index 000000000..f2d37f7f0 Binary files /dev/null and b/style/extranet/bg-logo.png differ diff --git a/style/extranet/bg-page.png b/style/extranet/bg-page.png new file mode 100644 index 000000000..5a6e36ce1 Binary files /dev/null and b/style/extranet/bg-page.png differ diff --git a/style/extranet/filtre-list-b.png b/style/extranet/filtre-list-b.png new file mode 100644 index 000000000..2d02be4bf Binary files /dev/null and b/style/extranet/filtre-list-b.png differ diff --git a/style/extranet/filtre-list-m.png b/style/extranet/filtre-list-m.png new file mode 100644 index 000000000..c8e6dca23 Binary files /dev/null and b/style/extranet/filtre-list-m.png differ diff --git a/style/extranet/filtres.png b/style/extranet/filtres.png new file mode 100644 index 000000000..cb1665216 Binary files /dev/null and b/style/extranet/filtres.png differ diff --git a/style/extranet/ie.css b/style/extranet/ie.css new file mode 100644 index 000000000..adb7adcd1 --- /dev/null +++ b/style/extranet/ie.css @@ -0,0 +1,9 @@ +/* IE7 CSS +.b-c{position:relative;top:-1px;} +*/ +.b-c>div{margin-right:0px;position:relative;left:-6px;top:-1px;} +/*.b-n,.b-s{position:relative;left:0px;;} +.b-c{position:relative;left:3px;} +.b-ne,.b-se,.b-e{position:relative;left:-8px;} +.b-nw,.b-sw,.b-w{position:relative;left:3px;} +.b-footer td{position:relative;top:-1px;}*/ \ No newline at end of file diff --git a/style/extranet/merged-3fd7e1.css b/style/extranet/merged-3fd7e1.css new file mode 100644 index 000000000..e03d7196b --- /dev/null +++ b/style/extranet/merged-3fd7e1.css @@ -0,0 +1 @@ +*,body,html{padding:0;margin:0;}body,html{height:100%;}img{border:0;}hr{border:0;border-bottom:1px solid #ccc;}table{border-collapse:collapse;empty-cells:show;}input[type='checkbox'],input[type='radio']{margin:3px;margin-bottom:3px;}a:focus{-moz-outline:0px dotted !important;}.right{text-align:right !important;}.left{text-align:left !important;}.center{text-align:center !important;}.middle{vertical-align:middle !important;}.top{vertical-align:top !important;}.bottom{vertical-align:bottom !important;}.baseline{vertical-align:baseline !important;}.fullscreen{width:100%;height:100%;}.clear{clear:both;}.block{display:block;}.no-float{float:none !important;}.auto{width:auto !important;height:auto !important;}.wauto{width:auto !important;}.hauto{height:auto !important;}.max{width:100%}.hmax{height:100%;}.min{width:1px;}.hmin{height:1px;}.nowrap{white-space:nowrap;}.nomargin{padding:0;margin:0;}.hide{display:none;}.pemail{visibility:hidden;}.strong{font-weight:bold;}.onlyforprint{display:none;}.popupOverlay{opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}#multimulti_0{display:inline;}textarea.markitup{width:640px;height:400px;}body{height:auto;}body,table{font-family:Verdana;font-size:12px;color:#fff;}a{color:#da4f24;text-decoration:underline;}a:hover{text-decoration:none;}abbr{cursor:help;border-bottom:1px dotted #fff;}td{height:30px;color:#333;}input[type="text"],input[type="password"],select,textarea{color:#666;font-family:Verdana;font-size:12px;}.message{text-align:center;font-size:11px;color:#da4f24;background:#fff;}.closePopup img{margin-top:4px;}.content{width:990px;margin:0 auto;position:relative;}#header{height:94px;background:url(bg-header.png) repeat-x;position:relative;}#logo{position:absolute;top:11px;}#welcome{position:absolute;top:25px;right:10px;font-size:11px;}#welcome.with-search{right:250px;}#search{background:url(search.png) no-repeat;width:229px;height:28px;position:absolute;right:10px;top:20px;}#search input{background:none;border:none;width:180px;position:absolute;top:7px;left:10px;color:#fff;}#search a{margin-left:5px;position:absolute;top:2px;right:3px;}#footer{height:5px;background:#2a303a;overflow:hidden;}#main{background:url(bg-page.png) repeat-x #dbdde2;position:relative;height:439px;padding-top:13px;padding-bottom:30px;}#logo-main{position:fixed;background:url(bg-logo.png) no-repeat;top:180px;left:0px;width:289px;height:419px;}#nav{height:31px;position:absolute;top:63px;width:960px;}#nav a{display:block;float:left;background-position:top left;width:119px;height:31px;margin-right:1px;text-indent:-6667px;}#nav a:hover{background-position:bottom left;}#nav a.active{background-position:bottom left;}.b{margin:0 auto;}.b-c{overflow:hidden;}.b-c>div{background:#fff;}.b-c>div table{width:100%;}.b-nw{background:url(b-nw.png) no-repeat transparent;}.b-n{background:url(b-n.png) repeat-x;}.b-ne{background:url(b-ne.png) no-repeat transparent;}.b-w{background:url(b-w.png) repeat-y transparent;}.b-e{background:url(b-e.png) repeat-y top right transparent;}.b-sw{background:url(b-sw.png) no-repeat bottom left transparent;}.b-s{background:url(b-s.png) repeat-x;}.b-se{background:url(b-se.png) no-repeat transparent;}.b-nw,.b-sw,.b-w{width:12px;max-width:12px;min-width:12px;}.b-ne,.b-se,.b-e{width:11px;max-width:11px;min-width:11px;}.b-n,.b-ne,.b-nw{height:11px;max-height:11px;min-height:11px;}.b-s,.b-se,.b-sw{height:10px;max-height:10px;min-height:10px;}.b-n,.b-s{width:auto;}.b-e,.b-w{height:auto;}.popupOverlay{background:#666;opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}.popupWindow .close{position:absolute;top:15px;right:15px;}.liste{width:100% !important;min-width:960px;}.liste.form{width:auto !important;min-width:0px !important;}.form h2,.form th,.form td,.liste th,.liste td{text-align:left;border-bottom:1px solid #fff;font-weight:normal;padding-left:10px;padding-right:10px;font-size:12px;}.form th,.form h1,.liste th,.liste h1{color:#fff;font-size:11px;height:31px;font-weight:normal;vertical-align:middle;background:#4e535b url(b-h.png) repeat-x;padding-left:10px;}.form tr.big th{height:40px;}.form h1,.form h2{padding-top:8px;height:22px;}.form td{background:#fff;}.form h2,.liste td{color:#333;background:#dbdde2;vertical-align:middle;}.form tr.odd td,.liste tr.odd td{background:#ecedf0;}.liste tr.bold td{font-weight:bold;}.liste td.we{background:#DBDDE2 !important;}.liste td.filled,.liste td.highlight,.liste th.highlight{background:#da4f24 !important;}.liste .action{width:1px;}.liste th a{color:#fff;text-decoration:none;font-weight:bold;}.liste th a:hover{text-decoration:underline;}.form td a img,.liste td a img{margin-top:4px;}.listeTimereport input[type="text"]{width:12px;text-align:center;font-size:10px;}.listeTimereport td,.listeTimereport th{padding-left:4px;padding-right:4px;width:16px;}.listeTimereport th .spacer{float:left;}.listeTimereport .normal{text-align:left;vertical-align:middle;padding-left:10px;padding-right:10px;width:auto;}.listeTimereport .info{width:30px;}.listeTimereport tr.bold td{border-top:1px solid #4e555c;}#devisTop{background:url(../images/devis.png) top left;width:960px;height:500px;}#devisMiddle{background:url(bg-document.png);width:960px;}#devisBottom{background:url(../images/devis.png) bottom left;width:960px;height:300px;}#factureAdresse,#devisAdresse{position:absolute;top:180px;left:520px;height:165px;width:360px;padding:0px;}#factureAdresse input[type="text"],#devisAdresse input[type="text"]{width:100%;}#factureAdresseDisplay,#devisAdresseDisplay{font-size:20px;padding:20px;position:relative;min-height:150px;}#factureAdresseDisplay .tva{font-size:12px;}#factureAdresse .edit,#devisAdresse .edit{position:absolute;top:20px;right:20px;}#devisTitre{position:absolute;left:56px;top:231px;width:411px;height:184px;}#devisLignes{margin-left:30px;}#devisMail{padding:30px;margin-top:30px;border-top:2px solid #000;}#devisMail td{color:#000 !important;}.pager-holder{padding:10px;padding-bottom:0px;float:none;}.pager{text-align:center;}.pager a,.pager strong{padding:2px;height:10px;font-weight:bold;}.pager a{text-decoration:none;}.pager a:hover{text-decoration:none;}.pager.pgleft a{background:#ecedf0;border:1px solid #d9e3ef;color:#5D626A;}.pager.pgleft a:hover,.pager.pgleft strong{background:#ffc600 url(pager-left-active.png) repeat-x bottom left;border:1px solid #ff9d00;color:#7F5500;}.formParPage{padding:5px;float:right;}#bar{background:url(bg-bar.png) repeat-x #fff bottom left;}#bar.vide{height:16px;}#bar .content{height:50px;}.shortcut .note{color:#333;padding:10px;}.shortcut{float:left;margin-left:5px;margin-top:10px;}.filtre{color:#5f6162;width:160px;float:left;margin-left:10px;padding-top:1px;position:relative;}.filtre span{font-size:9px;color:#5f6162;margin-left:5px;cursor:pointer;}.filtre .bt{position:absolute;top:2px;right:3px;width:155px;height:18px;}.filtre .input{width:135px;height:23px;background-image:url(filtres.png);background-repeat:no-repeat;padding:5px;padding-right:20px;margin-left:5px;position:relative;}.filtre .input.active{font-weight:bold;}.filtre ul{display:none;position:absolute;top:36px;left:5px;z-index:20;width:160px;cursor:pointer;}.filtre .input span{font-size:12px;}.filtre ul li.first{padding-top:2px;}.filtre ul li{list-style-type:none;padding-left:20px;background-image:url(filtre-list-m.png);}.filtre ul li.last{background-image:url(filtre-list-b.png);background-position:0 100%;padding-bottom:5px;}.filtre ul li.all{display:none;}.efface_filtres{padding-right:20px;padding-top:10px;float:right;}.dashboard{position:relative;margin-bottom:10px;}.dashboard .caption{position:relative;left:20px;top:10px;display:inline;cursor:move;}.dashboard .edit{position:absolute;right:40px;top:-17px;}.dashboard .delete{position:absolute;right:10px;top:-17px;}.dashboard .toggle{position:absolute;left:12px;top:-10px;background-image:url(arrows.png);background-position:0 0;width:18px;height:10px;}.dashboard .toggle.close{background-position:0 100%;}.dashboard div.close .liste{display:none;}.dashboard .b-c{width:960px !important;height:auto !important;}.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;}.contextMenu li{border-bottom:1px solid #ccc;padding:12px;padding-left:20px;padding-right:20px;list-style-type:none;background:#fff;height:12px;}.contextMenu li:hover{background:#ccc;}.contextMenu li a:hover{text-decoration:none;}.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;}.contextMenu li.head{background:#666b74;font-weight:bold;color:#fff;text-align:center;border-bottom:1px solid #000;}.ac_results{background:#fff;border:1px solid #acacac;color:#666;padding:2px;z-index:100000 !important;}.ac_results li{cursor:pointer;padding:2px;margin:1px;list-style-type:none;}.ac_results li:hover,.ac_over{background:#4e535e;color:#fff;}.ac_results iframe{display:none;}#traduction div table td{padding:5px;background:#dbdde2;color:#333;vertical-align:top;}#traduction div table .odd td{background:#ecedf0;}#traduction div table .save td{background-color:#4e535b;background-image:url(b-h.png);background-repeat:repeat-x;}.error{border:1px solid #f00;}#uploaderContainer{width:970px;height:50px;}.gris{background-color:#ecedf0;} \ No newline at end of file diff --git a/style/extranet/merged-b27ad5.css b/style/extranet/merged-b27ad5.css new file mode 100644 index 000000000..1e2071ada --- /dev/null +++ b/style/extranet/merged-b27ad5.css @@ -0,0 +1 @@ +*,body,html{padding:0;margin:0;}body,html{height:100%;}img{border:0;}hr{border:0;border-bottom:1px solid #ccc;}table{border-collapse:collapse;empty-cells:show;}input[type='checkbox'],input[type='radio']{margin:3px;margin-bottom:3px;}a:focus{-moz-outline:0px dotted !important;}.right{text-align:right !important;}.left{text-align:left !important;}.center{text-align:center !important;}.middle{vertical-align:middle !important;}.top{vertical-align:top !important;}.bottom{vertical-align:bottom !important;}.baseline{vertical-align:baseline !important;}.fullscreen{width:100%;height:100%;}.clear{clear:both;}.block{display:block;}.no-float{float:none !important;}.auto{width:auto !important;height:auto !important;}.wauto{width:auto !important;}.hauto{height:auto !important;}.max{width:100%}.hmax{height:100%;}.min{width:1px;}.hmin{height:1px;}.nowrap{white-space:nowrap;}.nomargin{padding:0;margin:0;}.hide{display:none;}.pemail{visibility:hidden;}.strong{font-weight:bold;}.popupOverlay{opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}#multimulti_0{display:inline;}textarea.markitup{width:640px;height:400px;}.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;}.contextMenu li{border-bottom:1px solid #ccc;padding:5px;list-style-type:none;background:#fff;}.contextMenu li:hover{background:#ccc;}.contextMenu li a:hover{text-decoration:none;}.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;}.contextMenu li.head{background:#ccc;font-weight:bold;color:#000;text-align:center;border-bottom:1px solid #000;}body{height:auto;}body,table{font-family:Verdana;font-size:12px;color:#fff;}a{color:#da4f24;text-decoration:underline;}a:hover{text-decoration:none;}abbr{cursor:help;border-bottom:1px dotted #fff;}td{height:30px;color:#333;}input[type="text"],input[type="password"],select,textarea{color:#666;font-family:Verdana;font-size:12px;}.message{text-align:center;font-size:11px;color:#da4f24;background:#fff;}.closePopup img{margin-top:4px;}.content{width:990px;margin:0 auto;position:relative;}#header{height:94px;background:url(bg-header.png) repeat-x;position:relative;}#logo{position:absolute;top:11px;}#welcome{position:absolute;top:25px;right:10px;font-size:11px;}#welcome.with-search{right:250px;}#search{background:url(search.png) no-repeat;width:229px;height:28px;position:absolute;right:10px;top:20px;}#search input{background:none;border:none;width:180px;position:absolute;top:7px;left:10px;color:#fff;}#search a{margin-left:5px;position:absolute;top:2px;right:3px;}#footer{height:5px;background:#2a303a;overflow:hidden;}#main{background:url(bg-page.png) repeat-x #dbdde2;position:relative;height:439px;padding-top:13px;padding-bottom:30px;}#logo-main{position:fixed;background:url(bg-logo.png) no-repeat;top:180px;left:0px;width:289px;height:419px;}#nav{height:31px;position:absolute;top:63px;width:960px;}#nav a{display:block;float:left;background-position:top left;width:119px;height:31px;margin-right:1px;text-indent:-6667px;}#nav a:hover{background-position:bottom left;}#nav a.active{background-position:bottom left;}.b{margin:0 auto;}.b-c{overflow:hidden;}.b-c>div{background:#fff;}.b-c>div table{width:100%;}.b-nw{background:url(b-nw.png) no-repeat transparent;}.b-n{background:url(b-n.png) repeat-x;}.b-ne{background:url(b-ne.png) no-repeat transparent;}.b-w{background:url(b-w.png) repeat-y transparent;}.b-e{background:url(b-e.png) repeat-y top right transparent;}.b-sw{background:url(b-sw.png) no-repeat bottom left transparent;}.b-s{background:url(b-s.png) repeat-x;}.b-se{background:url(b-se.png) no-repeat transparent;}.b-nw,.b-sw,.b-w{width:12px;max-width:12px;min-width:12px;}.b-ne,.b-se,.b-e{width:11px;max-width:11px;min-width:11px;}.b-n,.b-ne,.b-nw{height:11px;max-height:11px;min-height:11px;}.b-s,.b-se,.b-sw{height:10px;max-height:10px;min-height:10px;}.b-n,.b-s{width:auto;}.b-e,.b-w{height:auto;}.popupOverlay{background:#666;opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}.popupWindow .close{position:absolute;top:15px;right:15px;}.liste{width:100% !important;min-width:960px;}.liste.form{width:auto !important;min-width:0px !important;}.form th,.form td,.liste th,.liste td{text-align:left;border-bottom:1px solid #fff;font-weight:normal;padding-left:10px;padding-right:10px;}.form th,.form h1,.liste th,.liste h1{color:#fff;font-size:11px;height:31px;font-weight:normal;vertical-align:middle;background:url(b-h.png) repeat-x;padding-left:10px;}.form h1{padding-top:8px;height:22px;}.form td{background:#fff;}.liste td{color:#333;background:#dbdde2;vertical-align:middle;}.form tr.odd td,.liste tr.odd td{background:#ecedf0;}.liste tr.bold td{font-weight:bold;}.liste td.we{background:#DBDDE2 !important;}.liste td.filled,.liste td.highlight,.liste th.highlight{background:#da4f24 !important;}.liste .action{width:1px;}.liste th a{color:#fff;text-decoration:none;font-weight:bold;}.liste th a:hover{text-decoration:underline;}.form td a img,.liste td a img{margin-top:4px;}.listeTimereport input[type="text"]{width:12px;text-align:center;font-size:10px;}.listeTimereport td,.listeTimereport th{padding-left:4px;padding-right:4px;width:16px;}.listeTimereport th .spacer{float:left;}.listeTimereport .normal{text-align:left;vertical-align:middle;padding-left:10px;padding-right:10px;width:auto;}.listeTimereport .info{width:30px;}#devisTop{background:url(../images/devis.png) top left;width:960px;height:500px;}#devisMiddle{background:url(bg-document.png);width:960px;}#devisBottom{background:url(../images/devis.png) bottom left;width:960px;height:300px;}#factureAdresse,#devisAdresse{position:absolute;top:180px;left:520px;height:165px;width:360px;padding:0px;}#factureAdresse input[type="text"],#devisAdresse input[type="text"]{width:100%;}#factureAdresseDisplay,#devisAdresseDisplay{font-size:20px;padding:20px;position:relative;min-height:150px;}#factureAdresseDisplay .tva{font-size:12px;}#factureAdresse .edit,#devisAdresse .edit{position:absolute;top:20px;right:20px;}#devisTitre{position:absolute;left:56px;top:231px;width:411px;height:184px;}#devisLignes{margin-left:30px;}#devisMail{padding:30px;margin-top:30px;border-top:2px solid #000;}#devisMail td{color:#000 !important;}.pager-holder{padding:10px;padding-bottom:0px;float:none;}.pager{text-align:center;}.pager a,.pager strong{padding:2px;height:10px;font-weight:bold;}.pager a{text-decoration:none;}.pager a:hover{text-decoration:none;}.pager.pgleft a{background:#ecedf0;border:1px solid #d9e3ef;color:#5D626A;}.pager.pgleft a:hover,.pager.pgleft strong{background:#ffc600 url(pager-left-active.png) repeat-x bottom left;border:1px solid #ff9d00;color:#7F5500;}.formParPage{padding:5px;float:right;}#bar{background:url(bg-bar.png) repeat-x #fff bottom left;}#bar.vide{height:16px;}#bar .content{height:50px;}.shortcut .note{color:#333;padding:10px;}.shortcut{float:left;margin-left:5px;margin-top:10px;}.filtre{color:#5f6162;width:160px;float:left;margin-left:10px;padding-top:1px;position:relative;}.filtre span{font-size:9px;color:#5f6162;margin-left:5px;cursor:pointer;}.filtre .bt{position:absolute;top:2px;right:3px;width:155px;height:18px;}.filtre .input{width:135px;height:23px;background-image:url(filtres.png);background-repeat:no-repeat;padding:5px;padding-right:20px;margin-left:5px;position:relative;}.filtre .input.active{font-weight:bold;}.filtre ul{display:none;position:absolute;top:36px;left:5px;z-index:20;width:160px;cursor:pointer;}.filtre .input span{font-size:12px;}.filtre ul li.first{padding-top:2px;}.filtre ul li{list-style-type:none;padding-left:20px;background-image:url(filtre-list-m.png);}.filtre ul li.last{background-image:url(filtre-list-b.png);background-position:0 100%;padding-bottom:5px;}.filtre ul li.all{display:none;}.efface_filtres{padding-right:20px;padding-top:10px;float:right;}.dashboard{position:relative;margin-bottom:10px;}.dashboard .caption{position:relative;left:20px;top:10px;display:inline;cursor:move;}.dashboard .edit{position:absolute;right:40px;top:-17px;}.dashboard .delete{position:absolute;right:10px;top:-17px;}.dashboard .toggle{position:absolute;left:12px;top:-10px;background-image:url(arrows.png);background-position:0 0;width:18px;height:10px;}.dashboard .toggle.close{background-position:0 100%;}.dashboard div.close .liste{display:none;}.dashboard .b-c{width:960px !important;height:auto !important;}.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;}.contextMenu li{border-bottom:1px solid #ccc;padding:12px;padding-left:20px;padding-right:20px;list-style-type:none;background:#fff;height:12px;}.contextMenu li:hover{background:#ccc;}.contextMenu li a:hover{text-decoration:none;}.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;}.contextMenu li.head{background:#666b74;font-weight:bold;color:#fff;text-align:center;border-bottom:1px solid #000;}.ac_results{background:#fff;border:1px solid #acacac;color:#666;padding:2px;z-index:100000 !important;}.ac_results li{cursor:pointer;padding:2px;margin:1px;list-style-type:none;}.ac_results li:hover,.ac_over{background:#4e535e;color:#fff;}.ac_results iframe{display:none;}#traduction div table td{padding:5px;background:#dbdde2;color:#333;vertical-align:top;}#traduction div table .odd td{background:#ecedf0;}#traduction div table .save td{background-color:#4e535b;background-image:url(b-h.png);background-repeat:repeat-x;}.error{border:1px solid #f00;} \ No newline at end of file diff --git a/style/extranet/pager-left-active.png b/style/extranet/pager-left-active.png new file mode 100644 index 000000000..26d32e574 Binary files /dev/null and b/style/extranet/pager-left-active.png differ diff --git a/style/extranet/pager-left.png b/style/extranet/pager-left.png new file mode 100644 index 000000000..7da45200d Binary files /dev/null and b/style/extranet/pager-left.png differ diff --git a/style/extranet/search.png b/style/extranet/search.png new file mode 100644 index 000000000..6d2d802db Binary files /dev/null and b/style/extranet/search.png differ diff --git a/style/extranet/style.css b/style/extranet/style.css new file mode 100644 index 000000000..5560c9f75 --- /dev/null +++ b/style/extranet/style.css @@ -0,0 +1,426 @@ +body{ + height:auto; +} + +body,table{ + font-family:Verdana; + font-size:12px; + color:#fff; +} + +a{ + color:#da4f24; + text-decoration:underline; +} + +a:hover{ + text-decoration:none; +} + +abbr{cursor:help;border-bottom:1px dotted #fff;} + +td{height:30px;color:#333;} + +input[type="text"],input[type="password"],select,textarea{ + color:#666; + font-family:Verdana; + font-size:12px; +} + +.message{text-align:center;font-size:11px;color:#da4f24;background:#fff;} +.closePopup img{margin-top:4px;} + +.content{ + width:990px; + margin:0 auto; + position:relative; +} + +#header{ + height:94px; + background:url(bg-header.png) repeat-x; + position:relative; +} + +#logo{ + position:absolute; + top:11px; +} + +#welcome{ + position:absolute; + top:25px; + right:10px; + font-size:11px; +} + +#welcome.with-search{ + right:250px; +} + +#search{ + background:url(search.png) no-repeat; + width:229px; + height:28px; + position:absolute; + right:10px; + top:20px; +} + +#search input{ + background:none; + border:none; + width:180px; + position:absolute; + top:7px; + left:10px; + color:#fff; +} + +#search a{ + margin-left:5px; + position:absolute; + top:2px; + right:3px; +} + +#footer{ + height:5px; + background:#2a303a; + overflow:hidden; +} + +#main{ + background:url(bg-page.png) repeat-x #dbdde2 ; + position:relative; + height:439px; + padding-top:13px; + padding-bottom:30px; +} + +#logo-main{ + position:fixed; + background:url(bg-logo.png) no-repeat; + top:180px; + left:0px; + width:289px; + height:419px; +} + +#nav{ + height:31px; + position:absolute; + top:63px; + width:960px; +} + +#nav a{ + display:block; + float:left; + background-position:top left; + width:119px; + height:31px; + margin-right:1px; + text-indent:-6667px; +} + +#nav a:hover{ + background-position:bottom left; +} + +#nav a.active{ + background-position:bottom left; +} + + +/* Cadre */ +.b{margin:0 auto;} +.b-c{overflow:hidden;} +.b-c>div{background:#fff;} +.b-c>div table{width:100%;} +.b-nw{background:url(b-nw.png) no-repeat transparent;} +.b-n{background:url(b-n.png) repeat-x;} +.b-ne{background:url(b-ne.png) no-repeat transparent;} +.b-w{background:url(b-w.png) repeat-y transparent;} +.b-e{background:url(b-e.png) repeat-y top right transparent;} +.b-sw{background:url(b-sw.png) no-repeat bottom left transparent;} +.b-s{background:url(b-s.png) repeat-x;} +.b-se{background:url(b-se.png) no-repeat transparent;} + +.b-nw, .b-sw, .b-w{width:12px;max-width:12px;min-width:12px;} +.b-ne, .b-se, .b-e{width:11px;max-width:11px;min-width:11px;} +.b-n, .b-ne, .b-nw{height:11px;max-height:11px;min-height:11px;} +.b-s, .b-se, .b-sw{height:10px;max-height:10px;min-height:10px;} +.b-n, .b-s{width:auto;} +.b-e, .b-w{height:auto;} + +.popupOverlay{background:#666;opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;} +.popupWindow{display:none;opacity:1;position:fixed;} +/*.popupWindow>table{width:600px;}*/ +.popupWindow .close{position:absolute;top:15px;right:15px;} + +/* Tableaux */ + +.liste{width:100% !important;min-width:960px;} +.liste.light{width:100% !important;min-width:0px !important;} +.liste.form{width:auto !important;min-width:0px !important;} +.form h2,.form th,.form td,.liste th, .liste td{text-align:left;border-bottom:1px solid #fff;font-weight:normal;padding-left:10px;padding-right:10px;font-size:12px;} +.form th,.form h1,.liste th,.liste h1{color:#fff;font-size:11px;height:31px;font-weight:normal;vertical-align:middle;background:#4e535b url(b-h.png) repeat-x;padding-left:10px;} +.form tr.big th{height:40px;} +.form h1,.form h2{padding-top:6px;height:26px;} +.form td{background:#fff;} +.form h2,.liste td{color:#333;background:#dbdde2;vertical-align:middle;} +.form tr.odd td,.liste tr.odd td{background:#ecedf0;} + +.form tr.light th,.liste tr.light th{ + color:#333;font-size:12px;background:#fff;height:22px; + border-bottom:1px solid #707070; + margin-bottom:1px; + padding-left:3px; +} + + +.liste tr.bold td{font-weight:bold;} +.liste td.we{background:#DBDDE2 !important;} +.liste td.filled,.liste td.highlight, .liste th.highlight{background:#da4f24 !important;} +.liste .action{width:1px;} +.liste th a{color:#fff;text-decoration:none;font-weight:bold;} +.liste th a:hover{text-decoration:underline;} + +.form td a img, .liste td a img{margin-top:4px;} + +.listeTimereport input[type="text"]{width:12px;text-align:center;font-size:10px;margin:2px;} +.listeTimereport td, .listeTimereport th{padding-left:4px;padding-right:4px;width:16px;} +.listeTimereport th .spacer{float:left;} +.listeTimereport .normal{text-align:left;vertical-align:middle;padding-left:10px;padding-right:10px;width:auto;} +.listeTimereport .info{width:30px;} +.listeTimereport tr.bold td{border-top:1px solid #4e555c;} + +#devisTop{background:url(../images/devis.png) top left;width:960px;height:500px;} +#devisMiddle{background:url(bg-document.png);width:960px;padding-bottom:20px;} +#devisBottom{background:url(../images/devis.png) bottom left;width:960px;height:300px;} +#factureAdresse,#devisAdresse{position:absolute;top:180px;left:520px;height:165px;width:360px;padding:0px;} +#factureAdresse input[type="text"],#devisAdresse input[type="text"]{width:100%;} +#factureAdresseDisplay,#devisAdresseDisplay{font-size:20px;padding:20px;position:relative;min-height:150px;} +#factureAdresseDisplay .tva{font-size:12px;} +#factureAdresse .edit,#devisAdresse .edit{position:absolute;top:20px;right:20px;} +#devisTitre{position:absolute;left:56px;top:231px;width:411px;height:184px;} +#devisLignes{padding-top:20px;} +.devisLigne{border:1px #9aa2ae dashed;cursor:move;margin-top:20px;margin-left:20px;margin-right:20px;} +.devisLigneLeft{width:700px;padding:20px;} +.devisLigneRight{width:120px;float:right;text-align:center;padding:20px;} + +#devisMail{padding:30px;margin-top:30px;border-top:2px solid #000;} +#devisMail td{color:#000 !important;} + +/* Pagers */ + +.pager-holder{ + padding:10px; + padding-bottom:0px; + float:none; +} +.pager{ + text-align:center; +} +.pager a, .pager strong{ + padding:2px; + height:10px; + font-weight:bold; +} +.pager a{text-decoration:none;} +.pager a:hover{text-decoration:none;} + +/* Pager Left */ +.pager.pgleft a{ + background:#ecedf0; + border:1px solid #d9e3ef; + color:#5D626A; +} +.pager.pgleft a:hover, +.pager.pgleft strong{ + background:#ffc600 url(pager-left-active.png) repeat-x bottom left; + border:1px solid #ff9d00; + color:#7F5500; +} + +.formParPage{ + padding:5px; + float:right; +} + + +/* Barre de raccourcis */ +#bar{ + background:url(bg-bar.png) repeat-x #fff bottom left; +} + +#bar.vide{ + height:16px; +} + +#bar .content{ + height:50px; +} + +.shortcut .note{color:#333;padding:10px;} +.shortcut{float:left;margin-left:5px;margin-top:10px;} + +/* Filtres */ +.filtre{ + color:#5f6162; + width:160px; + float:left; + margin-left:10px; + padding-top:1px; + position:relative; +} +.filtre span{ + font-size:9px; + color:#5f6162; + margin-left:5px; + cursor:pointer; +} +.filtre .bt{ + position:absolute; + top:2px; + right:3px; + width:155px; + height:18px; +} +.filtre .input{ + width:135px; + height:23px; + background-image:url(filtres.png); + background-repeat:no-repeat; + padding:5px; + padding-right:20px; + margin-left:5px; + position:relative; +} +.filtre .input.active{ + font-weight:bold; +} +.filtre ul{ + display:none; + position:absolute; + top:36px; + left:5px; + z-index:20; + width:160px; + cursor:pointer; +} + +.filtre .input span{ + font-size:12px; +} +.filtre ul li.first{ + padding-top:2px; +} +.filtre ul li{ + list-style-type:none; + padding-left:20px; + background-image:url(filtre-list-m.png); +} +.filtre ul li.last{ + background-image:url(filtre-list-b.png); + background-position:0 100%; + padding-bottom:5px; +} +.filtre ul li.all{ + display:none; +} +.efface_filtres{padding-right:20px;padding-top:10px;float:right;} + +/* Dashboard */ +.dashboard{ + position:relative; + margin-bottom:10px; +} +.dashboard .caption{ + position:relative; + left:20px; + top:10px; + display:inline; + cursor:move; +} + +.dashboard .edit{ + position:absolute; + right:40px; + top:-17px; +} + +.dashboard .delete{ + position:absolute; + right:10px; + top:-17px; +} + +.dashboard .toggle{ + position:absolute; + left:12px; + top:-10px; + background-image:url(arrows.png); + background-position:0 0; + width:18px; + height:10px; +} + +.dashboard .toggle.close{ + background-position:0 100%; +} + +.dashboard div.close .liste{ + display:none; +} + +.dashboard .b-c{ + width:960px !important; + height:auto !important; +} + +/* Menu Contextuel */ +.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;} +.contextMenu li{border-bottom:1px solid #ccc;padding:12px;padding-left:20px;padding-right:20px;list-style-type:none;background:#fff;height:12px;} +.contextMenu li:hover{background:#ccc;} +.contextMenu li a:hover{text-decoration:none;} +.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;} +.contextMenu li.head{background:#666b74;font-weight:bold;color:#fff;text-align:center;border-bottom:1px solid #000;} + +/* Autocomplete */ +.ac_results{ + background:#fff; + border:1px solid #acacac; + color:#666; + padding:2px; + z-index:100000 !important; +} + +.ac_results li{ + cursor:pointer; + padding:2px; + margin:1px; + list-style-type:none; +} + +.ac_results li:hover, .ac_over{ + background:#4e535e; + color:#fff; +} + +.ac_results iframe{ +display:none; +} + +/* Traduction */ +#traduction div table td{padding:5px;background:#dbdde2;color:#333;vertical-align:top;} +#traduction div table .odd td{background:#ecedf0;} +#traduction div table .save td{background-color:#4e535b;background-image:url(b-h.png);background-repeat:repeat-x;} + +/* Erreur */ +.error{border:1px solid #f00;} + +#uploaderContainer{width:970px;height:50px;} + +.gris{background-color:#ecedf0;} \ No newline at end of file diff --git a/style/ws/arrows.png b/style/ws/arrows.png new file mode 100644 index 000000000..2aebfaed6 Binary files /dev/null and b/style/ws/arrows.png differ diff --git a/style/ws/b-e.png b/style/ws/b-e.png new file mode 100644 index 000000000..f301f4e3a Binary files /dev/null and b/style/ws/b-e.png differ diff --git a/style/ws/b-h.png b/style/ws/b-h.png new file mode 100644 index 000000000..417b0fce5 Binary files /dev/null and b/style/ws/b-h.png differ diff --git a/style/ws/b-n.png b/style/ws/b-n.png new file mode 100644 index 000000000..e0922e3c9 Binary files /dev/null and b/style/ws/b-n.png differ diff --git a/style/ws/b-ne.png b/style/ws/b-ne.png new file mode 100644 index 000000000..fcabb64ca Binary files /dev/null and b/style/ws/b-ne.png differ diff --git a/style/ws/b-nw.png b/style/ws/b-nw.png new file mode 100644 index 000000000..607df5f4b Binary files /dev/null and b/style/ws/b-nw.png differ diff --git a/style/ws/b-s.png b/style/ws/b-s.png new file mode 100644 index 000000000..c1210d586 Binary files /dev/null and b/style/ws/b-s.png differ diff --git a/style/ws/b-se.png b/style/ws/b-se.png new file mode 100644 index 000000000..53b09e507 Binary files /dev/null and b/style/ws/b-se.png differ diff --git a/style/ws/b-sw.png b/style/ws/b-sw.png new file mode 100644 index 000000000..c9414df24 Binary files /dev/null and b/style/ws/b-sw.png differ diff --git a/style/ws/b-w.png b/style/ws/b-w.png new file mode 100644 index 000000000..269bfd2be Binary files /dev/null and b/style/ws/b-w.png differ diff --git a/style/ws/bg-bar-vide.png b/style/ws/bg-bar-vide.png new file mode 100644 index 000000000..decc2f8c3 Binary files /dev/null and b/style/ws/bg-bar-vide.png differ diff --git a/style/ws/bg-bar.png b/style/ws/bg-bar.png new file mode 100644 index 000000000..20610034a Binary files /dev/null and b/style/ws/bg-bar.png differ diff --git a/style/ws/bg-document.png b/style/ws/bg-document.png new file mode 100644 index 000000000..563ee498d Binary files /dev/null and b/style/ws/bg-document.png differ diff --git a/style/ws/bg-footer.png b/style/ws/bg-footer.png new file mode 100644 index 000000000..303b8b75a Binary files /dev/null and b/style/ws/bg-footer.png differ diff --git a/style/ws/bg-header.png b/style/ws/bg-header.png new file mode 100644 index 000000000..f3653e4d5 Binary files /dev/null and b/style/ws/bg-header.png differ diff --git a/style/ws/bg-logo.png b/style/ws/bg-logo.png new file mode 100644 index 000000000..f2d37f7f0 Binary files /dev/null and b/style/ws/bg-logo.png differ diff --git a/style/ws/bg-page.png b/style/ws/bg-page.png new file mode 100644 index 000000000..a098b43cd Binary files /dev/null and b/style/ws/bg-page.png differ diff --git a/style/ws/filtre-list-b.png b/style/ws/filtre-list-b.png new file mode 100644 index 000000000..12e5da9ba Binary files /dev/null and b/style/ws/filtre-list-b.png differ diff --git a/style/ws/filtre-list-m.png b/style/ws/filtre-list-m.png new file mode 100644 index 000000000..8d5e381d9 Binary files /dev/null and b/style/ws/filtre-list-m.png differ diff --git a/style/ws/filtres.png b/style/ws/filtres.png new file mode 100644 index 000000000..477ee3b2c Binary files /dev/null and b/style/ws/filtres.png differ diff --git a/style/ws/ie.css b/style/ws/ie.css new file mode 100644 index 000000000..adb7adcd1 --- /dev/null +++ b/style/ws/ie.css @@ -0,0 +1,9 @@ +/* IE7 CSS +.b-c{position:relative;top:-1px;} +*/ +.b-c>div{margin-right:0px;position:relative;left:-6px;top:-1px;} +/*.b-n,.b-s{position:relative;left:0px;;} +.b-c{position:relative;left:3px;} +.b-ne,.b-se,.b-e{position:relative;left:-8px;} +.b-nw,.b-sw,.b-w{position:relative;left:3px;} +.b-footer td{position:relative;top:-1px;}*/ \ No newline at end of file diff --git a/style/ws/merged-3fd7e1.css b/style/ws/merged-3fd7e1.css new file mode 100644 index 000000000..e03d7196b --- /dev/null +++ b/style/ws/merged-3fd7e1.css @@ -0,0 +1 @@ +*,body,html{padding:0;margin:0;}body,html{height:100%;}img{border:0;}hr{border:0;border-bottom:1px solid #ccc;}table{border-collapse:collapse;empty-cells:show;}input[type='checkbox'],input[type='radio']{margin:3px;margin-bottom:3px;}a:focus{-moz-outline:0px dotted !important;}.right{text-align:right !important;}.left{text-align:left !important;}.center{text-align:center !important;}.middle{vertical-align:middle !important;}.top{vertical-align:top !important;}.bottom{vertical-align:bottom !important;}.baseline{vertical-align:baseline !important;}.fullscreen{width:100%;height:100%;}.clear{clear:both;}.block{display:block;}.no-float{float:none !important;}.auto{width:auto !important;height:auto !important;}.wauto{width:auto !important;}.hauto{height:auto !important;}.max{width:100%}.hmax{height:100%;}.min{width:1px;}.hmin{height:1px;}.nowrap{white-space:nowrap;}.nomargin{padding:0;margin:0;}.hide{display:none;}.pemail{visibility:hidden;}.strong{font-weight:bold;}.onlyforprint{display:none;}.popupOverlay{opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}#multimulti_0{display:inline;}textarea.markitup{width:640px;height:400px;}body{height:auto;}body,table{font-family:Verdana;font-size:12px;color:#fff;}a{color:#da4f24;text-decoration:underline;}a:hover{text-decoration:none;}abbr{cursor:help;border-bottom:1px dotted #fff;}td{height:30px;color:#333;}input[type="text"],input[type="password"],select,textarea{color:#666;font-family:Verdana;font-size:12px;}.message{text-align:center;font-size:11px;color:#da4f24;background:#fff;}.closePopup img{margin-top:4px;}.content{width:990px;margin:0 auto;position:relative;}#header{height:94px;background:url(bg-header.png) repeat-x;position:relative;}#logo{position:absolute;top:11px;}#welcome{position:absolute;top:25px;right:10px;font-size:11px;}#welcome.with-search{right:250px;}#search{background:url(search.png) no-repeat;width:229px;height:28px;position:absolute;right:10px;top:20px;}#search input{background:none;border:none;width:180px;position:absolute;top:7px;left:10px;color:#fff;}#search a{margin-left:5px;position:absolute;top:2px;right:3px;}#footer{height:5px;background:#2a303a;overflow:hidden;}#main{background:url(bg-page.png) repeat-x #dbdde2;position:relative;height:439px;padding-top:13px;padding-bottom:30px;}#logo-main{position:fixed;background:url(bg-logo.png) no-repeat;top:180px;left:0px;width:289px;height:419px;}#nav{height:31px;position:absolute;top:63px;width:960px;}#nav a{display:block;float:left;background-position:top left;width:119px;height:31px;margin-right:1px;text-indent:-6667px;}#nav a:hover{background-position:bottom left;}#nav a.active{background-position:bottom left;}.b{margin:0 auto;}.b-c{overflow:hidden;}.b-c>div{background:#fff;}.b-c>div table{width:100%;}.b-nw{background:url(b-nw.png) no-repeat transparent;}.b-n{background:url(b-n.png) repeat-x;}.b-ne{background:url(b-ne.png) no-repeat transparent;}.b-w{background:url(b-w.png) repeat-y transparent;}.b-e{background:url(b-e.png) repeat-y top right transparent;}.b-sw{background:url(b-sw.png) no-repeat bottom left transparent;}.b-s{background:url(b-s.png) repeat-x;}.b-se{background:url(b-se.png) no-repeat transparent;}.b-nw,.b-sw,.b-w{width:12px;max-width:12px;min-width:12px;}.b-ne,.b-se,.b-e{width:11px;max-width:11px;min-width:11px;}.b-n,.b-ne,.b-nw{height:11px;max-height:11px;min-height:11px;}.b-s,.b-se,.b-sw{height:10px;max-height:10px;min-height:10px;}.b-n,.b-s{width:auto;}.b-e,.b-w{height:auto;}.popupOverlay{background:#666;opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}.popupWindow .close{position:absolute;top:15px;right:15px;}.liste{width:100% !important;min-width:960px;}.liste.form{width:auto !important;min-width:0px !important;}.form h2,.form th,.form td,.liste th,.liste td{text-align:left;border-bottom:1px solid #fff;font-weight:normal;padding-left:10px;padding-right:10px;font-size:12px;}.form th,.form h1,.liste th,.liste h1{color:#fff;font-size:11px;height:31px;font-weight:normal;vertical-align:middle;background:#4e535b url(b-h.png) repeat-x;padding-left:10px;}.form tr.big th{height:40px;}.form h1,.form h2{padding-top:8px;height:22px;}.form td{background:#fff;}.form h2,.liste td{color:#333;background:#dbdde2;vertical-align:middle;}.form tr.odd td,.liste tr.odd td{background:#ecedf0;}.liste tr.bold td{font-weight:bold;}.liste td.we{background:#DBDDE2 !important;}.liste td.filled,.liste td.highlight,.liste th.highlight{background:#da4f24 !important;}.liste .action{width:1px;}.liste th a{color:#fff;text-decoration:none;font-weight:bold;}.liste th a:hover{text-decoration:underline;}.form td a img,.liste td a img{margin-top:4px;}.listeTimereport input[type="text"]{width:12px;text-align:center;font-size:10px;}.listeTimereport td,.listeTimereport th{padding-left:4px;padding-right:4px;width:16px;}.listeTimereport th .spacer{float:left;}.listeTimereport .normal{text-align:left;vertical-align:middle;padding-left:10px;padding-right:10px;width:auto;}.listeTimereport .info{width:30px;}.listeTimereport tr.bold td{border-top:1px solid #4e555c;}#devisTop{background:url(../images/devis.png) top left;width:960px;height:500px;}#devisMiddle{background:url(bg-document.png);width:960px;}#devisBottom{background:url(../images/devis.png) bottom left;width:960px;height:300px;}#factureAdresse,#devisAdresse{position:absolute;top:180px;left:520px;height:165px;width:360px;padding:0px;}#factureAdresse input[type="text"],#devisAdresse input[type="text"]{width:100%;}#factureAdresseDisplay,#devisAdresseDisplay{font-size:20px;padding:20px;position:relative;min-height:150px;}#factureAdresseDisplay .tva{font-size:12px;}#factureAdresse .edit,#devisAdresse .edit{position:absolute;top:20px;right:20px;}#devisTitre{position:absolute;left:56px;top:231px;width:411px;height:184px;}#devisLignes{margin-left:30px;}#devisMail{padding:30px;margin-top:30px;border-top:2px solid #000;}#devisMail td{color:#000 !important;}.pager-holder{padding:10px;padding-bottom:0px;float:none;}.pager{text-align:center;}.pager a,.pager strong{padding:2px;height:10px;font-weight:bold;}.pager a{text-decoration:none;}.pager a:hover{text-decoration:none;}.pager.pgleft a{background:#ecedf0;border:1px solid #d9e3ef;color:#5D626A;}.pager.pgleft a:hover,.pager.pgleft strong{background:#ffc600 url(pager-left-active.png) repeat-x bottom left;border:1px solid #ff9d00;color:#7F5500;}.formParPage{padding:5px;float:right;}#bar{background:url(bg-bar.png) repeat-x #fff bottom left;}#bar.vide{height:16px;}#bar .content{height:50px;}.shortcut .note{color:#333;padding:10px;}.shortcut{float:left;margin-left:5px;margin-top:10px;}.filtre{color:#5f6162;width:160px;float:left;margin-left:10px;padding-top:1px;position:relative;}.filtre span{font-size:9px;color:#5f6162;margin-left:5px;cursor:pointer;}.filtre .bt{position:absolute;top:2px;right:3px;width:155px;height:18px;}.filtre .input{width:135px;height:23px;background-image:url(filtres.png);background-repeat:no-repeat;padding:5px;padding-right:20px;margin-left:5px;position:relative;}.filtre .input.active{font-weight:bold;}.filtre ul{display:none;position:absolute;top:36px;left:5px;z-index:20;width:160px;cursor:pointer;}.filtre .input span{font-size:12px;}.filtre ul li.first{padding-top:2px;}.filtre ul li{list-style-type:none;padding-left:20px;background-image:url(filtre-list-m.png);}.filtre ul li.last{background-image:url(filtre-list-b.png);background-position:0 100%;padding-bottom:5px;}.filtre ul li.all{display:none;}.efface_filtres{padding-right:20px;padding-top:10px;float:right;}.dashboard{position:relative;margin-bottom:10px;}.dashboard .caption{position:relative;left:20px;top:10px;display:inline;cursor:move;}.dashboard .edit{position:absolute;right:40px;top:-17px;}.dashboard .delete{position:absolute;right:10px;top:-17px;}.dashboard .toggle{position:absolute;left:12px;top:-10px;background-image:url(arrows.png);background-position:0 0;width:18px;height:10px;}.dashboard .toggle.close{background-position:0 100%;}.dashboard div.close .liste{display:none;}.dashboard .b-c{width:960px !important;height:auto !important;}.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;}.contextMenu li{border-bottom:1px solid #ccc;padding:12px;padding-left:20px;padding-right:20px;list-style-type:none;background:#fff;height:12px;}.contextMenu li:hover{background:#ccc;}.contextMenu li a:hover{text-decoration:none;}.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;}.contextMenu li.head{background:#666b74;font-weight:bold;color:#fff;text-align:center;border-bottom:1px solid #000;}.ac_results{background:#fff;border:1px solid #acacac;color:#666;padding:2px;z-index:100000 !important;}.ac_results li{cursor:pointer;padding:2px;margin:1px;list-style-type:none;}.ac_results li:hover,.ac_over{background:#4e535e;color:#fff;}.ac_results iframe{display:none;}#traduction div table td{padding:5px;background:#dbdde2;color:#333;vertical-align:top;}#traduction div table .odd td{background:#ecedf0;}#traduction div table .save td{background-color:#4e535b;background-image:url(b-h.png);background-repeat:repeat-x;}.error{border:1px solid #f00;}#uploaderContainer{width:970px;height:50px;}.gris{background-color:#ecedf0;} \ No newline at end of file diff --git a/style/ws/merged-b27ad5.css b/style/ws/merged-b27ad5.css new file mode 100644 index 000000000..1e2071ada --- /dev/null +++ b/style/ws/merged-b27ad5.css @@ -0,0 +1 @@ +*,body,html{padding:0;margin:0;}body,html{height:100%;}img{border:0;}hr{border:0;border-bottom:1px solid #ccc;}table{border-collapse:collapse;empty-cells:show;}input[type='checkbox'],input[type='radio']{margin:3px;margin-bottom:3px;}a:focus{-moz-outline:0px dotted !important;}.right{text-align:right !important;}.left{text-align:left !important;}.center{text-align:center !important;}.middle{vertical-align:middle !important;}.top{vertical-align:top !important;}.bottom{vertical-align:bottom !important;}.baseline{vertical-align:baseline !important;}.fullscreen{width:100%;height:100%;}.clear{clear:both;}.block{display:block;}.no-float{float:none !important;}.auto{width:auto !important;height:auto !important;}.wauto{width:auto !important;}.hauto{height:auto !important;}.max{width:100%}.hmax{height:100%;}.min{width:1px;}.hmin{height:1px;}.nowrap{white-space:nowrap;}.nomargin{padding:0;margin:0;}.hide{display:none;}.pemail{visibility:hidden;}.strong{font-weight:bold;}.popupOverlay{opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}#multimulti_0{display:inline;}textarea.markitup{width:640px;height:400px;}.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;}.contextMenu li{border-bottom:1px solid #ccc;padding:5px;list-style-type:none;background:#fff;}.contextMenu li:hover{background:#ccc;}.contextMenu li a:hover{text-decoration:none;}.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;}.contextMenu li.head{background:#ccc;font-weight:bold;color:#000;text-align:center;border-bottom:1px solid #000;}body{height:auto;}body,table{font-family:Verdana;font-size:12px;color:#fff;}a{color:#da4f24;text-decoration:underline;}a:hover{text-decoration:none;}abbr{cursor:help;border-bottom:1px dotted #fff;}td{height:30px;color:#333;}input[type="text"],input[type="password"],select,textarea{color:#666;font-family:Verdana;font-size:12px;}.message{text-align:center;font-size:11px;color:#da4f24;background:#fff;}.closePopup img{margin-top:4px;}.content{width:990px;margin:0 auto;position:relative;}#header{height:94px;background:url(bg-header.png) repeat-x;position:relative;}#logo{position:absolute;top:11px;}#welcome{position:absolute;top:25px;right:10px;font-size:11px;}#welcome.with-search{right:250px;}#search{background:url(search.png) no-repeat;width:229px;height:28px;position:absolute;right:10px;top:20px;}#search input{background:none;border:none;width:180px;position:absolute;top:7px;left:10px;color:#fff;}#search a{margin-left:5px;position:absolute;top:2px;right:3px;}#footer{height:5px;background:#2a303a;overflow:hidden;}#main{background:url(bg-page.png) repeat-x #dbdde2;position:relative;height:439px;padding-top:13px;padding-bottom:30px;}#logo-main{position:fixed;background:url(bg-logo.png) no-repeat;top:180px;left:0px;width:289px;height:419px;}#nav{height:31px;position:absolute;top:63px;width:960px;}#nav a{display:block;float:left;background-position:top left;width:119px;height:31px;margin-right:1px;text-indent:-6667px;}#nav a:hover{background-position:bottom left;}#nav a.active{background-position:bottom left;}.b{margin:0 auto;}.b-c{overflow:hidden;}.b-c>div{background:#fff;}.b-c>div table{width:100%;}.b-nw{background:url(b-nw.png) no-repeat transparent;}.b-n{background:url(b-n.png) repeat-x;}.b-ne{background:url(b-ne.png) no-repeat transparent;}.b-w{background:url(b-w.png) repeat-y transparent;}.b-e{background:url(b-e.png) repeat-y top right transparent;}.b-sw{background:url(b-sw.png) no-repeat bottom left transparent;}.b-s{background:url(b-s.png) repeat-x;}.b-se{background:url(b-se.png) no-repeat transparent;}.b-nw,.b-sw,.b-w{width:12px;max-width:12px;min-width:12px;}.b-ne,.b-se,.b-e{width:11px;max-width:11px;min-width:11px;}.b-n,.b-ne,.b-nw{height:11px;max-height:11px;min-height:11px;}.b-s,.b-se,.b-sw{height:10px;max-height:10px;min-height:10px;}.b-n,.b-s{width:auto;}.b-e,.b-w{height:auto;}.popupOverlay{background:#666;opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;}.popupWindow{display:none;opacity:1;position:fixed;}.popupWindow .close{position:absolute;top:15px;right:15px;}.liste{width:100% !important;min-width:960px;}.liste.form{width:auto !important;min-width:0px !important;}.form th,.form td,.liste th,.liste td{text-align:left;border-bottom:1px solid #fff;font-weight:normal;padding-left:10px;padding-right:10px;}.form th,.form h1,.liste th,.liste h1{color:#fff;font-size:11px;height:31px;font-weight:normal;vertical-align:middle;background:url(b-h.png) repeat-x;padding-left:10px;}.form h1{padding-top:8px;height:22px;}.form td{background:#fff;}.liste td{color:#333;background:#dbdde2;vertical-align:middle;}.form tr.odd td,.liste tr.odd td{background:#ecedf0;}.liste tr.bold td{font-weight:bold;}.liste td.we{background:#DBDDE2 !important;}.liste td.filled,.liste td.highlight,.liste th.highlight{background:#da4f24 !important;}.liste .action{width:1px;}.liste th a{color:#fff;text-decoration:none;font-weight:bold;}.liste th a:hover{text-decoration:underline;}.form td a img,.liste td a img{margin-top:4px;}.listeTimereport input[type="text"]{width:12px;text-align:center;font-size:10px;}.listeTimereport td,.listeTimereport th{padding-left:4px;padding-right:4px;width:16px;}.listeTimereport th .spacer{float:left;}.listeTimereport .normal{text-align:left;vertical-align:middle;padding-left:10px;padding-right:10px;width:auto;}.listeTimereport .info{width:30px;}#devisTop{background:url(../images/devis.png) top left;width:960px;height:500px;}#devisMiddle{background:url(bg-document.png);width:960px;}#devisBottom{background:url(../images/devis.png) bottom left;width:960px;height:300px;}#factureAdresse,#devisAdresse{position:absolute;top:180px;left:520px;height:165px;width:360px;padding:0px;}#factureAdresse input[type="text"],#devisAdresse input[type="text"]{width:100%;}#factureAdresseDisplay,#devisAdresseDisplay{font-size:20px;padding:20px;position:relative;min-height:150px;}#factureAdresseDisplay .tva{font-size:12px;}#factureAdresse .edit,#devisAdresse .edit{position:absolute;top:20px;right:20px;}#devisTitre{position:absolute;left:56px;top:231px;width:411px;height:184px;}#devisLignes{margin-left:30px;}#devisMail{padding:30px;margin-top:30px;border-top:2px solid #000;}#devisMail td{color:#000 !important;}.pager-holder{padding:10px;padding-bottom:0px;float:none;}.pager{text-align:center;}.pager a,.pager strong{padding:2px;height:10px;font-weight:bold;}.pager a{text-decoration:none;}.pager a:hover{text-decoration:none;}.pager.pgleft a{background:#ecedf0;border:1px solid #d9e3ef;color:#5D626A;}.pager.pgleft a:hover,.pager.pgleft strong{background:#ffc600 url(pager-left-active.png) repeat-x bottom left;border:1px solid #ff9d00;color:#7F5500;}.formParPage{padding:5px;float:right;}#bar{background:url(bg-bar.png) repeat-x #fff bottom left;}#bar.vide{height:16px;}#bar .content{height:50px;}.shortcut .note{color:#333;padding:10px;}.shortcut{float:left;margin-left:5px;margin-top:10px;}.filtre{color:#5f6162;width:160px;float:left;margin-left:10px;padding-top:1px;position:relative;}.filtre span{font-size:9px;color:#5f6162;margin-left:5px;cursor:pointer;}.filtre .bt{position:absolute;top:2px;right:3px;width:155px;height:18px;}.filtre .input{width:135px;height:23px;background-image:url(filtres.png);background-repeat:no-repeat;padding:5px;padding-right:20px;margin-left:5px;position:relative;}.filtre .input.active{font-weight:bold;}.filtre ul{display:none;position:absolute;top:36px;left:5px;z-index:20;width:160px;cursor:pointer;}.filtre .input span{font-size:12px;}.filtre ul li.first{padding-top:2px;}.filtre ul li{list-style-type:none;padding-left:20px;background-image:url(filtre-list-m.png);}.filtre ul li.last{background-image:url(filtre-list-b.png);background-position:0 100%;padding-bottom:5px;}.filtre ul li.all{display:none;}.efface_filtres{padding-right:20px;padding-top:10px;float:right;}.dashboard{position:relative;margin-bottom:10px;}.dashboard .caption{position:relative;left:20px;top:10px;display:inline;cursor:move;}.dashboard .edit{position:absolute;right:40px;top:-17px;}.dashboard .delete{position:absolute;right:10px;top:-17px;}.dashboard .toggle{position:absolute;left:12px;top:-10px;background-image:url(arrows.png);background-position:0 0;width:18px;height:10px;}.dashboard .toggle.close{background-position:0 100%;}.dashboard div.close .liste{display:none;}.dashboard .b-c{width:960px !important;height:auto !important;}.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;}.contextMenu li{border-bottom:1px solid #ccc;padding:12px;padding-left:20px;padding-right:20px;list-style-type:none;background:#fff;height:12px;}.contextMenu li:hover{background:#ccc;}.contextMenu li a:hover{text-decoration:none;}.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;}.contextMenu li.head{background:#666b74;font-weight:bold;color:#fff;text-align:center;border-bottom:1px solid #000;}.ac_results{background:#fff;border:1px solid #acacac;color:#666;padding:2px;z-index:100000 !important;}.ac_results li{cursor:pointer;padding:2px;margin:1px;list-style-type:none;}.ac_results li:hover,.ac_over{background:#4e535e;color:#fff;}.ac_results iframe{display:none;}#traduction div table td{padding:5px;background:#dbdde2;color:#333;vertical-align:top;}#traduction div table .odd td{background:#ecedf0;}#traduction div table .save td{background-color:#4e535b;background-image:url(b-h.png);background-repeat:repeat-x;}.error{border:1px solid #f00;} \ No newline at end of file diff --git a/style/ws/pager-left-active.png b/style/ws/pager-left-active.png new file mode 100644 index 000000000..27c5412b8 Binary files /dev/null and b/style/ws/pager-left-active.png differ diff --git a/style/ws/pager-left.png b/style/ws/pager-left.png new file mode 100644 index 000000000..7da45200d Binary files /dev/null and b/style/ws/pager-left.png differ diff --git a/style/ws/search.png b/style/ws/search.png new file mode 100644 index 000000000..9ffa4bdaa Binary files /dev/null and b/style/ws/search.png differ diff --git a/style/ws/style.css b/style/ws/style.css new file mode 100644 index 000000000..08706c890 --- /dev/null +++ b/style/ws/style.css @@ -0,0 +1,432 @@ +body{ + height:auto; + background:#d0d2c5; +} + +body,table{ + font-family:Verdana; + font-size:12px; + color:#797d62; +} + +a{ + color:#f54d00; + text-decoration:underline; +} + +a:hover{ + text-decoration:none; +} + +abbr{cursor:help;border-bottom:1px dotted #797D62;} + +td{height:30px;} + +input[type="text"],input[type="password"],select,textarea{ + color:#797D62; + font-family:Verdana; + font-size:12px; +} + +.message{text-align:center;font-size:11px;color:#da4f24;background:#fff;} +.closePopup img{margin-top:4px;} + +.content{ + width:990px; + margin:0 auto; + position:relative; +} +.big .liste{width:1180px !important;} +.big .liste td{font-size:11px !important;padding-left:5px;padding-right:5px;} +.big .liste th{padding-left:5px;padding-right:5px;} +.big .content{width:1210px;} + +#header{ + height:94px; + background:url(bg-header.png) repeat-x; + position:relative; +} + +#logo{ + position:absolute; + top:11px; +} + +#welcome{ + position:absolute; + top:25px; + right:10px; + font-size:11px; + color:#fff; +} + +#welcome.with-search{ + right:250px; +} + +#search{ + background:url(search.png) no-repeat; + width:229px; + height:28px; + position:absolute; + right:10px; + top:20px; +} + +#search input{ + background:none; + border:none; + width:180px; + position:absolute; + top:7px; + left:10px; + color:#fff; +} + +#search a{ + margin-left:5px; + position:absolute; + top:2px; + right:3px; +} + +#footer{ + display:none; +} + +#main{ + background:url(bg-page.png) repeat-x #d0d2c5 ; + position:relative; + height:439px; + padding-top:13px; + padding-bottom:30px; +} + +#logo-main{ + /*position:fixed; + background:url(bg-logo.png) no-repeat; + top:180px; + left:0px; + width:289px; + height:419px;*/ +} + +#nav{ + height:31px; + position:absolute; + top:63px; + width:960px; +} + +#nav a{ + display:block; + float:left; + background-position:top left; + width:119px; + height:31px; + margin-right:1px; + text-indent:-6667px; +} + +#nav a:hover{ + background-position:bottom left; +} + +#nav a.active{ + background-position:bottom left; +} + + +/* Cadre */ +.b{margin:0 auto;} +.b-c{overflow:hidden;} +.b-c>div{background:#fff;} +.b-c>div table{width:100%;} +.b-nw{background:url(b-nw.png) no-repeat transparent;} +.b-n{background:url(b-n.png) repeat-x;} +.b-ne{background:url(b-ne.png) no-repeat transparent;} +.b-w{background:url(b-w.png) repeat-y transparent;} +.b-e{background:url(b-e.png) repeat-y top right transparent;} +.b-sw{background:url(b-sw.png) no-repeat bottom left transparent;} +.b-s{background:url(b-s.png) repeat-x;} +.b-se{background:url(b-se.png) no-repeat transparent;} + +.b-nw, .b-sw, .b-w{width:12px;max-width:12px;min-width:12px;} +.b-ne, .b-se, .b-e{width:11px;max-width:11px;min-width:11px;} +.b-n, .b-ne, .b-nw{height:11px;max-height:11px;min-height:11px;} +.b-s, .b-se, .b-sw{height:10px;max-height:10px;min-height:10px;} +.b-n, .b-s{width:auto;} +.b-e, .b-w{height:auto;} + +.popupOverlay{background:#a8aa95;opacity:0;position:fixed;display:none;top:0px;left:0px;width:100%;height:100%;} +.popupWindow{display:none;opacity:1;position:fixed;} +/*.popupWindow>table{width:600px;}*/ +.popupWindow .close{position:absolute;top:15px;right:15px;} + +/* Tableaux */ +.liste{width:100% !important;min-width:960px;} +.liste.light{width:100% !important;min-width:0px !important;} +.liste.form{width:auto !important;min-width:0px !important;} +.form h2,.form th,.form td,.liste th, .liste td{text-align:left;border-bottom:1px solid #fff;font-weight:normal;padding-left:10px;padding-right:10px;font-size:12px;min-height:50px;height:38px;} +.form th,.form h1,.liste th,.liste h1{font-size:12px;height:31px;font-weight:bold;vertical-align:middle;background:#fff;padding-left:10px;} +.form tr.big th{height:40px;} +.form h1,.form h2{padding-top:6px;height:26px;} +.form td{background:#fff;} +.form h2,.liste td{background:#eaeaea;vertical-align:middle;} +.form tr.odd td,.liste tr.odd td{background:#f4f4f4;} +.liste td.bouton{padding-left:0px;padding-right:5px;} + +.form tr.light th,.liste tr.light th{ + font-size:12px;background:#fff;height:22px; + border-bottom:1px solid #707070; + margin-bottom:1px; + padding-left:3px; +} + + +.liste tr.bold td{font-weight:bold;} +.liste td.we{background:#e3e3e3 !important;} +.liste td.filled,.liste td.highlight, .liste th.highlight{background:#9abf0c !important;} +.liste .action{width:1px;} +.liste th a{color:#797D62;text-decoration:none;font-weight:bold;} +.liste th a:hover{text-decoration:underline;} + +.form td a img, .liste td a img{margin-top:4px;} + +.listeTimereport input[type="text"]{width:12px;text-align:center;font-size:10px;margin:2px;} +.listeTimereport td, .listeTimereport th{padding-left:4px;padding-right:4px;width:16px;} +.listeTimereport th .spacer{float:left;} +.listeTimereport .normal{text-align:left;vertical-align:middle;padding-left:10px;padding-right:10px;width:auto;} +.listeTimereport .info{width:30px;} +.listeTimereport tr.bold td{border-top:1px solid #4e555c;} + +#devisTop{background:url(../images/devis.png) top left;width:960px;height:500px;} +#devisMiddle{background:url(bg-document.png);width:960px;padding-bottom:20px;} +#devisBottom{background:url(../images/devis.png) bottom left;width:960px;height:300px;} +#factureAdresse,#devisAdresse{position:absolute;top:180px;left:520px;height:165px;width:360px;padding:0px;} +#factureAdresse input[type="text"],#devisAdresse input[type="text"]{width:100%;} +#factureAdresseDisplay,#devisAdresseDisplay{font-size:20px;padding:20px;position:relative;min-height:150px;} +#factureAdresseDisplay .tva{font-size:12px;} +#factureAdresse .edit,#devisAdresse .edit{position:absolute;top:20px;right:20px;} +#devisTitre{position:absolute;left:56px;top:231px;width:411px;height:184px;} +#devisLignes{padding-top:20px;} +.devisLigne{border:1px #9aa2ae dashed;cursor:move;margin-top:20px;margin-left:20px;margin-right:20px;} +.devisLigneLeft{width:700px;padding:20px;} +.devisLigneRight{width:120px;float:right;text-align:center;padding:20px;} + +#devisMail{padding:30px;margin-top:30px;border-top:2px solid #000;} +#devisMail td{color:#000 !important;} + +/* Pagers */ + +.pager-holder{ + padding:10px; + padding-bottom:0px; + float:none; +} +.pager{ + text-align:center; +} +.pager a, .pager strong{ + padding:2px; + height:10px; + font-weight:bold; +} +.pager a{text-decoration:none;} +.pager a:hover{text-decoration:none;} + +/* Pager Left */ +.pager.pgleft a{ + background:transparent; + border:1px solid #9abf0c; + color:#9abf0c; +} +.pager.pgleft a:hover, +.pager.pgleft strong{ + background:#cce56c url(pager-left-active.png) repeat-x bottom left; + border:1px solid #9abf0c; + color:#797d62; +} + +.formParPage{ + padding:5px; + float:right; +} + + +/* Barre de raccourcis */ +#bar{ + background:url(bg-bar.png) repeat-x #fff bottom left; +} + +#bar.vide{ + height:16px; + background:url(bg-bar-vide.png) repeat-x #fff bottom left; +} + +#bar .content{ + height:60px; +} + +.shortcut .note{color:#333;padding:10px;} +.shortcut{float:left;margin-left:5px;margin-top:3px;} +.shortcut .step{margin-top:5px;} + +/* Filtres */ +.filtre{ + color:#5f6162; + width:160px; + float:left; + margin-left:10px; + padding-top:1px; + position:relative; +} +.filtre span{ + font-size:9px; + color:#5f6162; + margin-left:5px; + cursor:pointer; +} +.filtre .bt{ + position:absolute; + top:2px; + right:3px; + width:155px; + height:18px; +} +.filtre .input{ + width:135px; + height:23px; + background-image:url(filtres.png); + background-repeat:no-repeat; + padding:5px; + padding-right:20px; + margin-left:5px; + position:relative; +} +.filtre .input.active{ + font-weight:bold; +} +.filtre ul{ + display:none; + position:absolute; + top:36px; + left:5px; + z-index:20; + width:160px; + cursor:pointer; +} + +.filtre .input span{ + font-size:12px; +} +.filtre ul li.first{ + padding-top:2px; +} +.filtre ul li{ + list-style-type:none; + padding-left:20px; + background-image:url(filtre-list-m.png); +} +.filtre ul li.last{ + background-image:url(filtre-list-b.png); + background-position:0 100%; + padding-bottom:5px; +} +.filtre ul li.all{ + display:none; +} +.efface_filtres{padding-right:20px;padding-top:10px;float:right;} + +/* Dashboard */ +.dashboard{ + position:relative; + margin-bottom:10px; +} +.dashboard .caption{ + position:relative; + left:20px; + top:10px; + display:inline; + cursor:move; +} + +.dashboard .edit{ + position:absolute; + right:40px; + top:-17px; +} + +.dashboard .delete{ + position:absolute; + right:10px; + top:-17px; +} + +.dashboard .toggle{ + position:absolute; + left:12px; + top:-10px; + background-image:url(arrows.png); + background-position:0 0; + width:18px; + height:10px; +} + +.dashboard .toggle.close{ + background-position:0 100%; +} + +.dashboard div.close .liste{ + display:none; +} + +.dashboard .b-c{ + width:960px !important; + height:auto !important; +} + +/* Menu Contextuel */ +.contextMenu{border:1px solid #000;float:left;position:absolute;display:none;z-index:100000;} +.contextMenu li{border-bottom:1px solid #ccc;padding:12px;padding-left:20px;padding-right:20px;list-style-type:none;background:#fff;height:12px;} +.contextMenu li:hover{background:#ccc;} +.contextMenu li a:hover{text-decoration:none;} +.contextMenu li img{margin:5px;margin-right:7px;vertical-align:middle;float:none;} +.contextMenu li.head{background:#666b74;font-weight:bold;color:#fff;text-align:center;border-bottom:1px solid #000;} + +/* Autocomplete */ +.ac_results{ + background:#fff; + border:1px solid #acacac; + color:#666; + padding:2px; + z-index:100000 !important; +} + +.ac_results li{ + cursor:pointer; + padding:2px; + margin:1px; + list-style-type:none; +} + +.ac_results li:hover, .ac_over{ + background:#4e535e; + color:#fff; +} + +.ac_results iframe{ +display:none; +} + +/* Traduction */ +#traduction div table td{padding:5px;background:#dbdde2;color:#333;vertical-align:top;} +#traduction div table .odd td{background:#ecedf0;} +#traduction div table .save td{background-color:#4e535b;background-image:url(b-h.png);background-repeat:repeat-x;} + +/* Erreur */ +.error{border:1px solid #f00;} + +#uploaderContainer{width:970px;height:50px;} + +.gris{background-color:#ecedf0;} \ No newline at end of file diff --git a/swf/composer.lnk b/swf/composer.lnk new file mode 100644 index 000000000..c4071ea40 Binary files /dev/null and b/swf/composer.lnk differ diff --git a/swf/composer.swf b/swf/composer.swf new file mode 100644 index 000000000..08d929af7 Binary files /dev/null and b/swf/composer.swf differ diff --git a/swf/uploader.lnk b/swf/uploader.lnk new file mode 100644 index 000000000..b8c186720 Binary files /dev/null and b/swf/uploader.lnk differ diff --git a/swf/uploader.swf b/swf/uploader.swf new file mode 100644 index 000000000..87db892d3 Binary files /dev/null and b/swf/uploader.swf differ diff --git a/swf/wsComposer.fla b/swf/wsComposer.fla new file mode 100644 index 000000000..a8016fb0e Binary files /dev/null and b/swf/wsComposer.fla differ diff --git a/typo/Univers-CondensedBold.ttf b/typo/Univers-CondensedBold.ttf new file mode 100644 index 000000000..115535fae Binary files /dev/null and b/typo/Univers-CondensedBold.ttf differ diff --git a/typo/extranet/Univers-CondensedBold.ttf b/typo/extranet/Univers-CondensedBold.ttf new file mode 100644 index 000000000..115535fae Binary files /dev/null and b/typo/extranet/Univers-CondensedBold.ttf differ diff --git a/typo/extranet/desc.xml b/typo/extranet/desc.xml new file mode 100644 index 000000000..ea114779e --- /dev/null +++ b/typo/extranet/desc.xml @@ -0,0 +1,354 @@ + + + CubeExtranet + + + + + + + + + + \ No newline at end of file diff --git a/typo/extranet/left-plus.png b/typo/extranet/left-plus.png new file mode 100644 index 000000000..ca14fa45c Binary files /dev/null and b/typo/extranet/left-plus.png differ diff --git a/typo/extranet/left-star.png b/typo/extranet/left-star.png new file mode 100644 index 000000000..f3998918a Binary files /dev/null and b/typo/extranet/left-star.png differ diff --git a/typo/extranet/left.png b/typo/extranet/left.png new file mode 100644 index 000000000..1a5835555 Binary files /dev/null and b/typo/extranet/left.png differ diff --git a/typo/extranet/middle.png b/typo/extranet/middle.png new file mode 100644 index 000000000..dc60c73d8 Binary files /dev/null and b/typo/extranet/middle.png differ diff --git a/typo/extranet/onglet-l.png b/typo/extranet/onglet-l.png new file mode 100644 index 000000000..4a82d01ff Binary files /dev/null and b/typo/extranet/onglet-l.png differ diff --git a/typo/extranet/onglet-m.png b/typo/extranet/onglet-m.png new file mode 100644 index 000000000..e10e59696 Binary files /dev/null and b/typo/extranet/onglet-m.png differ diff --git a/typo/extranet/onglet-r.png b/typo/extranet/onglet-r.png new file mode 100644 index 000000000..21dcfda0e Binary files /dev/null and b/typo/extranet/onglet-r.png differ diff --git a/typo/extranet/onglet.png b/typo/extranet/onglet.png new file mode 100644 index 000000000..5ba900337 Binary files /dev/null and b/typo/extranet/onglet.png differ diff --git a/typo/extranet/right-ok.png b/typo/extranet/right-ok.png new file mode 100644 index 000000000..35d70eaea Binary files /dev/null and b/typo/extranet/right-ok.png differ diff --git a/typo/extranet/right.png b/typo/extranet/right.png new file mode 100644 index 000000000..69c70f5de Binary files /dev/null and b/typo/extranet/right.png differ diff --git a/typo/extranet/small-l-contact.png b/typo/extranet/small-l-contact.png new file mode 100644 index 000000000..ee21d3083 Binary files /dev/null and b/typo/extranet/small-l-contact.png differ diff --git a/typo/extranet/small-l.png b/typo/extranet/small-l.png new file mode 100644 index 000000000..9552ae20e Binary files /dev/null and b/typo/extranet/small-l.png differ diff --git a/typo/extranet/small-m.png b/typo/extranet/small-m.png new file mode 100644 index 000000000..43bfd0ef7 Binary files /dev/null and b/typo/extranet/small-m.png differ diff --git a/typo/extranet/small-r-download.png b/typo/extranet/small-r-download.png new file mode 100644 index 000000000..aa1987603 Binary files /dev/null and b/typo/extranet/small-r-download.png differ diff --git a/typo/extranet/small-r.png b/typo/extranet/small-r.png new file mode 100644 index 000000000..56464c150 Binary files /dev/null and b/typo/extranet/small-r.png differ diff --git a/typo/ws/Univers-CondensedBold.ttf b/typo/ws/Univers-CondensedBold.ttf new file mode 100644 index 000000000..115535fae Binary files /dev/null and b/typo/ws/Univers-CondensedBold.ttf differ diff --git a/typo/ws/delete-left.png b/typo/ws/delete-left.png new file mode 100644 index 000000000..63bc00f69 Binary files /dev/null and b/typo/ws/delete-left.png differ diff --git a/typo/ws/desc.xml b/typo/ws/desc.xml new file mode 100644 index 000000000..b7dfc712f --- /dev/null +++ b/typo/ws/desc.xml @@ -0,0 +1,694 @@ + + + CubeExtranet + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/typo/ws/download-left.png b/typo/ws/download-left.png new file mode 100644 index 000000000..84348e27f Binary files /dev/null and b/typo/ws/download-left.png differ diff --git a/typo/ws/edit-left.png b/typo/ws/edit-left.png new file mode 100644 index 000000000..250752866 Binary files /dev/null and b/typo/ws/edit-left.png differ diff --git a/typo/ws/left-plus.png b/typo/ws/left-plus.png new file mode 100644 index 000000000..9d6d739ac Binary files /dev/null and b/typo/ws/left-plus.png differ diff --git a/typo/ws/left-star.png b/typo/ws/left-star.png new file mode 100644 index 000000000..f3998918a Binary files /dev/null and b/typo/ws/left-star.png differ diff --git a/typo/ws/left.png b/typo/ws/left.png new file mode 100644 index 000000000..e780e16dd Binary files /dev/null and b/typo/ws/left.png differ diff --git a/typo/ws/middle.png b/typo/ws/middle.png new file mode 100644 index 000000000..6ab5e01e1 Binary files /dev/null and b/typo/ws/middle.png differ diff --git a/typo/ws/onglet-l.png b/typo/ws/onglet-l.png new file mode 100644 index 000000000..4a82d01ff Binary files /dev/null and b/typo/ws/onglet-l.png differ diff --git a/typo/ws/onglet-m.png b/typo/ws/onglet-m.png new file mode 100644 index 000000000..e10e59696 Binary files /dev/null and b/typo/ws/onglet-m.png differ diff --git a/typo/ws/onglet-r.png b/typo/ws/onglet-r.png new file mode 100644 index 000000000..21dcfda0e Binary files /dev/null and b/typo/ws/onglet-r.png differ diff --git a/typo/ws/onglet.png b/typo/ws/onglet.png new file mode 100644 index 000000000..4a5ba501f Binary files /dev/null and b/typo/ws/onglet.png differ diff --git a/typo/ws/right-ok.png b/typo/ws/right-ok.png new file mode 100644 index 000000000..35d70eaea Binary files /dev/null and b/typo/ws/right-ok.png differ diff --git a/typo/ws/right.png b/typo/ws/right.png new file mode 100644 index 000000000..d2106cde8 Binary files /dev/null and b/typo/ws/right.png differ diff --git a/typo/ws/see-left.png b/typo/ws/see-left.png new file mode 100644 index 000000000..b4c781c12 Binary files /dev/null and b/typo/ws/see-left.png differ diff --git a/typo/ws/small-l-contact.png b/typo/ws/small-l-contact.png new file mode 100644 index 000000000..ee21d3083 Binary files /dev/null and b/typo/ws/small-l-contact.png differ diff --git a/typo/ws/small-l.png b/typo/ws/small-l.png new file mode 100644 index 000000000..9552ae20e Binary files /dev/null and b/typo/ws/small-l.png differ diff --git a/typo/ws/small-m.png b/typo/ws/small-m.png new file mode 100644 index 000000000..43bfd0ef7 Binary files /dev/null and b/typo/ws/small-m.png differ diff --git a/typo/ws/small-r-download.png b/typo/ws/small-r-download.png new file mode 100644 index 000000000..aa1987603 Binary files /dev/null and b/typo/ws/small-r-download.png differ diff --git a/typo/ws/small-r.png b/typo/ws/small-r.png new file mode 100644 index 000000000..56464c150 Binary files /dev/null and b/typo/ws/small-r.png differ diff --git a/typo/ws/stats-left.png b/typo/ws/stats-left.png new file mode 100644 index 000000000..e1c87b82c Binary files /dev/null and b/typo/ws/stats-left.png differ diff --git a/typo/ws/step-inactive-left.png b/typo/ws/step-inactive-left.png new file mode 100644 index 000000000..921f52335 Binary files /dev/null and b/typo/ws/step-inactive-left.png differ diff --git a/typo/ws/step-inactive-middle.png b/typo/ws/step-inactive-middle.png new file mode 100644 index 000000000..ea98f842a Binary files /dev/null and b/typo/ws/step-inactive-middle.png differ diff --git a/typo/ws/step-inactive-right-arrow.png b/typo/ws/step-inactive-right-arrow.png new file mode 100644 index 000000000..41c433cd4 Binary files /dev/null and b/typo/ws/step-inactive-right-arrow.png differ diff --git a/typo/ws/step-inactive-right.png b/typo/ws/step-inactive-right.png new file mode 100644 index 000000000..1efdb987e Binary files /dev/null and b/typo/ws/step-inactive-right.png differ diff --git a/typo/ws/step-left.png b/typo/ws/step-left.png new file mode 100644 index 000000000..276d3e39a Binary files /dev/null and b/typo/ws/step-left.png differ diff --git a/typo/ws/step-middle.png b/typo/ws/step-middle.png new file mode 100644 index 000000000..84cb99d80 Binary files /dev/null and b/typo/ws/step-middle.png differ diff --git a/typo/ws/step-right-arrow.png b/typo/ws/step-right-arrow.png new file mode 100644 index 000000000..377236bc6 Binary files /dev/null and b/typo/ws/step-right-arrow.png differ diff --git a/typo/ws/step-right.png b/typo/ws/step-right.png new file mode 100644 index 000000000..6d0b29cd6 Binary files /dev/null and b/typo/ws/step-right.png differ diff --git a/typo/ws/verdanab.ttf b/typo/ws/verdanab.ttf new file mode 100644 index 000000000..9ff5923ef Binary files /dev/null and b/typo/ws/verdanab.ttf differ diff --git a/typo/ws/ws-middle.png b/typo/ws/ws-middle.png new file mode 100644 index 000000000..8c84007e9 Binary files /dev/null and b/typo/ws/ws-middle.png differ diff --git a/typo/ws/ws-right.png b/typo/ws/ws-right.png new file mode 100644 index 000000000..5b2533f86 Binary files /dev/null and b/typo/ws/ws-right.png differ