Coser-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
January 2011
- 1 participants
- 174 discussions
r517 - in trunk/coser-web/src/main: resources/fr/ifremer/coser/web webapp/WEB-INF/content/com webapp/WEB-INF/content/map webapp/WEB-INF/content/pop webapp/WEB-INF/content/source
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
17 Jan '11
Author: chatellier
Date: 2011-01-17 13:47:01 +0000 (Mon, 17 Jan 2011)
New Revision: 517
Log:
Update i18n
Modified:
trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties
trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties
trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties
trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp
Modified: trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties
===================================================================
--- trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties 2011-01-17 13:44:46 UTC (rev 516)
+++ trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties 2011-01-17 13:47:01 UTC (rev 517)
@@ -49,4 +49,5 @@
message.common.selectzone=Select a zone
message.common.selectfacade=Select a facade
message.common.selectindicator=Select an indicator
-message.source.download=Download
\ No newline at end of file
+message.source.download=Download
+message.common.noresults=No results available
\ No newline at end of file
Modified: trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties
===================================================================
--- trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties 2011-01-17 13:44:46 UTC (rev 516)
+++ trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties 2011-01-17 13:47:01 UTC (rev 517)
@@ -43,6 +43,7 @@
message.common.selectzone=Select a zone
message.common.selectfacade=Select a facade
message.common.selectindicator=Select an indicator
+message.common.noresults=No results available
message.source.download=Download
message.quality.paragraph1=Bien que les donn\u00E9es aient \u00E9t\u00E9 pr\u00E9cautionneusement contr\u00F4l\u00E9es par l''Ifremer, des d\u00E9fauts inh\u00E9rents \u00E0 l''agr\u00E9gation des informations peuvent persister. Par exemple\u00A0:
message.quality.paragraph2=En d\u00E9pit du fait que toutes les donn\u00E9es de toutes les s\u00E9ries de campagnes soient pr\u00E9sent\u00E9es selon le m\u00EAme format, sauf cas particuliers des diff\u00E9rences dans les strat\u00E9gies d''observation emp\u00EAchent la combinaison de donn\u00E9es de diff\u00E9rentes campagnes dans une m\u00EAme analyse. Par exemple, la capturabilit\u00E9 d\'une m\u00EAme esp\u00E8ce varie selon le type d''engin d''\u00E9chantillonnage utilis\u00E9. Il en r\u00E9sulte que chaque engin capture un sous-ensemble particulier des bioc\u00E9noses \u00E9chantillonn\u00E9es.
Modified: trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties
===================================================================
--- trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties 2011-01-17 13:44:46 UTC (rev 516)
+++ trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties 2011-01-17 13:47:01 UTC (rev 517)
@@ -43,6 +43,7 @@
message.common.selectzone=Selectionnez une zone
message.common.selectfacade=Selectionnez une facade
message.common.selectindicator=Selectionnez un indicateur
+message.common.noresults=Aucun résultat disponible
message.source.download=T\u00E9l\u00E9charger
message.quality.paragraph1=Bien que les donn\u00E9es aient \u00E9t\u00E9 pr\u00E9cautionneusement contr\u00F4l\u00E9es par l''Ifremer, des d\u00E9fauts inh\u00E9rents \u00E0 l''agr\u00E9gation des informations peuvent persister. Par exemple\u00A0:
message.quality.paragraph2=En d\u00E9pit du fait que toutes les donn\u00E9es de toutes les s\u00E9ries de campagnes soient pr\u00E9sent\u00E9es selon le m\u00EAme format, sauf cas particuliers des diff\u00E9rences dans les strat\u00E9gies d''observation emp\u00EAchent la combinaison de donn\u00E9es de diff\u00E9rentes campagnes dans une m\u00EAme analyse. Par exemple, la capturabilit\u00E9 d\'une m\u00EAme esp\u00E8ce varie selon le type d''engin d''\u00E9chantillonnage utilis\u00E9. Il en r\u00E9sulte que chaque engin capture un sous-ensemble particulier des bioc\u00E9noses \u00E9chantillonn\u00E9es.
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp 2011-01-17 13:47:01 UTC (rev 517)
@@ -35,7 +35,7 @@
<br />
<s:if test="%{zones.isEmpty()}">
- No result founds
+ <s:text name="message.common.noresults"></s:text>
</s:if>
<s:else>
<s:form action="indicator" method="get">
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp 2011-01-17 13:47:01 UTC (rev 517)
@@ -35,7 +35,7 @@
<br />
<s:if test="%{zones.isEmpty()}">
- No result founds
+ <s:text name="message.common.noresults"></s:text>
</s:if>
<s:else>
<s:form action="species" method="get">
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp 2011-01-17 13:47:01 UTC (rev 517)
@@ -48,7 +48,7 @@
<br />
<s:if test="%{zones.isEmpty()}">
- No result founds
+ <s:text name="message.common.noresults"></s:text>
</s:if>
<s:else>
<s:form action="species" method="get">
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp 2011-01-17 13:47:01 UTC (rev 517)
@@ -35,7 +35,7 @@
<br />
<s:if test="%{zones.isEmpty()}">
- No result founds
+ <s:text name="message.common.noresults"></s:text>
</s:if>
<s:else>
<s:form action="source" method="get">
1
0
r516 - in trunk/coser-web/src/main: resources/fr/ifremer/coser/web webapp/WEB-INF/content webapp/WEB-INF/content/com webapp/WEB-INF/content/map webapp/WEB-INF/content/pop webapp/WEB-INF/content/source webapp/WEB-INF/decorators webapp/styles
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
17 Jan '11
Author: chatellier
Date: 2011-01-17 13:44:46 +0000 (Mon, 17 Jan 2011)
New Revision: 516
Log:
Update i18n
Modified:
trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties
trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties
trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties
trunk/coser-web/src/main/webapp/WEB-INF/content/com/facade.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/com/indicator.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/map/facade.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/map/species.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/facade.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/source/source.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp
trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp
trunk/coser-web/src/main/webapp/styles/coser.css
Modified: trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties
===================================================================
--- trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package.properties 2011-01-17 13:44:46 UTC (rev 516)
@@ -45,3 +45,8 @@
message.quality.paragraph3=Une propri\u00E9t\u00E9 commune aux s\u00E9ries d''observations \u00E0 la mer est l''\u00E9volution dans le temps de la comp\u00E9tence des \u00E9quipes embarqu\u00E9es pour la d\u00E9termination des esp\u00E8ces. Il peut en r\u00E9sulter des apparitions, des disparitions ou des assignations sous un m\u00EAme nom de taxons proches dans les jeux de donn\u00E9es, non repr\u00E9sentatifs de l''\u00E9volution des populations concern\u00E9es dans l''\u00E9cosyst\u00E8me.
message.quality.paragraph4=Pour les campagnes d\'une m\u00EAme s\u00E9rie, des changements dans les proc\u00E9dures d''\u00E9chantillonnage, dans les caract\u00E9ristiques des engins, dans la p\u00E9riode de r\u00E9alisation de la campagne et la zone couverte peuvent influencer les captures. Pour pr\u00E9venir les risques de biais dans les analyses en raison de ces facteurs, les jeux de donn\u00E9es doivent \u00EAtre pr\u00E9alablement filtr\u00E9s ad\u00E9quatement.
message.quality.paragraph5=Il est vivement recommand\u00E9 aux utilisateurs de donn\u00E9es de les traiter avec pr\u00E9caution. Si des utilisateurs s''interrogent sur la validit\u00E9 de donn\u00E9es, ils sont invit\u00E9s \u00E0 contacter l''administrateur de la base de donn\u00E9es ({0}).
+message.common.selectpop=Select a population
+message.common.selectzone=Select a zone
+message.common.selectfacade=Select a facade
+message.common.selectindicator=Select an indicator
+message.source.download=Download
\ No newline at end of file
Modified: trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties
===================================================================
--- trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_en.properties 2011-01-17 13:44:46 UTC (rev 516)
@@ -39,3 +39,13 @@
message.index.quotemessage=Ifremer {0,date,yyyy}. Indices de populations et de communautés issus des campagnes de surveillance halieutique de l''Ifremer. {1} ({0,date,dd MMMM})
message.index.qualitytitle=Avertissement qualit\u00E9
message.index.qualitymessage=Avertissement qualit\u00E9
+message.common.selectpop=Select a population
+message.common.selectzone=Select a zone
+message.common.selectfacade=Select a facade
+message.common.selectindicator=Select an indicator
+message.source.download=Download
+message.quality.paragraph1=Bien que les donn\u00E9es aient \u00E9t\u00E9 pr\u00E9cautionneusement contr\u00F4l\u00E9es par l''Ifremer, des d\u00E9fauts inh\u00E9rents \u00E0 l''agr\u00E9gation des informations peuvent persister. Par exemple\u00A0:
+message.quality.paragraph2=En d\u00E9pit du fait que toutes les donn\u00E9es de toutes les s\u00E9ries de campagnes soient pr\u00E9sent\u00E9es selon le m\u00EAme format, sauf cas particuliers des diff\u00E9rences dans les strat\u00E9gies d''observation emp\u00EAchent la combinaison de donn\u00E9es de diff\u00E9rentes campagnes dans une m\u00EAme analyse. Par exemple, la capturabilit\u00E9 d\'une m\u00EAme esp\u00E8ce varie selon le type d''engin d''\u00E9chantillonnage utilis\u00E9. Il en r\u00E9sulte que chaque engin capture un sous-ensemble particulier des bioc\u00E9noses \u00E9chantillonn\u00E9es.
+message.quality.paragraph3=Une propri\u00E9t\u00E9 commune aux s\u00E9ries d''observations \u00E0 la mer est l''\u00E9volution dans le temps de la comp\u00E9tence des \u00E9quipes embarqu\u00E9es pour la d\u00E9termination des esp\u00E8ces. Il peut en r\u00E9sulter des apparitions, des disparitions ou des assignations sous un m\u00EAme nom de taxons proches dans les jeux de donn\u00E9es, non repr\u00E9sentatifs de l''\u00E9volution des populations concern\u00E9es dans l''\u00E9cosyst\u00E8me.
+message.quality.paragraph4=Pour les campagnes d\'une m\u00EAme s\u00E9rie, des changements dans les proc\u00E9dures d''\u00E9chantillonnage, dans les caract\u00E9ristiques des engins, dans la p\u00E9riode de r\u00E9alisation de la campagne et la zone couverte peuvent influencer les captures. Pour pr\u00E9venir les risques de biais dans les analyses en raison de ces facteurs, les jeux de donn\u00E9es doivent \u00EAtre pr\u00E9alablement filtr\u00E9s ad\u00E9quatement.
+message.quality.paragraph5=Il est vivement recommand\u00E9 aux utilisateurs de donn\u00E9es de les traiter avec pr\u00E9caution. Si des utilisateurs s''interrogent sur la validit\u00E9 de donn\u00E9es, ils sont invit\u00E9s \u00E0 contacter l''administrateur de la base de donn\u00E9es ({0}).
Modified: trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties
===================================================================
--- trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/resources/fr/ifremer/coser/web/package_fr.properties 2011-01-17 13:44:46 UTC (rev 516)
@@ -21,7 +21,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# #L%
###
-message.layout.title=Indices de populations et de communauté issus des campagnes de surveillance halieutique de l'Ifremer
+message.layout.title=Indices de populations et de communauté issus des campagnes de surveillance halieutique de l''Ifremer
message.layout.oceanicdatatitle=Gestion des donn\u00E9es des campagnes oc\u00E9anographiques
message.layout.oceanicdata1=le Syst\u00E8me d'informations scientifiques pour la mer de l'Ifremer (SISMER)
message.layout.oceanicdata2=le Syst\u00E8me d'information halieutique de l'Ifremer (SIH)
@@ -39,3 +39,13 @@
message.index.quotemessage=Ifremer {0,date,yyyy}. Indices de populations et de communautés issus des campagnes de surveillance halieutique de l''Ifremer. {1} ({0,date,dd MMMM})
message.index.qualitytitle=Avertissement qualit\u00E9
message.index.qualitymessage=Avertissement qualit\u00E9
+message.common.selectpop=Selectionnez un population
+message.common.selectzone=Selectionnez une zone
+message.common.selectfacade=Selectionnez une facade
+message.common.selectindicator=Selectionnez un indicateur
+message.source.download=T\u00E9l\u00E9charger
+message.quality.paragraph1=Bien que les donn\u00E9es aient \u00E9t\u00E9 pr\u00E9cautionneusement contr\u00F4l\u00E9es par l''Ifremer, des d\u00E9fauts inh\u00E9rents \u00E0 l''agr\u00E9gation des informations peuvent persister. Par exemple\u00A0:
+message.quality.paragraph2=En d\u00E9pit du fait que toutes les donn\u00E9es de toutes les s\u00E9ries de campagnes soient pr\u00E9sent\u00E9es selon le m\u00EAme format, sauf cas particuliers des diff\u00E9rences dans les strat\u00E9gies d''observation emp\u00EAchent la combinaison de donn\u00E9es de diff\u00E9rentes campagnes dans une m\u00EAme analyse. Par exemple, la capturabilit\u00E9 d\'une m\u00EAme esp\u00E8ce varie selon le type d''engin d''\u00E9chantillonnage utilis\u00E9. Il en r\u00E9sulte que chaque engin capture un sous-ensemble particulier des bioc\u00E9noses \u00E9chantillonn\u00E9es.
+message.quality.paragraph3=Une propri\u00E9t\u00E9 commune aux s\u00E9ries d''observations \u00E0 la mer est l''\u00E9volution dans le temps de la comp\u00E9tence des \u00E9quipes embarqu\u00E9es pour la d\u00E9termination des esp\u00E8ces. Il peut en r\u00E9sulter des apparitions, des disparitions ou des assignations sous un m\u00EAme nom de taxons proches dans les jeux de donn\u00E9es, non repr\u00E9sentatifs de l''\u00E9volution des populations concern\u00E9es dans l''\u00E9cosyst\u00E8me.
+message.quality.paragraph4=Pour les campagnes d\'une m\u00EAme s\u00E9rie, des changements dans les proc\u00E9dures d''\u00E9chantillonnage, dans les caract\u00E9ristiques des engins, dans la p\u00E9riode de r\u00E9alisation de la campagne et la zone couverte peuvent influencer les captures. Pour pr\u00E9venir les risques de biais dans les analyses en raison de ces facteurs, les jeux de donn\u00E9es doivent \u00EAtre pr\u00E9alablement filtr\u00E9s ad\u00E9quatement.
+message.quality.paragraph5=Il est vivement recommand\u00E9 aux utilisateurs de donn\u00E9es de les traiter avec pr\u00E9caution. Si des utilisateurs s''interrogent sur la validit\u00E9 de donn\u00E9es, ils sont invit\u00E9s \u00E0 contacter l''administrateur de la base de donn\u00E9es ({0}).
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/com/facade.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/com/facade.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/com/facade.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -35,7 +35,7 @@
<br />
<s:form action="zone" method="get">
- <s:select name="facade" list="facades" label="Select a facade" />
+ <s:select name="facade" list="facades" label="%{getText('message.common.selectfacade')}" />
<s:submit label="Suite"/>
</s:form>
</body>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/com/indicator.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/com/indicator.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/com/indicator.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -35,7 +35,7 @@
<br />
<s:form action="graph" method="get">
- <s:select name="indicator" list="indicators" label="Select an indicator" />
+ <s:select name="indicator" list="indicators" label="%{getText('message.common.selectindicator')}" />
<s:hidden name="zone" property="zone"/>
<s:hidden name="species" property="species"/>
<s:submit label="Suite"/>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/com/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -39,7 +39,7 @@
</s:if>
<s:else>
<s:form action="indicator" method="get">
- <s:select name="zone" list="zones" label="Select a sub zone" />
+ <s:select name="zone" list="zones" label="%{getText('message.common.selectzone')}" />
<s:submit label="Suite"/>
</s:form>
</s:else>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -35,7 +35,7 @@
<p><s:text name="message.index.paragraph3" /></p>
<p>
- <span style="font-weight:bold"><s:text name="message.index.datatypetitle" /> :</span><br />
+ <h2><s:text name="message.index.datatypetitle" /></h2>
<ul>
<li><s:a action="facade" namespace='/source'><s:text name="message.index.datatype1" /></s:a></li>
<li><s:a action="facade" namespace='/map'><s:text name="message.index.datatype2" /></s:a></li>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/map/facade.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/map/facade.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/map/facade.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -35,7 +35,7 @@
<br />
<s:form action="zone" method="get">
- <s:select name="facade" list="facades" label="Select a facade" />
+ <s:select name="facade" list="facades" label="%{getText('message.common.selectfacade')}" />
<s:submit label="Suite"/>
</s:form>
</body>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/map/species.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/map/species.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/map/species.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -36,7 +36,7 @@
<br />
<s:form action="map" method="get">
- <s:select name="species" list="species" label="Select a species" />
+ <s:select name="species" list="species" label="%{getText('message.common.selectspecies')}" />
<s:hidden name="zone" property="zone"/>
<s:submit label="Suite"/>
</s:form>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/map/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -39,7 +39,7 @@
</s:if>
<s:else>
<s:form action="species" method="get">
- <s:select name="zone" list="zones" label="Select a sub zone" />
+ <s:select name="zone" list="zones" label="%{getText('message.common.selectzone')}" />
<s:submit label="Suite"/>
</s:form>
</s:else>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/facade.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/facade.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/facade.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -35,7 +35,7 @@
<br />
<s:form action="zone" method="get">
- <s:select name="facade" list="facades" label="Select a facade" />
+ <s:select name="facade" list="facades" label="%{getText('message.common.selectfacade')}" />
<s:submit label="Suite"/>
</s:form>
</body>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -36,7 +36,7 @@
<br />
<s:form action="graph" method="get">
- <s:select name="indicator" list="indicators" label="Select an indicator" />
+ <s:select name="indicator" list="indicators" label="%{getText('message.common.selectindicator')}" />
<s:hidden name="zone" property="zone"/>
<s:hidden name="species" property="species"/>
<s:submit label="Suite"/>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -37,7 +37,7 @@
<br />
<s:form action="indicator" method="get">
- <s:select name="species" list="species" label="Select a species" />
+ <s:select name="species" list="species" label="%{getText('message.common.selectspecies')}" />
<s:hidden name="zone" property="zone"/>
<s:submit label="Suite"/>
</s:form>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -52,7 +52,7 @@
</s:if>
<s:else>
<s:form action="species" method="get">
- <s:select name="zone" list="zones" label="Select a sub zone" emptyOption="true"
+ <s:select name="zone" list="zones" label="%{getText('message.common.selectpop')}" emptyOption="true"
onchange="javascript:coserShowSelectedZoneMap(this, 'coserzonemap')"/>
<s:submit label="Suite"/>
</s:form>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -36,7 +36,7 @@
<br />
<s:form action="zone" method="get">
- <s:select name="facade" list="facades" label="Select a facade" />
+ <s:select name="facade" list="facades" label="%{getText('message.common.selectfacade')}" />
<s:submit label="Suite"/>
</s:form>
</body>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/source/source.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/source/source.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/source/source.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -32,7 +32,7 @@
<s:a action="source-data">
<s:param name="zone" value="%{zone}" />
- Download
+ <s:text name="message.source.download"></s:text>
</s:a>.
</body>
</html>
\ No newline at end of file
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/source/zone.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -39,7 +39,7 @@
</s:if>
<s:else>
<s:form action="source" method="get">
- <s:select name="zone" list="zones" label="Select a sub zone" />
+ <s:select name="zone" list="zones" label="%{getText('message.common.selectzone')}" />
<s:submit label="Suite"/>
</s:form>
</s:else>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -34,14 +34,15 @@
<decorator:head/>
</head>
<body>
-
+
<div id="conteneur">
<div id="head" class="clearfix">
- <a href="#" class="logoSIH">Système d'Information Halieutique</a>
- <h1>Indices de populations et de communauté <br/>
- issus des campagnes de <span class="jaune">surveillance halieutique</span> de <span class="jaune">l'Ifremer </span>
+ <a href="http://www.ifremer.fr/sih/" class="logoSIH">Système d'Information Halieutique</a>
+ <h1><!-- Indices de populations et de communauté <br/>
+ issus des campagnes de <span class="jaune">surveillance halieutique</span> de <span class="jaune">l'Ifremer </span> -->
+ <s:text name="message.layout.title" />
</h1>
- <a href="#" class="logoIfremer">L'Ifremer</a>
+ <a href="http://www.ifremer.fr/" class="logoIfremer">L'Ifremer</a>
</div>
<div id="middle" class="clearfix">
@@ -50,8 +51,13 @@
<div class="content">
<div class="degrade">
<div class="top_content">
- <a href="<s:url action='index' />" class="accueil">Accueil</a>
- <a href="<s:url action='index' />" class="anglais">Anglais</a>
+ <a href="<s:url action='index' namespace='/' />" class="accueil"><s:text name="message.index.title" /></a>
+ <a href="<s:url namespace="/" action="locale">
+ <s:param name="request_locale" >en</s:param>
+ </s:url>" class="anglais">Anglais</a>
+ <a href="<s:url namespace="/" action="locale">
+ <s:param name="request_locale" >fr</s:param>
+ </s:url>" class="francais">Francais</a>
</div>
<decorator:body/>
@@ -66,8 +72,8 @@
<div class="mgt20">
<h3><s:text name="message.layout.oceanicdatatitle" /></h3>
<ul>
- <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata1" /></a></li>
- <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata2" /></a></li>
+ <li><a href="http://www.ifremer.fr/sismer/index_FR.htm" class="lien"><s:text name="message.layout.oceanicdata1" /></a></li>
+ <li><a href="http://www.ifremer.fr/sih/" class="lien"><s:text name="message.layout.oceanicdata2" /></a></li>
</ul>
</div>
</div>
@@ -75,7 +81,7 @@
</div>
<div id="footer">
<ul class="clearfix">
- <li><a href="#">Contact</a></li>
+ <li><a href="harmonie at ifremer.fr">Contact</a></li>
<li><a href="#">Mentions Légales</a></li>
</ul>
</div>
Modified: trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp 2011-01-17 13:44:46 UTC (rev 516)
@@ -37,18 +37,24 @@
<div id="conteneur_int">
<div id="head" class="clearfix">
- <a href="#" class="logoSIH">Système d'Information Halieutique</a>
- <h1>Indices de populations et de communauté <br/>
- issus des campagnes de <span class="jaune">surveillance halieutique</span> de <span class="jaune">l'Ifremer </span>
+ <a href="http://www.ifremer.fr/sih/" class="logoSIH">Système d'Information Halieutique</a>
+ <h1><!-- Indices de populations et de communauté <br/>
+ issus des campagnes de <span class="jaune">surveillance halieutique</span> de <span class="jaune">l'Ifremer </span> -->
+ <s:text name="message.layout.title" />
</h1>
- <a href="#" class="logoIfremer">L'Ifremer</a>
+ <a href="http://www.ifremer.fr/" class="logoIfremer">L'Ifremer</a>
</div>
<div id="middle" class="clearfix">
<div class="top_content clearfix">
- <a href="<s:url action='index' />" class="accueil">Accueil</a>
- <a href="<s:url action='index' />" class="anglais">Anglais</a>
+ <a href="<s:url action='index' namespace='/' />" class="accueil"><s:text name="message.index.title" /></a>
+ <a href="<s:url namespace="/" action="locale">
+ <s:param name="request_locale" >en</s:param>
+ </s:url>" class="anglais">Anglais</a>
+ <a href="<s:url namespace="/" action="locale">
+ <s:param name="request_locale" >fr</s:param>
+ </s:url>" class="francais">Francais</a>
</div>
<div class="page">
@@ -68,8 +74,8 @@
<div>
<h3><s:text name="message.layout.oceanicdatatitle" /></h3>
<ul>
- <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata1" /></a></li>
- <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata2" /></a></li>
+ <li><a href="http://www.ifremer.fr/sismer/index_FR.htm" class="lien"><s:text name="message.layout.oceanicdata1" /></a></li>
+ <li><a href="http://www.ifremer.fr/sih/" class="lien"><s:text name="message.layout.oceanicdata2" /></a></li>
</ul>
</div>
</div>
@@ -78,7 +84,7 @@
</div>
<div id="footer">
<ul class="clearfix">
- <li><a href="#">Contact</a></li>
+ <li><a href="harmonie at ifremer.fr">Contact</a></li>
<li><a href="#">Mentions Légales</a></li>
</ul>
</div>
Modified: trunk/coser-web/src/main/webapp/styles/coser.css
===================================================================
--- trunk/coser-web/src/main/webapp/styles/coser.css 2011-01-17 12:53:39 UTC (rev 515)
+++ trunk/coser-web/src/main/webapp/styles/coser.css 2011-01-17 13:44:46 UTC (rev 516)
@@ -435,15 +435,31 @@
position: absolute;
right: 0;
top: 10px;
- width: 32px;
- height: 24px;
- border: 2px solid #fff;
+ width: 16px;
+ height: 11px;
+ border: 2px solid transparent;
}
#middle .top_content .anglais:hover {
border: 2px solid #ffe600;
}
+#middle .top_content .francais {
+ display: block;
+ text-indent: -999999px;
+ background: url(../images/fr.png) no-repeat;
+ position: absolute;
+ right: 20px;
+ top: 10px;
+ width: 16px;
+ height: 11px;
+ border: 2px solid transparent;
+}
+
+#middle .top_content .francais:hover {
+ border: 2px solid #ffe600;
+}
+
#middle .page .degrade ul li {
list-style: none;
padding-left: 10px;
@@ -517,7 +533,7 @@
background: url(../images/footer.png) repeat-x;
height: 45px;
padding: 10px 20px 15px 20px;
- margin: 30px 0;
+ /*margin: 30px 0;*/
position: relative;
}
@@ -560,6 +576,12 @@
right: 20px;
}
+#conteneur_int .top_content .francais {
+ position: absolute;
+ top: 22px;
+ right: 40px;
+}
+
#conteneur_int #middle .col_droite {
margin: 0;
}
1
0
r515 - trunk/coser-web/src/main/webapp/WEB-INF/content
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
17 Jan '11
Author: chatellier
Date: 2011-01-17 12:53:39 +0000 (Mon, 17 Jan 2011)
New Revision: 515
Log:
Use namespace in action
Modified:
trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp 2011-01-17 11:00:45 UTC (rev 514)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp 2011-01-17 12:53:39 UTC (rev 515)
@@ -37,10 +37,10 @@
<p>
<span style="font-weight:bold"><s:text name="message.index.datatypetitle" /> :</span><br />
<ul>
- <li><s:a action="source/facade"><s:text name="message.index.datatype1" /></s:a></li>
- <li><s:a action="map/facade"><s:text name="message.index.datatype2" /></s:a></li>
- <li><s:a action="pop/facade"><s:text name="message.index.datatype3" /></s:a></li>
- <li><s:a action="com/facade"><s:text name="message.index.datatype4" /></s:a></li>
+ <li><s:a action="facade" namespace='/source'><s:text name="message.index.datatype1" /></s:a></li>
+ <li><s:a action="facade" namespace='/map'><s:text name="message.index.datatype2" /></s:a></li>
+ <li><s:a action="facade" namespace='/pop'><s:text name="message.index.datatype3" /></s:a></li>
+ <li><s:a action="facade" namespace='/com'><s:text name="message.index.datatype4" /></s:a></li>
</ul>
</p>
1
0
r514 - in trunk: coser-business/src/main/java/fr/ifremer/coser/services coser-web/src/main/java/fr/ifremer/coser/web/actions/pop coser-web/src/main/webapp coser-web/src/main/webapp/WEB-INF coser-web/src/main/webapp/WEB-INF/content/pop coser-web/src/main/webapp/WEB-INF/content/source coser-web/src/main/webapp/WEB-INF/decorators coser-web/src/main/webapp/images coser-web/src/main/webapp/images/zones coser-web/src/main/webapp/js
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
17 Jan '11
Author: chatellier
Date: 2011-01-17 11:00:45 +0000 (Mon, 17 Jan 2011)
New Revision: 514
Log:
Add sublayout and zone maps.
Added:
trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp
trunk/coser-web/src/main/webapp/images/zones/
trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4b-4c.jpg
trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c-E7d.jpg
trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c.jpg
trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c4-E7d.jpg
trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c4.jpg
trunk/coser-web/src/main/webapp/images/zones/C_Ciem-7d.jpg
trunk/coser-web/src/main/webapp/images/zones/C_Ciem-E7d.jpg
trunk/coser-web/src/main/webapp/images/zones/C_E-Corse.jpg
trunk/coser-web/src/main/webapp/images/zones/C_GdG-Ciem-7.jpg
trunk/coser-web/src/main/webapp/images/zones/C_GdG-Ech.jpg
trunk/coser-web/src/main/webapp/images/zones/C_GdG-MC.jpg
trunk/coser-web/src/main/webapp/images/zones/C_GdL.jpg
trunk/coser-web/src/main/webapp/images/zones/C_MC-Ciem-7.jpg
trunk/coser-web/src/main/webapp/images/zones/C_MC-Ech.jpg
trunk/coser-web/src/main/webapp/images/zones/C_Noursein.jpg
trunk/coser-web/src/main/webapp/js/
trunk/coser-web/src/main/webapp/js/coser.js
trunk/coser-web/src/main/webapp/js/jquery-1.4.4.min.js
Modified:
trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java
trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/pop/ZoneAction.java
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp
trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp
trunk/coser-web/src/main/webapp/WEB-INF/decorators.xml
trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java 2011-01-17 11:00:45 UTC (rev 514)
@@ -787,6 +787,44 @@
}
/**
+ * Recupere la liste des cartes pour chaque id de zone sous forme de Map.
+ *
+ * @return zone images map
+ * @throws CoserBusinessException
+ */
+ public Map<String, String> getZonePictures() throws CoserBusinessException {
+ Map<String, String> result = new HashMap<String, String>();
+
+ Iterator<String[]> itZone = getZonesMap().iterator(true);
+ while (itZone.hasNext()) {
+ // "id";"facade";"zone";"periode";"serie";"comment";"map"
+ String[] tuple = itZone.next();
+ result.put(tuple[0], tuple[6]);
+ }
+
+ return result;
+ }
+
+ /**
+ * Recupere la liste des meta info pour chaque id de zone sous forme de Map.
+ *
+ * @return zone meta info map
+ * @throws CoserBusinessException
+ */
+ public Map<String, String> getZoneMetaInfo() throws CoserBusinessException {
+ Map<String, String> result = new HashMap<String, String>();
+
+ Iterator<String[]> itZone = getZonesMap().iterator(true);
+ while (itZone.hasNext()) {
+ // "id";"facade";"zone";"periode";"serie";"comment";"map"
+ String[] tuple = itZone.next();
+ result.put(tuple[0], tuple[5]);
+ }
+
+ return result;
+ }
+
+ /**
* Recuperer la liste des populations pour une zone donnée.
*
* @param zone zone id
Modified: trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/pop/ZoneAction.java
===================================================================
--- trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/pop/ZoneAction.java 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/pop/ZoneAction.java 2011-01-17 11:00:45 UTC (rev 514)
@@ -47,26 +47,38 @@
protected String facade;
+ protected Map<String, String> zones;
+
+ protected Map<String, String> zonesPictures;
+
+ protected Map<String, String> zonesMetaInfo;
+
public void setFacade(String facade) {
this.facade = facade;
}
- protected Map<String, String> zones;
-
public Map<String, String> getZones() {
return zones;
}
+ public Map<String, String> getZonesPictures() {
+ return zonesPictures;
+ }
+
+ public Map<String, String> getZonesMetaInfo() {
+ return zonesMetaInfo;
+ }
+
@Override
public String execute() {
WebService webService = ServiceFactory.getWebService();
+
try {
-
- // renvoi la liste des id subzone-survey et leurs label
- // associé
+ // renvoi la liste des id subzone-survey et leurs label associé
zones = webService.getZoneForFacade(facade);
-
+ zonesPictures = webService.getZonePictures();
+ zonesMetaInfo = webService.getZoneMetaInfo();
} catch (CoserBusinessException ex) {
throw new CoserWebException("Can't get zone map", ex);
}
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/indicator.jsp 2011-01-17 11:00:45 UTC (rev 514)
@@ -30,6 +30,7 @@
<title>Coser</title>
</head>
<body>
+
<img src="<s:url value='/images/zonesmap.jpg' />" />
<br />
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/species.jsp 2011-01-17 11:00:45 UTC (rev 514)
@@ -31,6 +31,7 @@
</head>
<body>
+
<img src="<s:url value='/images/zonesmap.jpg' />" />
<br />
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/pop/zone.jsp 2011-01-17 11:00:45 UTC (rev 514)
@@ -27,11 +27,24 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Coser</title>
+ <script type="text/javascript" language="javascript" src="<s:url value='/js/coser.js' />"></script>
</head>
<body>
- <img src="<s:url value='/images/zonesmap.jpg' />" />
+ <s:iterator value="zonesPictures.entrySet()">
+ <div id="coserzonemap<s:property value='%{key}' />" style="display:none">
+ <div>
+ <img src="<s:url value='/images/zones/' /><s:property value='%{value}' />" style="width: 590px; heigth: 812px"/>
+ </div>
+ <s:property value='%{zonesMetaInfo.get(key)}' />
+ </div>
+ </s:iterator>
+
+ <div id="coserzonemap">
+ <img src="<s:url value='/images/zonesmap.jpg' />" />
+ </div>
+
<br />
<s:if test="%{zones.isEmpty()}">
@@ -39,9 +52,11 @@
</s:if>
<s:else>
<s:form action="species" method="get">
- <s:select name="zone" list="zones" label="Select a sub zone" />
+ <s:select name="zone" list="zones" label="Select a sub zone" emptyOption="true"
+ onchange="javascript:coserShowSelectedZoneMap(this, 'coserzonemap')"/>
<s:submit label="Suite"/>
</s:form>
</s:else>
+
</body>
</html>
\ No newline at end of file
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/source/facade.jsp 2011-01-17 11:00:45 UTC (rev 514)
@@ -30,6 +30,7 @@
</head>
<body>
+
<img src="<s:url value='/images/zonesmap.jpg' />" />
<br />
Modified: trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp 2011-01-17 11:00:45 UTC (rev 514)
@@ -29,6 +29,7 @@
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><decorator:title default="Coser"/></title>
+ <script type="text/javascript" language="javascript" src="<s:url value='/js/jquery-1.4.4.min.js' />"></script>
<link rel="stylesheet" type="text/css" href="<s:url value='/styles/coser.css' />" />
<decorator:head/>
</head>
@@ -44,6 +45,7 @@
</div>
<div id="middle" class="clearfix">
+
<div class="page">
<div class="content">
<div class="degrade">
@@ -58,7 +60,7 @@
</div>
<span class="clb"> </span>
- </div>
+ </div>
<div class="col_droite">
<img src="<s:url value='/images/carte_accueil.png'/>" alt="carte des zones de campage en europe" title="carte des zones de campage en europe"/>
<div class="mgt20">
Added: trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp (rev 0)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators/sublayout.jsp 2011-01-17 11:00:45 UTC (rev 514)
@@ -0,0 +1,86 @@
+<!--
+ #%L
+ Coser :: Web
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2010 - 2011 Ifremer, Codelutin, Chatellier Eric
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #L%
+ -->
+<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<%@taglib uri="/struts-tags" prefix="s" %>
+<%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator" %>
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <title><decorator:title default="Coser"/></title>
+ <script type="text/javascript" language="javascript" src="<s:url value='/js/jquery-1.4.4.min.js' />"></script>
+ <link rel="stylesheet" type="text/css" href="<s:url value='/styles/coser.css' />" />
+ <decorator:head/>
+ </head>
+ <body>
+
+ <div id="conteneur_int">
+ <div id="head" class="clearfix">
+ <a href="#" class="logoSIH">Système d'Information Halieutique</a>
+ <h1>Indices de populations et de communauté <br/>
+ issus des campagnes de <span class="jaune">surveillance halieutique</span> de <span class="jaune">l'Ifremer </span>
+ </h1>
+ <a href="#" class="logoIfremer">L'Ifremer</a>
+ </div>
+
+ <div id="middle" class="clearfix">
+
+ <div class="top_content clearfix">
+ <a href="<s:url action='index' />" class="accueil">Accueil</a>
+ <a href="<s:url action='index' />" class="anglais">Anglais</a>
+ </div>
+
+ <div class="page">
+ <span class="clt"></span>
+ <div class="content">
+ <div class="clearfix">
+
+ <decorator:body/>
+
+ </div>
+ </div>
+
+ <span class="clb2"> </span>
+ </div>
+ <div class="part_bottom">
+ <div class="col_droite">
+ <div>
+ <h3><s:text name="message.layout.oceanicdatatitle" /></h3>
+ <ul>
+ <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata1" /></a></li>
+ <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata2" /></a></li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div id="footer">
+ <ul class="clearfix">
+ <li><a href="#">Contact</a></li>
+ <li><a href="#">Mentions Légales</a></li>
+ </ul>
+ </div>
+ </body>
+</html>
\ No newline at end of file
Modified: trunk/coser-web/src/main/webapp/WEB-INF/decorators.xml
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators.xml 2011-01-17 09:23:20 UTC (rev 513)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators.xml 2011-01-17 11:00:45 UTC (rev 514)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2010 - 2011 Ifremer, Codelutin
+ Copyright (C) 2010 - 2011 Ifremer, Codelutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
@@ -22,12 +22,19 @@
#L%
-->
<decorators defaultdir="/WEB-INF/decorators">
- <excludes>
- <pattern>/styles/*</pattern>
- <pattern>/images/*</pattern>
- </excludes>
-
- <decorator name="layout" page="layout.jsp">
- <pattern>/*</pattern>
- </decorator>
+ <excludes>
+ <pattern>/styles/*</pattern>
+ <pattern>/images/*</pattern>
+ </excludes>
+
+ <decorator name="layout" page="layout.jsp">
+ <pattern>/*</pattern>
+ </decorator>
+
+ <decorator name="sublayout" page="sublayout.jsp">
+ <pattern>/pop/*</pattern>
+ <pattern>/com/*</pattern>
+ <pattern>/map/*</pattern>
+ <pattern>/source/*</pattern>
+ </decorator>
</decorators>
\ No newline at end of file
Added: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4b-4c.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4b-4c.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c-E7d.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c-E7d.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c4-E7d.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c4-E7d.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c4.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-4c4.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-7d.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-7d.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-E7d.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Ciem-E7d.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_E-Corse.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_E-Corse.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_GdG-Ciem-7.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_GdG-Ciem-7.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_GdG-Ech.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_GdG-Ech.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_GdG-MC.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_GdG-MC.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_GdL.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_GdL.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_MC-Ciem-7.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_MC-Ciem-7.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_MC-Ech.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_MC-Ech.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/zones/C_Noursein.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/zones/C_Noursein.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/js/coser.js
===================================================================
--- trunk/coser-web/src/main/webapp/js/coser.js (rev 0)
+++ trunk/coser-web/src/main/webapp/js/coser.js 2011-01-17 11:00:45 UTC (rev 514)
@@ -0,0 +1,7 @@
+
+function coserShowSelectedZoneMap(select, prefix) {
+ // cache toutes les autres cartes
+ $('div[id^=' + prefix + ']').hide();
+ // affiche la carte selectionnee
+ $('#' + prefix + $(select).val()).show();
+}
\ No newline at end of file
Added: trunk/coser-web/src/main/webapp/js/jquery-1.4.4.min.js
===================================================================
--- trunk/coser-web/src/main/webapp/js/jquery-1.4.4.min.js (rev 0)
+++ trunk/coser-web/src/main/webapp/js/jquery-1.4.4.min.js 2011-01-17 11:00:45 UTC (rev 514)
@@ -0,0 +1,167 @@
+/*!
+ * jQuery JavaScript Library v1.4.4
+ * http://jquery.com/
+ *
+ * Copyright 2010, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2010, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Thu Nov 11 19:04:53 2010 -0500
+ */
+(function(E,B){function ka(a,b,d){if(d===B&&a.nodeType===1){d=a.getAttribute("data-"+b);if(typeof d==="string"){try{d=d==="true"?true:d==="false"?false:d==="null"?null:!c.isNaN(d)?parseFloat(d):Ja.test(d)?c.parseJSON(d):d}catch(e){}c.data(a,b,d)}else d=B}return d}function U(){return false}function ca(){return true}function la(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ka(a){var b,d,e,f,h,l,k,o,x,r,A,C=[];f=[];h=c.data(this,this.nodeType?"events":"__events__");if(typeof h==="function")h=
+h.events;if(!(a.liveFired===this||!h||!h.live||a.button&&a.type==="click")){if(a.namespace)A=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var J=h.live.slice(0);for(k=0;k<J.length;k++){h=J[k];h.origType.replace(X,"")===a.type?f.push(h.selector):J.splice(k--,1)}f=c(a.target).closest(f,a.currentTarget);o=0;for(x=f.length;o<x;o++){r=f[o];for(k=0;k<J.length;k++){h=J[k];if(r.selector===h.selector&&(!A||A.test(h.namespace))){l=r.elem;e=null;if(h.preType==="mouseenter"||
+h.preType==="mouseleave"){a.type=h.preType;e=c(a.relatedTarget).closest(h.selector)[0]}if(!e||e!==l)C.push({elem:l,handleObj:h,level:r.level})}}}o=0;for(x=C.length;o<x;o++){f=C[o];if(d&&f.level>d)break;a.currentTarget=f.elem;a.data=f.handleObj.data;a.handleObj=f.handleObj;A=f.handleObj.origHandler.apply(f.elem,arguments);if(A===false||a.isPropagationStopped()){d=f.level;if(A===false)b=false;if(a.isImmediatePropagationStopped())break}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(La,
+"`").replace(Ma,"&")}function ma(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Na.test(b))return c.filter(b,e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function na(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,
+e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var l in e[h])c.event.add(this,h,e[h][l],e[h][l].data)}}})}function Oa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function oa(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?Pa:Qa,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,
+"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function da(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Ra.test(a)?e(a,h):da(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)?e(a,""):c.each(b,function(f,h){da(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(pa.concat.apply([],pa.slice(0,b)),function(){d[this]=a});return d}function qa(a){if(!ea[a]){var b=c("<"+
+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";ea[a]=d}return ea[a]}function fa(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var t=E.document,c=function(){function a(){if(!b.isReady){try{t.documentElement.doScroll("left")}catch(j){setTimeout(a,1);return}b.ready()}}var b=function(j,s){return new b.fn.init(j,s)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,l=/\S/,k=/^\s+/,o=/\s+$/,x=/\W/,r=/\d/,A=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,
+C=/^[\],:{}\s]*$/,J=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,I=/(?:^|:|,)(?:\s*\[)+/g,L=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,i=/(msie) ([\w.]+)/,n=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false,q=[],u,y=Object.prototype.toString,F=Object.prototype.hasOwnProperty,M=Array.prototype.push,N=Array.prototype.slice,O=String.prototype.trim,D=Array.prototype.indexOf,R={};b.fn=b.prototype={init:function(j,
+s){var v,z,H;if(!j)return this;if(j.nodeType){this.context=this[0]=j;this.length=1;return this}if(j==="body"&&!s&&t.body){this.context=t;this[0]=t.body;this.selector="body";this.length=1;return this}if(typeof j==="string")if((v=h.exec(j))&&(v[1]||!s))if(v[1]){H=s?s.ownerDocument||s:t;if(z=A.exec(j))if(b.isPlainObject(s)){j=[t.createElement(z[1])];b.fn.attr.call(j,s,true)}else j=[H.createElement(z[1])];else{z=b.buildFragment([v[1]],[H]);j=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,
+j)}else{if((z=t.getElementById(v[2]))&&z.parentNode){if(z.id!==v[2])return f.find(j);this.length=1;this[0]=z}this.context=t;this.selector=j;return this}else if(!s&&!x.test(j)){this.selector=j;this.context=t;j=t.getElementsByTagName(j);return b.merge(this,j)}else return!s||s.jquery?(s||f).find(j):b(s).find(j);else if(b.isFunction(j))return f.ready(j);if(j.selector!==B){this.selector=j.selector;this.context=j.context}return b.makeArray(j,this)},selector:"",jquery:"1.4.4",length:0,size:function(){return this.length},
+toArray:function(){return N.call(this,0)},get:function(j){return j==null?this.toArray():j<0?this.slice(j)[0]:this[j]},pushStack:function(j,s,v){var z=b();b.isArray(j)?M.apply(z,j):b.merge(z,j);z.prevObject=this;z.context=this.context;if(s==="find")z.selector=this.selector+(this.selector?" ":"")+v;else if(s)z.selector=this.selector+"."+s+"("+v+")";return z},each:function(j,s){return b.each(this,j,s)},ready:function(j){b.bindReady();if(b.isReady)j.call(t,b);else q&&q.push(j);return this},eq:function(j){return j===
+-1?this.slice(j):this.slice(j,+j+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(j){return this.pushStack(b.map(this,function(s,v){return j.call(s,v,s)}))},end:function(){return this.prevObject||b(null)},push:M,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var j,s,v,z,H,G=arguments[0]||{},K=1,Q=arguments.length,ga=false;
+if(typeof G==="boolean"){ga=G;G=arguments[1]||{};K=2}if(typeof G!=="object"&&!b.isFunction(G))G={};if(Q===K){G=this;--K}for(;K<Q;K++)if((j=arguments[K])!=null)for(s in j){v=G[s];z=j[s];if(G!==z)if(ga&&z&&(b.isPlainObject(z)||(H=b.isArray(z)))){if(H){H=false;v=v&&b.isArray(v)?v:[]}else v=v&&b.isPlainObject(v)?v:{};G[s]=b.extend(ga,v,z)}else if(z!==B)G[s]=z}return G};b.extend({noConflict:function(j){E.$=e;if(j)E.jQuery=d;return b},isReady:false,readyWait:1,ready:function(j){j===true&&b.readyWait--;
+if(!b.readyWait||j!==true&&!b.isReady){if(!t.body)return setTimeout(b.ready,1);b.isReady=true;if(!(j!==true&&--b.readyWait>0))if(q){var s=0,v=q;for(q=null;j=v[s++];)j.call(t,b);b.fn.trigger&&b(t).trigger("ready").unbind("ready")}}},bindReady:function(){if(!p){p=true;if(t.readyState==="complete")return setTimeout(b.ready,1);if(t.addEventListener){t.addEventListener("DOMContentLoaded",u,false);E.addEventListener("load",b.ready,false)}else if(t.attachEvent){t.attachEvent("onreadystatechange",u);E.attachEvent("onload",
+b.ready);var j=false;try{j=E.frameElement==null}catch(s){}t.documentElement.doScroll&&j&&a()}}},isFunction:function(j){return b.type(j)==="function"},isArray:Array.isArray||function(j){return b.type(j)==="array"},isWindow:function(j){return j&&typeof j==="object"&&"setInterval"in j},isNaN:function(j){return j==null||!r.test(j)||isNaN(j)},type:function(j){return j==null?String(j):R[y.call(j)]||"object"},isPlainObject:function(j){if(!j||b.type(j)!=="object"||j.nodeType||b.isWindow(j))return false;if(j.constructor&&
+!F.call(j,"constructor")&&!F.call(j.constructor.prototype,"isPrototypeOf"))return false;for(var s in j);return s===B||F.call(j,s)},isEmptyObject:function(j){for(var s in j)return false;return true},error:function(j){throw j;},parseJSON:function(j){if(typeof j!=="string"||!j)return null;j=b.trim(j);if(C.test(j.replace(J,"@").replace(w,"]").replace(I,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(j):(new Function("return "+j))();else b.error("Invalid JSON: "+j)},noop:function(){},globalEval:function(j){if(j&&
+l.test(j)){var s=t.getElementsByTagName("head")[0]||t.documentElement,v=t.createElement("script");v.type="text/javascript";if(b.support.scriptEval)v.appendChild(t.createTextNode(j));else v.text=j;s.insertBefore(v,s.firstChild);s.removeChild(v)}},nodeName:function(j,s){return j.nodeName&&j.nodeName.toUpperCase()===s.toUpperCase()},each:function(j,s,v){var z,H=0,G=j.length,K=G===B||b.isFunction(j);if(v)if(K)for(z in j){if(s.apply(j[z],v)===false)break}else for(;H<G;){if(s.apply(j[H++],v)===false)break}else if(K)for(z in j){if(s.call(j[z],
+z,j[z])===false)break}else for(v=j[0];H<G&&s.call(v,H,v)!==false;v=j[++H]);return j},trim:O?function(j){return j==null?"":O.call(j)}:function(j){return j==null?"":j.toString().replace(k,"").replace(o,"")},makeArray:function(j,s){var v=s||[];if(j!=null){var z=b.type(j);j.length==null||z==="string"||z==="function"||z==="regexp"||b.isWindow(j)?M.call(v,j):b.merge(v,j)}return v},inArray:function(j,s){if(s.indexOf)return s.indexOf(j);for(var v=0,z=s.length;v<z;v++)if(s[v]===j)return v;return-1},merge:function(j,
+s){var v=j.length,z=0;if(typeof s.length==="number")for(var H=s.length;z<H;z++)j[v++]=s[z];else for(;s[z]!==B;)j[v++]=s[z++];j.length=v;return j},grep:function(j,s,v){var z=[],H;v=!!v;for(var G=0,K=j.length;G<K;G++){H=!!s(j[G],G);v!==H&&z.push(j[G])}return z},map:function(j,s,v){for(var z=[],H,G=0,K=j.length;G<K;G++){H=s(j[G],G,v);if(H!=null)z[z.length]=H}return z.concat.apply([],z)},guid:1,proxy:function(j,s,v){if(arguments.length===2)if(typeof s==="string"){v=j;j=v[s];s=B}else if(s&&!b.isFunction(s)){v=
+s;s=B}if(!s&&j)s=function(){return j.apply(v||this,arguments)};if(j)s.guid=j.guid=j.guid||s.guid||b.guid++;return s},access:function(j,s,v,z,H,G){var K=j.length;if(typeof s==="object"){for(var Q in s)b.access(j,Q,s[Q],z,H,v);return j}if(v!==B){z=!G&&z&&b.isFunction(v);for(Q=0;Q<K;Q++)H(j[Q],s,z?v.call(j[Q],Q,H(j[Q],s)):v,G);return j}return K?H(j[0],s):B},now:function(){return(new Date).getTime()},uaMatch:function(j){j=j.toLowerCase();j=L.exec(j)||g.exec(j)||i.exec(j)||j.indexOf("compatible")<0&&n.exec(j)||
+[];return{browser:j[1]||"",version:j[2]||"0"}},browser:{}});b.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(j,s){R["[object "+s+"]"]=s.toLowerCase()});m=b.uaMatch(m);if(m.browser){b.browser[m.browser]=true;b.browser.version=m.version}if(b.browser.webkit)b.browser.safari=true;if(D)b.inArray=function(j,s){return D.call(s,j)};if(!/\s/.test("\u00a0")){k=/^[\s\xA0]+/;o=/[\s\xA0]+$/}f=b(t);if(t.addEventListener)u=function(){t.removeEventListener("DOMContentLoaded",u,
+false);b.ready()};else if(t.attachEvent)u=function(){if(t.readyState==="complete"){t.detachEvent("onreadystatechange",u);b.ready()}};return E.jQuery=E.$=b}();(function(){c.support={};var a=t.documentElement,b=t.createElement("script"),d=t.createElement("div"),e="script"+c.now();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var f=d.getElementsByTagName("*"),h=d.getElementsByTagName("a")[0],l=t.createElement("select"),
+k=l.appendChild(t.createElement("option"));if(!(!f||!f.length||!h)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(h.getAttribute("style")),hrefNormalized:h.getAttribute("href")==="/a",opacity:/^0.55$/.test(h.style.opacity),cssFloat:!!h.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:k.selected,deleteExpando:true,optDisabled:false,checkClone:false,
+scriptEval:false,noCloneEvent:true,boxModel:null,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableHiddenOffsets:true};l.disabled=true;c.support.optDisabled=!k.disabled;b.type="text/javascript";try{b.appendChild(t.createTextNode("window."+e+"=1;"))}catch(o){}a.insertBefore(b,a.firstChild);if(E[e]){c.support.scriptEval=true;delete E[e]}try{delete b.test}catch(x){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function r(){c.support.noCloneEvent=
+false;d.detachEvent("onclick",r)});d.cloneNode(true).fireEvent("onclick")}d=t.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=t.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var r=t.createElement("div");r.style.width=r.style.paddingLeft="1px";t.body.appendChild(r);c.boxModel=c.support.boxModel=r.offsetWidth===2;if("zoom"in r.style){r.style.display="inline";r.style.zoom=
+1;c.support.inlineBlockNeedsLayout=r.offsetWidth===2;r.style.display="";r.innerHTML="<div style='width:4px;'></div>";c.support.shrinkWrapBlocks=r.offsetWidth!==2}r.innerHTML="<table><tr><td style='padding:0;display:none'></td><td>t</td></tr></table>";var A=r.getElementsByTagName("td");c.support.reliableHiddenOffsets=A[0].offsetHeight===0;A[0].style.display="";A[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&A[0].offsetHeight===0;r.innerHTML="";t.body.removeChild(r).style.display=
+"none"});a=function(r){var A=t.createElement("div");r="on"+r;var C=r in A;if(!C){A.setAttribute(r,"return;");C=typeof A[r]==="function"}return C};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();var ra={},Ja=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?ra:a;var e=a.nodeType,f=e?a[c.expando]:null,h=
+c.cache;if(!(e&&!f&&typeof b==="string"&&d===B)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]=c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==B)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?ra:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);
+else if(d)delete f[e];else for(var l in a)delete a[l]}},acceptData:function(a){if(a.nodeName){var b=c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){var d=null;if(typeof a==="undefined"){if(this.length){var e=this[0].attributes,f;d=c.data(this[0]);for(var h=0,l=e.length;h<l;h++){f=e[h].name;if(f.indexOf("data-")===0){f=f.substr(5);ka(this[0],f,d[f])}}}return d}else if(typeof a==="object")return this.each(function(){c.data(this,
+a)});var k=a.split(".");k[1]=k[1]?"."+k[1]:"";if(b===B){d=this.triggerHandler("getData"+k[1]+"!",[k[0]]);if(d===B&&this.length){d=c.data(this[0],a);d=ka(this[0],a,d)}return d===B&&k[1]?this.data(k[0]):d}else return this.each(function(){var o=c(this),x=[k[0],b];o.triggerHandler("setData"+k[1]+"!",x);c.data(this,a,b);o.triggerHandler("changeData"+k[1]+"!",x)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=
+c.data(a,b);if(!d)return e||[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===B)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,
+a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var sa=/[\n\t]/g,ha=/\s+/,Sa=/\r/g,Ta=/^(?:href|src|style)$/,Ua=/^(?:button|input)$/i,Va=/^(?:button|input|object|select|textarea)$/i,Wa=/^a(?:rea)?$/i,ta=/^(?:radio|checkbox)$/i;c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",
+colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(x){var r=c(this);r.addClass(a.call(this,x,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===
+1)if(f.className){for(var h=" "+f.className+" ",l=f.className,k=0,o=b.length;k<o;k++)if(h.indexOf(" "+b[k]+" ")<0)l+=" "+b[k];f.className=c.trim(l)}else f.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(o){var x=c(this);x.removeClass(a.call(this,o,x.attr("class")))});if(a&&typeof a==="string"||a===B)for(var b=(a||"").split(ha),d=0,e=this.length;d<e;d++){var f=this[d];if(f.nodeType===1&&f.className)if(a){for(var h=(" "+f.className+" ").replace(sa," "),
+l=0,k=b.length;l<k;l++)h=h.replace(" "+b[l]+" "," ");f.className=c.trim(h)}else f.className=""}return this},toggleClass:function(a,b){var d=typeof a,e=typeof b==="boolean";if(c.isFunction(a))return this.each(function(f){var h=c(this);h.toggleClass(a.call(this,f,h.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var f,h=0,l=c(this),k=b,o=a.split(ha);f=o[h++];){k=e?k:!l.hasClass(f);l[k?"addClass":"removeClass"](f)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,
+"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(sa," ").indexOf(a)>-1)return true;return false},val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";
+if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h<e;h++){var l=f[h];if(l.selected&&(c.support.optDisabled?!l.disabled:l.getAttribute("disabled")===null)&&(!l.parentNode.disabled||!c.nodeName(l.parentNode,"optgroup"))){a=c(l).val();if(b)return a;d.push(a)}}return d}if(ta.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Sa,"")}return B}var k=c.isFunction(a);return this.each(function(o){var x=c(this),r=a;if(this.nodeType===1){if(k)r=
+a.call(this,o,x.val());if(r==null)r="";else if(typeof r==="number")r+="";else if(c.isArray(r))r=c.map(r,function(C){return C==null?"":C+""});if(c.isArray(r)&&ta.test(this.type))this.checked=c.inArray(x.val(),r)>=0;else if(c.nodeName(this,"select")){var A=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),A)>=0});if(!A.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},
+attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return B;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==B;b=e&&c.props[b]||b;var h=Ta.test(b);if((b in a||a[b]!==B)&&e&&!h){if(f){b==="type"&&Ua.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&
+b.specified?b.value:Va.test(a.nodeName)||Wa.test(a.nodeName)&&a.href?0:B;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return B;a=!c.support.hrefNormalized&&e&&h?a.getAttribute(b,2):a.getAttribute(b);return a===null?B:a}});var X=/\.(.*)$/,ia=/^(?:textarea|input|select)$/i,La=/\./g,Ma=/ /g,Xa=/[^\w\s.|`]/g,Ya=function(a){return a.replace(Xa,"\\$&")},ua={focusin:0,focusout:0};
+c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;else if(!d)return;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var l=a.nodeType?"events":"__events__",k=h[l],o=h.handle;if(typeof k==="function"){o=k.handle;k=k.events}else if(!k){a.nodeType||(h[l]=h=function(){});h.events=k={}}if(!o)h.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,
+arguments):B};o.elem=a;b=b.split(" ");for(var x=0,r;l=b[x++];){h=f?c.extend({},f):{handler:d,data:e};if(l.indexOf(".")>-1){r=l.split(".");l=r.shift();h.namespace=r.slice(0).sort().join(".")}else{r=[];h.namespace=""}h.type=l;if(!h.guid)h.guid=d.guid;var A=k[l],C=c.event.special[l]||{};if(!A){A=k[l]=[];if(!C.setup||C.setup.call(a,e,r,o)===false)if(a.addEventListener)a.addEventListener(l,o,false);else a.attachEvent&&a.attachEvent("on"+l,o)}if(C.add){C.add.call(a,h);if(!h.handler.guid)h.handler.guid=
+d.guid}A.push(h);c.event.global[l]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,l=0,k,o,x,r,A,C,J=a.nodeType?"events":"__events__",w=c.data(a),I=w&&w[J];if(w&&I){if(typeof I==="function"){w=I;I=I.events}if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in I)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[l++];){r=f;k=f.indexOf(".")<0;o=[];if(!k){o=f.split(".");f=o.shift();x=RegExp("(^|\\.)"+
+c.map(o.slice(0).sort(),Ya).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(A=I[f])if(d){r=c.event.special[f]||{};for(h=e||0;h<A.length;h++){C=A[h];if(d.guid===C.guid){if(k||x.test(C.namespace)){e==null&&A.splice(h--,1);r.remove&&r.remove.call(a,C)}if(e!=null)break}}if(A.length===0||e!=null&&A.length===1){if(!r.teardown||r.teardown.call(a,o)===false)c.removeEvent(a,f,w.handle);delete I[f]}}else for(h=0;h<A.length;h++){C=A[h];if(k||x.test(C.namespace)){c.event.remove(a,r,C.handler,h);A.splice(h--,1)}}}if(c.isEmptyObject(I)){if(b=
+w.handle)b.elem=null;delete w.events;delete w.handle;if(typeof w==="function")c.removeData(a,J);else c.isEmptyObject(w)&&c.removeData(a)}}}}},trigger:function(a,b,d,e){var f=a.type||a;if(!e){a=typeof a==="object"?a[c.expando]?a:c.extend(c.Event(f),a):c.Event(f);if(f.indexOf("!")>=0){a.type=f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===
+8)return B;a.result=B;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)===false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){var l;e=a.target;var k=f.replace(X,""),o=c.nodeName(e,"a")&&k===
+"click",x=c.event.special[k]||{};if((!x._default||x._default.call(d,a)===false)&&!o&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[k]){if(l=e["on"+k])e["on"+k]=null;c.event.triggered=true;e[k]()}}catch(r){}if(l)e["on"+k]=l;c.event.triggered=false}}},handle:function(a){var b,d,e,f;d=[];var h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+
+d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var l=d.length;f<l;f++){var k=d[f];if(b||e.test(k.namespace)){a.handler=k.handler;a.data=k.data;a.handleObj=k;k=k.handler.apply(this,h);if(k!==B){a.result=k;if(k===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
+fix:function(a){if(a[c.expando])return a;var b=a;a=c.Event(b);for(var d=this.props.length,e;d;){e=this.props[--d];a[e]=b[e]}if(!a.target)a.target=a.srcElement||t;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=t.documentElement;d=t.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
+d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(a.which==null&&(a.charCode!=null||a.keyCode!=null))a.which=a.charCode!=null?a.charCode:a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==B)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,Y(a.origType,a.selector),c.extend({},a,{handler:Ka,guid:a.handler.guid}))},remove:function(a){c.event.remove(this,
+Y(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,d){if(c.isWindow(this))this.onbeforeunload=d},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};c.removeEvent=t.removeEventListener?function(a,b,d){a.removeEventListener&&a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent&&a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=
+c.now();this[c.expando]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=ca;var a=this.originalEvent;if(a)if(a.preventDefault)a.preventDefault();else a.returnValue=false},stopPropagation:function(){this.isPropagationStopped=ca;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=ca;this.stopPropagation()},isDefaultPrevented:U,isPropagationStopped:U,isImmediatePropagationStopped:U};
+var va=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},wa=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?wa:va,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?wa:va)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!==
+"form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length){a.liveFired=B;return la("submit",this,arguments)}});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13){a.liveFired=B;return la("submit",this,arguments)}})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var V,
+xa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ia.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=xa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===B||f===e))if(e!=null||f){a.type="change";a.liveFired=
+B;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",xa(a))}},setup:function(){if(this.type===
+"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ia.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ia.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}t.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){ua[b]++===0&&t.addEventListener(a,d,true)},teardown:function(){--ua[b]===
+0&&t.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=B}var l=b==="one"?c.proxy(f,function(o){c(this).unbind(o,l);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var k=this.length;h<k;h++)c.event.add(this[h],d,l,e)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,
+a[d]);else{d=0;for(var e=this.length;d<e;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,e){return this.live(b,d,e,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var d=c.Event(a);d.preventDefault();d.stopPropagation();c.event.trigger(d,b,this[0]);return d.result}},toggle:function(a){for(var b=arguments,d=
+1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(e){var f=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,f+1);e.preventDefault();return b[f].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var ya={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,e,f,h){var l,k=0,o,x,r=h||this.selector;h=h?this:c(this.context);if(typeof d===
+"object"&&!d.preventDefault){for(l in d)h[b](l,e,d[l],r);return this}if(c.isFunction(e)){f=e;e=B}for(d=(d||"").split(" ");(l=d[k++])!=null;){o=X.exec(l);x="";if(o){x=o[0];l=l.replace(X,"")}if(l==="hover")d.push("mouseenter"+x,"mouseleave"+x);else{o=l;if(l==="focus"||l==="blur"){d.push(ya[l]+x);l+=x}else l=(ya[l]||l)+x;if(b==="live"){x=0;for(var A=h.length;x<A;x++)c.event.add(h[x],"live."+Y(l,r),{data:e,selector:r,handler:f,origType:l,origHandler:f,preType:o})}else h.unbind("live."+Y(l,r),f)}}return this}});
+c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d,e){if(e==null){e=d;d=null}return arguments.length>0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});
+(function(){function a(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1&&!q){y.sizcache=n;y.sizset=p}if(y.nodeName.toLowerCase()===i){F=y;break}y=y[g]}m[p]=F}}}function b(g,i,n,m,p,q){p=0;for(var u=m.length;p<u;p++){var y=m[p];if(y){var F=false;for(y=y[g];y;){if(y.sizcache===n){F=m[y.sizset];break}if(y.nodeType===1){if(!q){y.sizcache=n;y.sizset=p}if(typeof i!=="string"){if(y===i){F=true;break}}else if(k.filter(i,
+[y]).length>0){F=y;break}}y=y[g]}m[p]=F}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,l=true;[0,0].sort(function(){l=false;return 0});var k=function(g,i,n,m){n=n||[];var p=i=i||t;if(i.nodeType!==1&&i.nodeType!==9)return[];if(!g||typeof g!=="string")return n;var q,u,y,F,M,N=true,O=k.isXML(i),D=[],R=g;do{d.exec("");if(q=d.exec(R)){R=q[3];D.push(q[1]);if(q[2]){F=q[3];
+break}}}while(q);if(D.length>1&&x.exec(g))if(D.length===2&&o.relative[D[0]])u=L(D[0]+D[1],i);else for(u=o.relative[D[0]]?[i]:k(D.shift(),i);D.length;){g=D.shift();if(o.relative[g])g+=D.shift();u=L(g,u)}else{if(!m&&D.length>1&&i.nodeType===9&&!O&&o.match.ID.test(D[0])&&!o.match.ID.test(D[D.length-1])){q=k.find(D.shift(),i,O);i=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]}if(i){q=m?{expr:D.pop(),set:C(m)}:k.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&i.parentNode?i.parentNode:i,O);u=q.expr?k.filter(q.expr,
+q.set):q.set;if(D.length>0)y=C(u);else N=false;for(;D.length;){q=M=D.pop();if(o.relative[M])q=D.pop();else M="";if(q==null)q=i;o.relative[M](y,q,O)}}else y=[]}y||(y=u);y||k.error(M||g);if(f.call(y)==="[object Array]")if(N)if(i&&i.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&k.contains(i,y[g])))n.push(u[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&n.push(u[g]);else n.push.apply(n,y);else C(y,n);if(F){k(F,p,n,m);k.uniqueSort(n)}return n};k.uniqueSort=function(g){if(w){h=
+l;g.sort(w);if(h)for(var i=1;i<g.length;i++)g[i]===g[i-1]&&g.splice(i--,1)}return g};k.matches=function(g,i){return k(g,null,null,i)};k.matchesSelector=function(g,i){return k(i,null,null,[g]).length>0};k.find=function(g,i,n){var m;if(!g)return[];for(var p=0,q=o.order.length;p<q;p++){var u,y=o.order[p];if(u=o.leftMatch[y].exec(g)){var F=u[1];u.splice(1,1);if(F.substr(F.length-1)!=="\\"){u[1]=(u[1]||"").replace(/\\/g,"");m=o.find[y](u,i,n);if(m!=null){g=g.replace(o.match[y],"");break}}}}m||(m=i.getElementsByTagName("*"));
+return{set:m,expr:g}};k.filter=function(g,i,n,m){for(var p,q,u=g,y=[],F=i,M=i&&i[0]&&k.isXML(i[0]);g&&i.length;){for(var N in o.filter)if((p=o.leftMatch[N].exec(g))!=null&&p[2]){var O,D,R=o.filter[N];D=p[1];q=false;p.splice(1,1);if(D.substr(D.length-1)!=="\\"){if(F===y)y=[];if(o.preFilter[N])if(p=o.preFilter[N](p,F,n,y,m,M)){if(p===true)continue}else q=O=true;if(p)for(var j=0;(D=F[j])!=null;j++)if(D){O=R(D,p,j,F);var s=m^!!O;if(n&&O!=null)if(s)q=true;else F[j]=false;else if(s){y.push(D);q=true}}if(O!==
+B){n||(F=y);g=g.replace(o.match[N],"");if(!q)return[];break}}}if(g===u)if(q==null)k.error(g);else break;u=g}return F};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var o=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,
+POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,i){var n=typeof i==="string",m=n&&!/\W/.test(i);n=n&&!m;if(m)i=i.toLowerCase();m=0;for(var p=g.length,q;m<p;m++)if(q=g[m]){for(;(q=q.previousSibling)&&q.nodeType!==1;);g[m]=n||q&&q.nodeName.toLowerCase()===
+i?q||false:q===i}n&&k.filter(i,g,true)},">":function(g,i){var n,m=typeof i==="string",p=0,q=g.length;if(m&&!/\W/.test(i))for(i=i.toLowerCase();p<q;p++){if(n=g[p]){n=n.parentNode;g[p]=n.nodeName.toLowerCase()===i?n:false}}else{for(;p<q;p++)if(n=g[p])g[p]=m?n.parentNode:n.parentNode===i;m&&k.filter(i,g,true)}},"":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=i=i.toLowerCase();q=a}q("parentNode",i,p,g,m,n)},"~":function(g,i,n){var m,p=e++,q=b;if(typeof i==="string"&&!/\W/.test(i)){m=
+i=i.toLowerCase();q=a}q("previousSibling",i,p,g,m,n)}},find:{ID:function(g,i,n){if(typeof i.getElementById!=="undefined"&&!n)return(g=i.getElementById(g[1]))&&g.parentNode?[g]:[]},NAME:function(g,i){if(typeof i.getElementsByName!=="undefined"){for(var n=[],m=i.getElementsByName(g[1]),p=0,q=m.length;p<q;p++)m[p].getAttribute("name")===g[1]&&n.push(m[p]);return n.length===0?null:n}},TAG:function(g,i){return i.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,i,n,m,p,q){g=" "+g[1].replace(/\\/g,
+"")+" ";if(q)return g;q=0;for(var u;(u=i[q])!=null;q++)if(u)if(p^(u.className&&(" "+u.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))n||m.push(u);else if(n)i[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var i=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=i[1]+(i[2]||1)-0;g[3]=i[3]-0}g[0]=e++;return g},ATTR:function(g,i,n,
+m,p,q){i=g[1].replace(/\\/g,"");if(!q&&o.attrMap[i])g[1]=o.attrMap[i];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,i,n,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,i);else{g=k.filter(g[3],i,n,true^p);n||m.push.apply(m,g);return false}else if(o.match.POS.test(g[0])||o.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===
+true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,i,n){return!!k(n[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===
+g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,i){return i===0},last:function(g,i,n,m){return i===m.length-1},even:function(g,i){return i%2===0},odd:function(g,i){return i%2===1},lt:function(g,i,n){return i<n[3]-0},gt:function(g,i,n){return i>n[3]-0},nth:function(g,i,n){return n[3]-
+0===i},eq:function(g,i,n){return n[3]-0===i}},filter:{PSEUDO:function(g,i,n,m){var p=i[1],q=o.filters[p];if(q)return q(g,n,i,m);else if(p==="contains")return(g.textContent||g.innerText||k.getText([g])||"").indexOf(i[3])>=0;else if(p==="not"){i=i[3];n=0;for(m=i.length;n<m;n++)if(i[n]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+p)},CHILD:function(g,i){var n=i[1],m=g;switch(n){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(n===
+"first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":n=i[2];var p=i[3];if(n===1&&p===0)return true;var q=i[0],u=g.parentNode;if(u&&(u.sizcache!==q||!g.nodeIndex)){var y=0;for(m=u.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++y;u.sizcache=q}m=g.nodeIndex-p;return n===0?m===0:m%n===0&&m/n>=0}},ID:function(g,i){return g.nodeType===1&&g.getAttribute("id")===i},TAG:function(g,i){return i==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===
+i},CLASS:function(g,i){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(i)>-1},ATTR:function(g,i){var n=i[1];n=o.attrHandle[n]?o.attrHandle[n](g):g[n]!=null?g[n]:g.getAttribute(n);var m=n+"",p=i[2],q=i[4];return n==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&n!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,i,n,m){var p=o.setFilters[i[2]];
+if(p)return p(g,n,i,m)}}},x=o.match.POS,r=function(g,i){return"\\"+(i-0+1)},A;for(A in o.match){o.match[A]=RegExp(o.match[A].source+/(?![^\[]*\])(?![^\(]*\))/.source);o.leftMatch[A]=RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[A].source.replace(/\\(\d+)/g,r))}var C=function(g,i){g=Array.prototype.slice.call(g,0);if(i){i.push.apply(i,g);return i}return g};try{Array.prototype.slice.call(t.documentElement.childNodes,0)}catch(J){C=function(g,i){var n=0,m=i||[];if(f.call(g)==="[object Array]")Array.prototype.push.apply(m,
+g);else if(typeof g.length==="number")for(var p=g.length;n<p;n++)m.push(g[n]);else for(;g[n];n++)m.push(g[n]);return m}}var w,I;if(t.documentElement.compareDocumentPosition)w=function(g,i){if(g===i){h=true;return 0}if(!g.compareDocumentPosition||!i.compareDocumentPosition)return g.compareDocumentPosition?-1:1;return g.compareDocumentPosition(i)&4?-1:1};else{w=function(g,i){var n,m,p=[],q=[];n=g.parentNode;m=i.parentNode;var u=n;if(g===i){h=true;return 0}else if(n===m)return I(g,i);else if(n){if(!m)return 1}else return-1;
+for(;u;){p.unshift(u);u=u.parentNode}for(u=m;u;){q.unshift(u);u=u.parentNode}n=p.length;m=q.length;for(u=0;u<n&&u<m;u++)if(p[u]!==q[u])return I(p[u],q[u]);return u===n?I(g,q[u],-1):I(p[u],i,1)};I=function(g,i,n){if(g===i)return n;for(g=g.nextSibling;g;){if(g===i)return-1;g=g.nextSibling}return 1}}k.getText=function(g){for(var i="",n,m=0;g[m];m++){n=g[m];if(n.nodeType===3||n.nodeType===4)i+=n.nodeValue;else if(n.nodeType!==8)i+=k.getText(n.childNodes)}return i};(function(){var g=t.createElement("div"),
+i="script"+(new Date).getTime(),n=t.documentElement;g.innerHTML="<a name='"+i+"'/>";n.insertBefore(g,n.firstChild);if(t.getElementById(i)){o.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:B:[]};o.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}n.removeChild(g);
+n=g=null})();(function(){var g=t.createElement("div");g.appendChild(t.createComment(""));if(g.getElementsByTagName("*").length>0)o.find.TAG=function(i,n){var m=n.getElementsByTagName(i[1]);if(i[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")o.attrHandle.href=function(i){return i.getAttribute("href",2)};g=null})();t.querySelectorAll&&
+function(){var g=k,i=t.createElement("div");i.innerHTML="<p class='TEST'></p>";if(!(i.querySelectorAll&&i.querySelectorAll(".TEST").length===0)){k=function(m,p,q,u){p=p||t;m=m.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!u&&!k.isXML(p))if(p.nodeType===9)try{return C(p.querySelectorAll(m),q)}catch(y){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var F=p.getAttribute("id"),M=F||"__sizzle__";F||p.setAttribute("id",M);try{return C(p.querySelectorAll("#"+M+" "+m),q)}catch(N){}finally{F||
+p.removeAttribute("id")}}return g(m,p,q,u)};for(var n in g)k[n]=g[n];i=null}}();(function(){var g=t.documentElement,i=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,n=false;try{i.call(t.documentElement,"[test!='']:sizzle")}catch(m){n=true}if(i)k.matchesSelector=function(p,q){q=q.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(p))try{if(n||!o.match.PSEUDO.test(q)&&!/!=/.test(q))return i.call(p,q)}catch(u){}return k(q,null,null,[p]).length>0}})();(function(){var g=
+t.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){o.order.splice(1,0,"CLASS");o.find.CLASS=function(i,n,m){if(typeof n.getElementsByClassName!=="undefined"&&!m)return n.getElementsByClassName(i[1])};g=null}}})();k.contains=t.documentElement.contains?function(g,i){return g!==i&&(g.contains?g.contains(i):true)}:t.documentElement.compareDocumentPosition?
+function(g,i){return!!(g.compareDocumentPosition(i)&16)}:function(){return false};k.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var L=function(g,i){for(var n,m=[],p="",q=i.nodeType?[i]:i;n=o.match.PSEUDO.exec(g);){p+=n[0];g=g.replace(o.match.PSEUDO,"")}g=o.relative[g]?g+"*":g;n=0;for(var u=q.length;n<u;n++)k(g,q[n],m);return k.filter(p,m)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=k.getText;c.isXMLDoc=k.isXML;
+c.contains=k.contains})();var Za=/Until$/,$a=/^(?:parents|prevUntil|prevAll)/,ab=/,/,Na=/^.[^:#\[\.,]*$/,bb=Array.prototype.slice,cb=c.expr.match.POS;c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,e=0,f=this.length;e<f;e++){d=b.length;c.find(a,this[e],b);if(e>0)for(var h=d;h<b.length;h++)for(var l=0;l<d;l++)if(b[l]===b[h]){b.splice(h--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,e=b.length;d<e;d++)if(c.contains(this,b[d]))return true})},
+not:function(a){return this.pushStack(ma(this,a,false),"not",a)},filter:function(a){return this.pushStack(ma(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){var d=[],e,f,h=this[0];if(c.isArray(a)){var l,k={},o=1;if(h&&a.length){e=0;for(f=a.length;e<f;e++){l=a[e];k[l]||(k[l]=c.expr.match.POS.test(l)?c(l,b||this.context):l)}for(;h&&h.ownerDocument&&h!==b;){for(l in k){e=k[l];if(e.jquery?e.index(h)>-1:c(h).is(e))d.push({selector:l,elem:h,level:o})}h=
+h.parentNode;o++}}return d}l=cb.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e<f;e++)for(h=this[e];h;)if(l?l.index(h)>-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h||!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):
+c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,
+2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,
+b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Za.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||ab.test(e))&&$a.test(a))f=f.reverse();return this.pushStack(f,a,bb.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===B||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&
+e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var za=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,Aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ba=/<([\w:]+)/,db=/<tbody/i,eb=/<|&#?\w+;/,Ca=/<(?:script|object|embed|option|style)/i,Da=/checked\s*(?:[^=]|=\s*.checked.)/i,fb=/\=([^="'>\s]+\/)>/g,P={option:[1,
+"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;if(!c.support.htmlSerialize)P._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
+c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==B)return this.empty().append((this[0]&&this[0].ownerDocument||t).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
+wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
+prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
+this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*"));c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
+return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(za,"").replace(fb,'="$1">').replace($,"")],e)[0]}else return this.cloneNode(true)});if(a===true){na(this,b);na(this.find("*"),b.find("*"))}return b},html:function(a){if(a===B)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(za,""):null;
+else if(typeof a==="string"&&!Ca.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!P[(Ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Aa,"<$1></$2>");try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(e){this.empty().append(a)}}else c.isFunction(a)?this.each(function(f){var h=c(this);h.html(a.call(this,f,h.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=
+c(this),e=d.html();d.replaceWith(a.call(this,b,e))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){var e,f,h,l=a[0],k=[];if(!c.support.checkClone&&arguments.length===3&&typeof l==="string"&&Da.test(l))return this.each(function(){c(this).domManip(a,
+b,d,true)});if(c.isFunction(l))return this.each(function(x){var r=c(this);a[0]=l.call(this,x,b?r.html():B);r.domManip(a,b,d)});if(this[0]){e=l&&l.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:c.buildFragment(a,this,k);h=e.fragment;if(f=h.childNodes.length===1?h=h.firstChild:h.firstChild){b=b&&c.nodeName(f,"tr");f=0;for(var o=this.length;f<o;f++)d.call(b?c.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):
+this[f]:this[f],f>0||e.cacheable||this.length>1?h.cloneNode(true):h)}k.length&&c.each(k,Oa)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:t;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===t&&!Ca.test(a[0])&&(c.support.checkClone||!Da.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",
+prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h=d.length;f<h;f++){var l=(f>0?this.clone(true):this).get();c(d[f])[b](l);e=e.concat(l)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||t;if(typeof b.createElement==="undefined")b=b.ownerDocument||
+b[0]&&b[0].ownerDocument||t;for(var f=[],h=0,l;(l=a[h])!=null;h++){if(typeof l==="number")l+="";if(l){if(typeof l==="string"&&!eb.test(l))l=b.createTextNode(l);else if(typeof l==="string"){l=l.replace(Aa,"<$1></$2>");var k=(Ba.exec(l)||["",""])[1].toLowerCase(),o=P[k]||P._default,x=o[0],r=b.createElement("div");for(r.innerHTML=o[1]+l+o[2];x--;)r=r.lastChild;if(!c.support.tbody){x=db.test(l);k=k==="table"&&!x?r.firstChild&&r.firstChild.childNodes:o[1]==="<table>"&&!x?r.childNodes:[];for(o=k.length-
+1;o>=0;--o)c.nodeName(k[o],"tbody")&&!k[o].childNodes.length&&k[o].parentNode.removeChild(k[o])}!c.support.leadingWhitespace&&$.test(l)&&r.insertBefore(b.createTextNode($.exec(l)[0]),r.firstChild);l=r.childNodes}if(l.nodeType)f.push(l);else f=c.merge(f,l)}}if(d)for(h=0;f[h];h++)if(e&&c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));
+d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,l=0,k;(k=a[l])!=null;l++)if(!(k.nodeName&&c.noData[k.nodeName.toLowerCase()]))if(d=k[c.expando]){if((b=e[d])&&b.events)for(var o in b.events)f[o]?c.event.remove(k,o):c.removeEvent(k,o,b.handle);if(h)delete k[c.expando];else k.removeAttribute&&k.removeAttribute(c.expando);delete e[d]}}});var Ea=/alpha\([^)]*\)/i,gb=/opacity=([^)]*)/,hb=/-([a-z])/ig,ib=/([A-Z])/g,Fa=/^-?\d+(?:px)?$/i,
+jb=/^-?\d/,kb={position:"absolute",visibility:"hidden",display:"block"},Pa=["Left","Right"],Qa=["Top","Bottom"],W,Ga,aa,lb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===B)return this;return c.access(this,a,b,true,function(d,e,f){return f!==B?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,
+zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),l=a.style,k=c.cssHooks[h];b=c.cssProps[h]||h;if(d!==B){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!k||!("set"in k)||(d=k.set(a,d))!==B)try{l[b]=d}catch(o){}}}else{if(k&&"get"in k&&(f=k.get(a,false,e))!==B)return f;return l[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),
+h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==B)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]=e[f]},camelCase:function(a){return a.replace(hb,lb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=oa(d,b,f);else c.swap(d,kb,function(){h=oa(d,b,f)});if(h<=0){h=W(d,b,b);if(h==="0px"&&aa)h=aa(d,b,b);
+if(h!=null)return h===""||h==="auto"?"0px":h}if(h<0||h==null){h=d.style[b];return h===""||h==="auto"?"0px":h}return typeof h==="string"?h:h+"px"}},set:function(d,e){if(Fa.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return gb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=
+d.filter||"";d.filter=Ea.test(f)?f.replace(Ea,e):d.filter+" "+e}};if(t.defaultView&&t.defaultView.getComputedStyle)Ga=function(a,b,d){var e;d=d.replace(ib,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return B;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};if(t.documentElement.currentStyle)aa=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b],h=a.style;if(!Fa.test(f)&&jb.test(f)){d=h.left;
+e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f===""?"auto":f};W=Ga||aa;if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var mb=c.now(),nb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
+ob=/^(?:select|textarea)/i,pb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,qb=/^(?:GET|HEAD)$/,Ra=/\[\]$/,T=/\=\?(&|$)/,ja=/\?/,rb=/([?&])_=[^&]*/,sb=/^(\w+:)?\/\/([^\/?#]+)/,tb=/%20/g,ub=/#.*$/,Ha=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ha)return Ha.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b===
+"object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(l,k){if(k==="success"||k==="notmodified")h.html(f?c("<div>").append(l.responseText.replace(nb,"")).find(f):l.responseText);d&&h.each(d,[l.responseText,k,l])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&
+!this.disabled&&(this.checked||ob.test(this.nodeName)||pb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})},
+getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",
+script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),l=qb.test(h);b.url=b.url.replace(ub,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ja.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data||
+!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+mb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var k=E[d];E[d]=function(m){if(c.isFunction(k))k(m);else{E[d]=B;try{delete E[d]}catch(p){}}f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);r&&r.removeChild(A)}}if(b.dataType==="script"&&b.cache===null)b.cache=
+false;if(b.cache===false&&l){var o=c.now(),x=b.url.replace(rb,"$1_="+o);b.url=x+(x===b.url?(ja.test(b.url)?"&":"?")+"_="+o:"")}if(b.data&&l)b.url+=(ja.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");o=(o=sb.exec(b.url))&&(o[1]&&o[1].toLowerCase()!==location.protocol||o[2].toLowerCase()!==location.host);if(b.dataType==="script"&&h==="GET"&&o){var r=t.getElementsByTagName("head")[0]||t.documentElement,A=t.createElement("script");if(b.scriptCharset)A.charset=b.scriptCharset;
+A.src=b.url;if(!d){var C=false;A.onload=A.onreadystatechange=function(){if(!C&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){C=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);A.onload=A.onreadystatechange=null;r&&A.parentNode&&r.removeChild(A)}}}r.insertBefore(A,r.firstChild);return B}var J=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!l||a&&a.contentType)w.setRequestHeader("Content-Type",
+b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}o||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(I){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&&
+c.triggerGlobal(b,"ajaxSend",[w,b]);var L=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){J||c.handleComplete(b,w,e,f);J=true;if(w)w.onreadystatechange=c.noop}else if(!J&&w&&(w.readyState===4||m==="timeout")){J=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d||
+c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&Function.prototype.call.call(g,w);L("abort")}}catch(i){}b.async&&b.timeout>0&&setTimeout(function(){w&&!J&&L("timeout")},b.timeout);try{w.send(l||b.data==null?null:b.data)}catch(n){c.handleError(b,w,null,n);c.handleComplete(b,w,e,f)}b.async||L();return w}},param:function(a,b){var d=[],e=function(h,l){l=c.isFunction(l)?l():l;d[d.length]=
+encodeURIComponent(h)+"="+encodeURIComponent(l)};if(b===B)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)da(f,a[f],b,e);return d.join("&").replace(tb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",
+[b,a])},handleComplete:function(a,b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),
+e=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});
+if(E.ActiveXObject)c.ajaxSettings.xhr=function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var ea={},vb=/^(?:toggle|show|hide)$/,wb=/^([+\-]=)?([\d+.\-]+)(.*)$/,ba,pa=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",
+3),a,b,d);else{d=0;for(var e=this.length;d<e;d++){a=this[d];b=a.style.display;if(!c.data(a,"olddisplay")&&b==="none")b=a.style.display="";b===""&&c.css(a,"display")==="none"&&c.data(a,"olddisplay",qa(a.nodeName))}for(d=0;d<e;d++){a=this[d];b=a.style.display;if(b===""||b==="none")a.style.display=c.data(a,"olddisplay")||""}return this}},hide:function(a,b,d){if(a||a===0)return this.animate(S("hide",3),a,b,d);else{a=0;for(b=this.length;a<b;a++){d=c.css(this[a],"display");d!=="none"&&c.data(this[a],"olddisplay",
+d)}for(a=0;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b,d){var e=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||e?this.each(function(){var f=e?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(S("toggle",3),a,b,d);return this},fadeTo:function(a,b,d,e){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d,e)},animate:function(a,b,d,e){var f=c.speed(b,
+d,e);if(c.isEmptyObject(a))return this.each(f.complete);return this[f.queue===false?"each":"queue"](function(){var h=c.extend({},f),l,k=this.nodeType===1,o=k&&c(this).is(":hidden"),x=this;for(l in a){var r=c.camelCase(l);if(l!==r){a[r]=a[l];delete a[l];l=r}if(a[l]==="hide"&&o||a[l]==="show"&&!o)return h.complete.call(this);if(k&&(l==="height"||l==="width")){h.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(c.css(this,"display")==="inline"&&c.css(this,"float")==="none")if(c.support.inlineBlockNeedsLayout)if(qa(this.nodeName)===
+"inline")this.style.display="inline-block";else{this.style.display="inline";this.style.zoom=1}else this.style.display="inline-block"}if(c.isArray(a[l])){(h.specialEasing=h.specialEasing||{})[l]=a[l][1];a[l]=a[l][0]}}if(h.overflow!=null)this.style.overflow="hidden";h.curAnim=c.extend({},a);c.each(a,function(A,C){var J=new c.fx(x,h,A);if(vb.test(C))J[C==="toggle"?o?"show":"hide":C](a);else{var w=wb.exec(C),I=J.cur()||0;if(w){var L=parseFloat(w[2]),g=w[3]||"px";if(g!=="px"){c.style(x,A,(L||1)+g);I=(L||
+1)/J.cur()*I;c.style(x,A,I+g)}if(w[1])L=(w[1]==="-="?-1:1)*L+I;J.custom(I,L,g)}else J.custom(I,C,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var e=d.length-1;e>=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b,
+d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a*
+Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(l){return f.step(l)}
+var f=this,h=c.fx;this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;e.elem=this.elem;if(e()&&c.timers.push(e)&&!ba)ba=setInterval(h.tick,h.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;
+this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(k,o){f.style["overflow"+o]=h.overflow[k]})}this.options.hide&&c(this.elem).hide();if(this.options.hide||
+this.options.show)for(var l in this.options.curAnim)c.style(this.elem,l,this.options.orig[l]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=
+c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},interval:13,stop:function(){clearInterval(ba);ba=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===
+b.elem}).length};var xb=/^t(?:able|d|h)$/i,Ia=/^(?:body|html)$/i;c.fn.offset="getBoundingClientRect"in t.documentElement?function(a){var b=this[0],d;if(a)return this.each(function(l){c.offset.setOffset(this,a,l)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,h=f.documentElement;if(!d||!c.contains(h,b))return d||{top:0,left:0};b=f.body;f=fa(f);return{top:d.top+(f.pageYOffset||c.support.boxModel&&
+h.scrollTop||b.scrollTop)-(h.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||c.support.boxModel&&h.scrollLeft||b.scrollLeft)-(h.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(x){c.offset.setOffset(this,a,x)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d,e=b.offsetParent,f=b.ownerDocument,h=f.documentElement,l=f.body;d=(f=f.defaultView)?f.getComputedStyle(b,null):b.currentStyle;
+for(var k=b.offsetTop,o=b.offsetLeft;(b=b.parentNode)&&b!==l&&b!==h;){if(c.offset.supportsFixedPosition&&d.position==="fixed")break;d=f?f.getComputedStyle(b,null):b.currentStyle;k-=b.scrollTop;o-=b.scrollLeft;if(b===e){k+=b.offsetTop;o+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&xb.test(b.nodeName))){k+=parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}e=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&d.overflow!=="visible"){k+=
+parseFloat(d.borderTopWidth)||0;o+=parseFloat(d.borderLeftWidth)||0}d=d}if(d.position==="relative"||d.position==="static"){k+=l.offsetTop;o+=l.offsetLeft}if(c.offset.supportsFixedPosition&&d.position==="fixed"){k+=Math.max(h.scrollTop,l.scrollTop);o+=Math.max(h.scrollLeft,l.scrollLeft)}return{top:k,left:o}};c.offset={initialize:function(){var a=t.body,b=t.createElement("div"),d,e,f,h=parseFloat(c.css(a,"marginTop"))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",
+height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";a.insertBefore(b,a.firstChild);d=b.firstChild;e=d.firstChild;f=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=e.offsetTop!==5;this.doesAddBorderForTableAndCells=
+f.offsetTop===5;e.style.position="fixed";e.style.top="20px";this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15;e.style.position=e.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==h;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.css(a,
+"marginTop"))||0;d+=parseFloat(c.css(a,"marginLeft"))||0}return{top:b,left:d}},setOffset:function(a,b,d){var e=c.css(a,"position");if(e==="static")a.style.position="relative";var f=c(a),h=f.offset(),l=c.css(a,"top"),k=c.css(a,"left"),o=e==="absolute"&&c.inArray("auto",[l,k])>-1;e={};var x={};if(o)x=f.position();l=o?x.top:parseInt(l,10)||0;k=o?x.left:parseInt(k,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+l;if(b.left!=null)e.left=b.left-h.left+k;"using"in b?b.using.call(a,
+e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Ia.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||t.body;a&&!Ia.test(a.nodeName)&&
+c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==B)return this.each(function(){if(h=fa(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=fa(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();
+c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(l){var k=c(this);k[d](e.call(this,l,k[d]()))});if(c.isWindow(f))return f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b];else if(f.nodeType===9)return Math.max(f.documentElement["client"+
+b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]);else if(e===B){f=c.css(f,d);var h=parseFloat(f);return c.isNaN(h)?f:h}else return this.css(d,typeof e==="string"?e:e+"px")}})})(window);
1
0
r513 - trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
by chatellier@users.labs.libre-entreprise.org 17 Jan '11
17 Jan '11
Author: chatellier
Date: 2011-01-17 09:23:20 +0000 (Mon, 17 Jan 2011)
New Revision: 513
Log:
Remove row reverse order
Modified:
trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java
Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java
===================================================================
--- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java 2011-01-14 17:06:55 UTC (rev 512)
+++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java 2011-01-17 09:23:20 UTC (rev 513)
@@ -132,7 +132,9 @@
public void removeSelectedResult(SelectUploadResultView view) {
List<Object[]> currentResult = view.getSelectedResultTableModel().getResultPath();
int[] selectedSelectedRows = view.getSelectedResultTable().getSelectedRows();
- for (int selectedSelectedRow : selectedSelectedRows) {
+ // need to remove reverse order
+ for (int index = selectedSelectedRows.length - 1 ; index >= 0 ; --index) {
+ int selectedSelectedRow = selectedSelectedRows[index];
currentResult.remove(selectedSelectedRow);
}
view.getSelectedResultTableModel().setResultPath(currentResult);
1
0
r512 - in trunk/coser-web/src/main/webapp: WEB-INF/content WEB-INF/decorators images styles
by chatellier@users.labs.libre-entreprise.org 14 Jan '11
by chatellier@users.labs.libre-entreprise.org 14 Jan '11
14 Jan '11
Author: chatellier
Date: 2011-01-14 17:06:55 +0000 (Fri, 14 Jan 2011)
New Revision: 512
Log:
Nouvelle maquette
Added:
trunk/coser-web/src/main/webapp/images/barre_select.png
trunk/coser-web/src/main/webapp/images/bas_page.png
trunk/coser-web/src/main/webapp/images/bas_page2.png
trunk/coser-web/src/main/webapp/images/bt_suite.png
trunk/coser-web/src/main/webapp/images/bt_suitehover.png
trunk/coser-web/src/main/webapp/images/carte_accueil.png
trunk/coser-web/src/main/webapp/images/contenu_haut.png
trunk/coser-web/src/main/webapp/images/degrade.png
trunk/coser-web/src/main/webapp/images/fond.jpg
trunk/coser-web/src/main/webapp/images/fond_02.jpg
trunk/coser-web/src/main/webapp/images/fond_contenu.png
trunk/coser-web/src/main/webapp/images/footer.png
trunk/coser-web/src/main/webapp/images/footer_01.jpg
trunk/coser-web/src/main/webapp/images/footer_02.jpg
trunk/coser-web/src/main/webapp/images/haut_page.png
trunk/coser-web/src/main/webapp/images/ico_accueil.png
trunk/coser-web/src/main/webapp/images/ico_carte.png
trunk/coser-web/src/main/webapp/images/ico_pdf.png
trunk/coser-web/src/main/webapp/images/logoIfremer.png
trunk/coser-web/src/main/webapp/images/logoSIH.png
trunk/coser-web/src/main/webapp/images/poisson.jpg
trunk/coser-web/src/main/webapp/images/puce_liste.png
trunk/coser-web/src/main/webapp/images/puce_liste_18.png
trunk/coser-web/src/main/webapp/images/top_contenu.png
trunk/coser-web/src/main/webapp/images/warper_page.png
Removed:
trunk/coser-web/src/main/webapp/WEB-INF/decorators/footer.jsp
trunk/coser-web/src/main/webapp/WEB-INF/decorators/header.jsp
trunk/coser-web/src/main/webapp/images/logo_ifremer.gif
trunk/coser-web/src/main/webapp/images/logo_sih.png
Modified:
trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp
trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp
trunk/coser-web/src/main/webapp/styles/coser.css
Modified: trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp 2011-01-14 17:06:27 UTC (rev 511)
+++ trunk/coser-web/src/main/webapp/WEB-INF/content/index.jsp 2011-01-14 17:06:55 UTC (rev 512)
@@ -30,10 +30,6 @@
</head>
<body>
- <div class="maintitle">
- <s:text name="message.index.title" />
- </div>
-
<p><s:text name="message.index.paragraph1" /></p>
<p><s:text name="message.index.paragraph2" /></p>
<p><s:text name="message.index.paragraph3" /></p>
@@ -59,7 +55,7 @@
<s:a action="quality"><s:text name="message.index.qualitymessage" /></s:a>
</p>
- <p>
+ <p class="annotations">
<span style="font-weight:bold"><s:text name="message.index.quotetitle"/> :</span>
<s:text name="message.index.quotemessage">
<s:param value="dataUpdateDate"/>
Deleted: trunk/coser-web/src/main/webapp/WEB-INF/decorators/footer.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators/footer.jsp 2011-01-14 17:06:27 UTC (rev 511)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators/footer.jsp 2011-01-14 17:06:55 UTC (rev 512)
@@ -1,29 +0,0 @@
-<!--
- #%L
- Coser :: Web
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2010 - 2011 Ifremer, Codelutin, Chatellier Eric
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- -->
-<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
-<%@taglib uri="/struts-tags" prefix="s" %>
-
- <div>
-
- </div>
\ No newline at end of file
Deleted: trunk/coser-web/src/main/webapp/WEB-INF/decorators/header.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators/header.jsp 2011-01-14 17:06:27 UTC (rev 511)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators/header.jsp 2011-01-14 17:06:55 UTC (rev 512)
@@ -1,44 +0,0 @@
-<!--
- #%L
- Coser :: Web
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2010 - 2011 Ifremer, Codelutin, Chatellier Eric
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- #L%
- -->
-<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
-<%@taglib uri="/struts-tags" prefix="s" %>
-
- <div>
- <img src="<s:url value='/images/logo_ifremer.gif' />" style="width:333px;heigth:69px" />
- <img src="<s:url value='/images/logo_sih.png' />" style="width:178px;heigth:89px" />
-
- <s:url id="localeEN" namespace="/" action="locale">
- <s:param name="request_locale" >en</s:param>
- </s:url>
- <s:url id="localeFR" namespace="/" action="locale">
- <s:param name="request_locale" >fr</s:param>
- </s:url>
-
- <s:a href="%{localeEN}"><img src="<s:url value='/images/gb.png' />" /></s:a>
- <s:a href="%{localeFR}"><img src="<s:url value='/images/fr.png' />" /></s:a>
-
- </div>
-
- <hr />
-
Modified: trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp
===================================================================
--- trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp 2011-01-14 17:06:27 UTC (rev 511)
+++ trunk/coser-web/src/main/webapp/WEB-INF/decorators/layout.jsp 2011-01-14 17:06:55 UTC (rev 512)
@@ -34,20 +34,48 @@
</head>
<body>
- <%@ include file="header.jsp" %>
+ <div id="conteneur">
+ <div id="head" class="clearfix">
+ <a href="#" class="logoSIH">Système d'Information Halieutique</a>
+ <h1>Indices de populations et de communauté <br/>
+ issus des campagnes de <span class="jaune">surveillance halieutique</span> de <span class="jaune">l'Ifremer </span>
+ </h1>
+ <a href="#" class="logoIfremer">L'Ifremer</a>
+ </div>
- <s:text name="message.layout.title" />
+ <div id="middle" class="clearfix">
+ <div class="page">
+ <div class="content">
+ <div class="degrade">
+ <div class="top_content">
+ <a href="<s:url action='index' />" class="accueil">Accueil</a>
+ <a href="<s:url action='index' />" class="anglais">Anglais</a>
+ </div>
- <div class="main">
- <decorator:body/>
- </div>
+ <decorator:body/>
- <p><s:text name="message.layout.oceanicdatatitle" />
- <ul>
- <li><a href="http://www.ifremer.fr/sismer/index_FR.htm"><s:text name="message.layout.oceanicdata1" /></a></li>
- <li><a href="http://www.ifremer.fr/sih"><s:text name="message.layout.oceanicdata2" /></a></li>
- </ul></p>
-
- <%@ include file="footer.jsp" %>
+ </div>
+ </div>
+
+ <span class="clb"> </span>
+ </div>
+ <div class="col_droite">
+ <img src="<s:url value='/images/carte_accueil.png'/>" alt="carte des zones de campage en europe" title="carte des zones de campage en europe"/>
+ <div class="mgt20">
+ <h3><s:text name="message.layout.oceanicdatatitle" /></h3>
+ <ul>
+ <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata1" /></a></li>
+ <li><a href="#" class="lien"><s:text name="message.layout.oceanicdata2" /></a></li>
+ </ul>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div id="footer">
+ <ul class="clearfix">
+ <li><a href="#">Contact</a></li>
+ <li><a href="#">Mentions Légales</a></li>
+ </ul>
+ </div>
</body>
</html>
\ No newline at end of file
Added: trunk/coser-web/src/main/webapp/images/barre_select.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/barre_select.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/bas_page.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/bas_page.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/bas_page2.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/bas_page2.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/bt_suite.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/bt_suite.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/bt_suitehover.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/bt_suitehover.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/carte_accueil.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/carte_accueil.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/contenu_haut.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/contenu_haut.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/degrade.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/degrade.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/fond.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/fond.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/fond_02.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/fond_02.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/fond_contenu.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/fond_contenu.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/footer.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/footer.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/footer_01.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/footer_01.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/footer_02.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/footer_02.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/haut_page.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/haut_page.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/ico_accueil.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/ico_accueil.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/ico_carte.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/ico_carte.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/ico_pdf.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/ico_pdf.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/logoIfremer.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/logoIfremer.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/logoSIH.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/logoSIH.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Deleted: trunk/coser-web/src/main/webapp/images/logo_ifremer.gif
===================================================================
(Binary files differ)
Deleted: trunk/coser-web/src/main/webapp/images/logo_sih.png
===================================================================
(Binary files differ)
Added: trunk/coser-web/src/main/webapp/images/poisson.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/poisson.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/puce_liste.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/puce_liste.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/puce_liste_18.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/puce_liste_18.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/top_contenu.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/top_contenu.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/coser-web/src/main/webapp/images/warper_page.png
===================================================================
(Binary files differ)
Property changes on: trunk/coser-web/src/main/webapp/images/warper_page.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: trunk/coser-web/src/main/webapp/styles/coser.css
===================================================================
--- trunk/coser-web/src/main/webapp/styles/coser.css 2011-01-14 17:06:27 UTC (rev 511)
+++ trunk/coser-web/src/main/webapp/styles/coser.css 2011-01-14 17:06:55 UTC (rev 512)
@@ -1,54 +1,611 @@
-/*
- * #%L
- * Coser :: Web
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2010 - 2011 Ifremer, Codelutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- * #L%
- */
+/*reset*/
+* {
+ margin: 0;
+ padding: 0;
+}
+
+.clearfix:after {
+ content: ".";
+ display: block;
+ height: 0;
+ clear: both;
+ visibility: hidden;
+}
+
+.clearfix {
+ display: inline-block;
+}
+
+/* Hide from IE Mac \*/
+.clearfix {
+ display: block;
+}
+
+/* End hide from IE Mac */
+.float_left,.fleft {
+ float: left;
+}
+
+.float_right,.fright {
+ float: right;
+}
+
+.pdt5 {
+ padding-top: 5px;
+}
+
+.pdr5 {
+ padding-right: 5px;
+}
+
+.pdb5 {
+ padding-bottom: 5px;
+}
+
+.pdl5 {
+ padding-left: 5px;
+}
+
+.pdt10 {
+ padding-top: 10px;
+}
+
+.pdr10 {
+ padding-right: 10px;
+}
+
+.pdb10 {
+ padding-bottom: 10px;
+}
+
+.pdl10 {
+ padding-left: 10px;
+}
+
+.pdt15 {
+ padding-top: 15px;
+}
+
+.pdr15 {
+ padding-right: 15px;
+}
+
+.pdb15 {
+ padding-bottom: 15px;
+}
+
+.pdl15 {
+ padding-left: 15px;
+}
+
+.pdt20 {
+ padding-top: 20px;
+}
+
+.pdr20 {
+ padding-right: 20px;
+}
+
+.pdb20 {
+ padding-bottom: 20px;
+}
+
+.pdl20 {
+ padding-left: 20px;
+}
+
+.pdt25 {
+ padding-top: 25px;
+}
+
+.pdr25 {
+ padding-right: 25px;
+}
+
+.pdb25 {
+ padding-bottom: 25px;
+}
+
+.pdl25 {
+ padding-left: 25px;
+}
+
+.pdt30 {
+ padding-top: 30px;
+}
+
+.pdr30 {
+ padding-right: 30px;
+}
+
+.pdb30 {
+ padding-bottom: 30px;
+}
+
+.pdl30 {
+ padding-left: 30px;
+}
+
+.pdt35 {
+ padding-top: 35px;
+}
+
+.pdr35 {
+ padding-right: 35px;
+}
+
+.pdb35 {
+ padding-bottom: 35px;
+}
+
+.pdl35 {
+ padding-left: 35px;
+}
+
+.pdt40 {
+ padding-top: 40px;
+}
+
+.pdr40 {
+ padding-right: 40px;
+}
+
+.pdb40 {
+ padding-bottom: 40px;
+}
+
+.pdl40 {
+ padding-left: 40px;
+}
+
+.mgt5 {
+ margin-top: 5px;
+}
+
+.mgr5 {
+ margin-right: 5px;
+}
+
+.mgb5 {
+ margin-bottom: 5px;
+}
+
+.mgl5 {
+ margin-left: 5px;
+}
+
+.mgt10 {
+ margin-top: 10px;
+}
+
+.mgr10 {
+ margin-right: 10px;
+}
+
+.mgb10 {
+ margin-bottom: 10px;
+}
+
+.mgl10 {
+ margin-left: 10px;
+}
+
+.mgt15 {
+ margin-top: 15px;
+}
+
+.mgr15 {
+ margin-right: 15px;
+}
+
+.mgb15 {
+ margin-bottom: 15px;
+}
+
+.mgl15 {
+ margin-left: 15px;
+}
+
+.mgt20 {
+ margin-top: 20px;
+}
+
+.mgr20 {
+ margin-right: 20px;
+}
+
+.mgb20 {
+ margin-bottom: 20px;
+}
+
+.mgl20 {
+ margin-left: 20px;
+}
+
+.mgt25 {
+ margin-top: 25px;
+}
+
+.mgr25 {
+ margin-right: 25px;
+}
+
+.mgb25 {
+ margin-bottom: 25px;
+}
+
+.mgl25 {
+ margin-left: 25px;
+}
+
+.mgt30 {
+ margin-top: 30px;
+}
+
+.mgr30 {
+ margin-right: 30px;
+}
+
+.mgb30 {
+ margin-bottom: 30px;
+}
+
+.mgl30 {
+ margin-left: 30px;
+}
+
+.mgt35 {
+ margin-top: 35px;
+}
+
+.mgr35 {
+ margin-right: 35px;
+}
+
+.mgb35 {
+ margin-bottom: 35px;
+}
+
+.mgl35 {
+ margin-left: 35px;
+}
+
+.mgt40 {
+ margin-top: 40px;
+}
+
+.mgr40 {
+ margin-right: 40px;
+}
+
+.mgb40 {
+ margin-bottom: 40px;
+}
+
+.mgl40 {
+ margin-left: 40px;
+}
+
body {
- background-color: #1F7DCB;
- color: #2A2A2A;
- font-family: Verdana,"Lucida Grande",Lucida,Arial,Helvetica,sans-serif;
- width: 960px;
+ font-family: Arial, Helvetica, sans-serif;
+ font-size: 10px;
+}
+
+h1 {
+ color: #FFFFFF;
+ font-size: 180%;
+ padding-top: 65px;
+ text-transform: uppercase;
+}
+
+.jaune {
+ color: #FFE600;
+}
+
+p {
+ margin: 5px 0;
+}
+
+h2 {
+ color: #375A94;
+ font-size: 100%;
+ font-weight: bold;
+ margin: 15px 0 10px;
+ text-transform: uppercase;
+}
+
+h3 {
+ text-transform: uppercase;
+ color: #ffffff;
+ font-weight: normal;
+ margin: 0 5px;
+}
+
+/*fin reset*/
+body {
+ background: #1E3471 url(../images/fond_02.jpg) repeat-y scroll center 0;
+ position: relative;
+}
+
+#conteneur,#conteneur_int {
+ width: 1000px;
+ position: relative;
margin: 0 auto;
}
-a {
- color: #0080CB;
+#head {
+ position: relative;
+ width: 1000px;
+ height: 135px;
+}
+
+#head a {
+ display: block;
+ text-indent: -999999px;
+}
+
+#head a.logoSIH {
+ background: url(../images/logoSIH.png) no-repeat;
+ width: 250px;
+ height: 135px;
+ float: left;
+}
+
+#head a.logoIfremer {
+ background: url(../images/logoIfremer.png) no-repeat;
+ position: absolute;
+ top: 0;
+ right: 0;
+ width: 250px;
+ height: 65px;
+}
+
+#middle {
+ height: 100%;
+ min-height: 100px;
+}
+
+#middle .page {
+ width: 626px;
+ margin: 23px 22px 10px 60px;
+ float: left;
+}
+
+#middle .page span.clt {
+ background: url(../images/haut_page.png) no-repeat;
+ width: 626px;
+ display: block;
+ padding-top: 10px;
+}
+
+#middle .page .content {
+ background: url(../images/warper_page.png) repeat-y;
+ font-size: 140%;
+ color: #2e2e2e;
+ line-height: 1.4em;
+}
+
+#middle .page span.clb {
+ background: url(../images/bas_page.png) no-repeat;
+ width: 626px;
+ display: block;
+ height: 15px;
+}
+
+#middle .page span.clb2 {
+ background: url(../images/bas_page2.png) no-repeat 0 0;
+ width: 626px;
+ display: block;
+ height: 15px;
+}
+
+#middle .page .degrade {
+ background: url(../images/degrade.png) repeat-x 0 bottom;
+ margin: 0 5px;
+ padding: 5px 20px;
+}
+
+#middle .top_content {
+ height: 37px;
+ position: relative;
+ margin-bottom: 20px;
+}
+
+#middle .top_content .accueil {
+ background: transparent url(../images/ico_accueil.png) no-repeat scroll 0
+ bottom;
+ color: #2c9eff;
+ display: block;
+ font-weight: bold;
+ height: 35px;
+ line-height: 56px;
+ padding-left: 45px;
text-decoration: none;
+ font-size: 90%;
}
-a:hover {
- color: #165A97;
+#middle .top_content .accueil:hover {
+ text-decoration: underline;
}
-.main {
- background-color: white;
- border: 1px solid black;
- color: #696969;
- margin-left:200px;
- padding:2.5em 1.95em 1.5em;
+#middle .top_content .anglais {
+ display: block;
+ text-indent: -999999px;
+ background: url(../images/gb.png) no-repeat;
+ position: absolute;
+ right: 0;
+ top: 10px;
+ width: 32px;
+ height: 24px;
+ border: 2px solid #fff;
}
-.main .maintitle {
- font-weight: bold;
- font-size: 125%;
- color: #044F90;
- border-bottom: 1px solid #044F90;
+#middle .top_content .anglais:hover {
+ border: 2px solid #ffe600;
+}
+
+#middle .page .degrade ul li {
+ list-style: none;
+ padding-left: 10px;
+}
+
+#middle .page .degrade table {
+ width: 558px;
+}
+
+#middle .page .degrade table th {
+ background-color: #375a94;
+ color: #ffffff;
+ height: 36px;
+}
+
+#middle .page .degrade table td {
+ padding: 20px;
+ text-transform: uppercase;
+}
+
+#middle .page .degrade table .pdf {
+ background: url(../images/ico_pdf.png) no-repeat;
+ display: block;
+ height: 45px;
+ text-indent: -999999px;
+ width: 41px;
+ margin-left: 35px;
+}
+
+#middle .page .degrade table .carte {
+ background: transparent url(images/ico_carte.png) no-repeat scroll 0 0;
+ display: block;
+ height: 51px;
+ text-indent: -999999px;
+ width: 47px;
+ margin-left: 35px;
+}
+
+.annotations {
+ font-size: 100%;
+ color: #6e6e6e;
+ font-size: 80%;
+ line-height: 1em;
+}
+
+#middle .col_droite {
+ float: right;
+ margin-top: 159px;
+ width: 288px;
+ position: relative;
+ height: 100%;
+}
+
+#middle .col_droite ul li {
+ background: url(../images/puce_liste.png) no-repeat left center;
+ list-style: none;
+ margin: 15px 0;
+ padding-left: 25px;
+ height: 23px;
+}
+
+#middle .col_droite ul li a {
+ color: #2C9EFF;
+}
+
+#middle .col_droite ul li a:hover {
+ color: #ffe600;
+}
+
+#footer {
+ background: url(../images/footer.png) repeat-x;
+ height: 45px;
+ padding: 10px 20px 15px 20px;
+ margin: 30px 0;
+ position: relative;
+}
+
+#footer ul {
+ width: 1000px;
+ margin: 0 auto;
+}
+
+#footer ul li {
+ float: left;
+ list-style: none;
+ margin: 0 10px;
+ line-height: 30px;
+ padding: 0 5px;
+}
+
+#footer ul li a {
+ text-transform: uppercase;
+ color: #fff;
+ text-decoration: none;
+ font-size: 140%;
+}
+
+#footer ul li a:hover {
+ color: #ffe600;
+}
+
+#conteneur_int .top_content {
+ background: url(../images/top_contenu.png) no-repeat;
+ height: 37px;
+ margin: 23px 22px 10px 60px;
+ padding: 15px 20px;
+ width: 588px;
+ font-size: 140%;
+}
+
+#conteneur_int .top_content .anglais {
+ position: absolute;
+ top: 22px;
+ right: 20px;
+}
+
+#conteneur_int #middle .col_droite {
+ margin: 0;
+}
+
+#conteneur_int .content {
+ padding: 10px 15px 10px 20px;
+}
+
+#conteneur_int .part_bottom {
+ clear: both;
+ margin-left: 60px;
+ position: relative;
+}
+
+#conteneur_int .part_bottom .barre_select {
+ background: url(../images/barre_select.png) no-repeat;
+ height: 23px;
+ padding: 20px 20px 30px;
+ width: 588px;
+ float: left;
+}
+
+.barre_select form {
+ float: right;
+}
+
+.barre_select p {
+ display: inline;
+ text-transform: uppercase;
+ color: #ffffff;
+ font-size: 120%;
+ line-height: 30px;
+ margin: 0;
+}
+
+.barre_select input {
+ border: none;
+ background: url(../images/bt_suite.png) no-repeat;
+ color: #305594;
+ height: 31px;
+ width: 85px;
+ font-size: 140%;
+ cursor: pointer;
+}
+
+.barre_select select {
+ background-color: #fff;
+ border: 1px solid #ccc;
}
\ No newline at end of file
1
0
r511 - in trunk: coser-business/src/main/java/fr/ifremer/coser/command coser-business/src/main/java/fr/ifremer/coser/services coser-business/src/main/java/fr/ifremer/coser/storage coser-ui/src/main/java/fr/ifremer/coser/ui coser-ui/src/main/java/fr/ifremer/coser/ui/common coser-ui/src/main/java/fr/ifremer/coser/ui/result coser-ui/src/main/java/fr/ifremer/coser/ui/selection coser-ui/src/main/resources/i18n coser-web/src/main/java/fr/ifremer/coser/web/actions
by chatellier@users.labs.libre-entreprise.org 14 Jan '11
by chatellier@users.labs.libre-entreprise.org 14 Jan '11
14 Jan '11
Author: chatellier
Date: 2011-01-14 17:06:27 +0000 (Fri, 14 Jan 2011)
New Revision: 511
Log:
Upload de r?\195?\169sultat ?\195?\160 nouveau fonctionnel
Modified:
trunk/coser-business/src/main/java/fr/ifremer/coser/command/Command.java
trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java
trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java
trunk/coser-business/src/main/java/fr/ifremer/coser/storage/DataStorage.java
trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/CoserFrameHandler.java
trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/common/LengthStructureMatrixFilter.java
trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ExportUploadDialog.jaxx
trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java
trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/SelectUploadResultView.jaxx
trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/selection/SelectionHandler.java
trunk/coser-ui/src/main/resources/i18n/coser-ui_en_GB.properties
trunk/coser-ui/src/main/resources/i18n/coser-ui_fr_FR.properties
trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/UploadResultAction.java
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/command/Command.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/command/Command.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/command/Command.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -25,8 +25,6 @@
package fr.ifremer.coser.command;
-import java.util.UUID;
-
import fr.ifremer.coser.CoserBusinessException;
import fr.ifremer.coser.bean.AbstractDataContainer;
import fr.ifremer.coser.bean.Project;
@@ -58,7 +56,7 @@
* du même groupe de commandes.
*
* @return command UUID
- * @see UUID
+ * @see java.util.UUID
*/
public String getCommandUUID() {
return commandUUID;
@@ -69,7 +67,7 @@
* du même groupe de commandes.
*
* @param commandUUID new uuid
- * @see UUID
+ * @see java.util.UUID
*/
public void setCommandUUID(String commandUUID) {
this.commandUUID = commandUUID;
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -30,17 +30,14 @@
import java.beans.Introspector;
import java.io.BufferedOutputStream;
-import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
-import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintStream;
-import java.io.Writer;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/WebService.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -50,6 +50,7 @@
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.MultiPartEmail;
import org.apache.http.HttpResponse;
+import org.apache.http.StatusLine;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
@@ -283,7 +284,7 @@
project = projectService.openProject(project.getName());
OneResultFileFilter oneRFF = new OneResultFileFilter(config,
- (Project)path[0], (Selection)path[1], (RSufiResult)path[2], exportWithData);
+ project, (Selection)path[1], (RSufiResult)path[2], exportWithData);
mFileFilters.add(oneRFF);
}
@@ -310,10 +311,13 @@
* @param login remote admin login
* @param password remote admin password
* @param progress progress monitor
+ * @return upload error status or {@code null} if no error
* @throws CoserBusinessException
*/
- public void performResultUpload(Collection<Object[]> selectedResults, String login, String password, ProgressMonitor progress) throws CoserBusinessException {
+ public String performResultUpload(Collection<Object[]> selectedResults, String login, String password, ProgressMonitor progress) throws CoserBusinessException {
+ String uploadStatus = null;
+
// first copy prepare directory with only necessary data
// ie project with only selected selections
// and selection with only selected results
@@ -355,9 +359,9 @@
}
HttpResponse response = httpclient.execute(httppost);
-
- if (log.isDebugEnabled()) {
- log.debug("Upload response code : " + response.getStatusLine());
+
+ if (response.getStatusLine().getStatusCode() != 200) {
+ uploadStatus = response.getStatusLine().getReasonPhrase();
}
} catch (ClientProtocolException ex) {
throw new CoserBusinessException("Can't upload file", ex);
@@ -366,6 +370,8 @@
}
prepareZip.delete();
+
+ return uploadStatus;
}
/**
Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/storage/DataStorage.java
===================================================================
--- trunk/coser-business/src/main/java/fr/ifremer/coser/storage/DataStorage.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-business/src/main/java/fr/ifremer/coser/storage/DataStorage.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -26,13 +26,12 @@
package fr.ifremer.coser.storage;
import java.util.Iterator;
-import java.util.List;
/**
* Data storage utiliser pour manipuler dans l'application des
* tableau de String, mais les stocker en back différement.
*
- * Cette interface respecte globalement l'interface d'une {@link List}.
+ * Cette interface respecte globalement l'interface d'une {@link java.util.List}.
*
* @author chatellier
* @version $Revision$
Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/CoserFrameHandler.java
===================================================================
--- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/CoserFrameHandler.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/CoserFrameHandler.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -32,7 +32,6 @@
import java.io.File;
import java.io.IOException;
import java.net.URI;
-import java.util.List;
import java.util.Locale;
import javax.swing.JDialog;
@@ -40,7 +39,6 @@
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileFilter;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.swing.editor.config.ConfigUI;
import jaxx.runtime.swing.editor.config.ConfigUIHelper;
@@ -67,7 +65,6 @@
import fr.ifremer.coser.ui.project.ProjectOpenView;
import fr.ifremer.coser.ui.project.ProjectSummaryView;
import fr.ifremer.coser.ui.result.ResultHandler;
-import fr.ifremer.coser.ui.result.RsufiResultRenderer;
import fr.ifremer.coser.ui.result.SelectUploadResultView;
import fr.ifremer.coser.ui.selection.SelectionHandler;
import fr.ifremer.coser.ui.selection.SelectionView;
Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/common/LengthStructureMatrixFilter.java
===================================================================
--- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/common/LengthStructureMatrixFilter.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/common/LengthStructureMatrixFilter.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -26,7 +26,6 @@
import java.util.ArrayList;
import java.util.List;
-import org.jfree.util.Log;
import org.nuiton.math.matrix.MatrixFactory;
import org.nuiton.math.matrix.MatrixND;
import org.nuiton.math.matrix.viewer.MatrixFilter;
Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ExportUploadDialog.jaxx
===================================================================
--- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ExportUploadDialog.jaxx 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ExportUploadDialog.jaxx 2011-01-14 17:06:27 UTC (rev 511)
@@ -45,7 +45,7 @@
<cell anchor="east">
<JCheckBox id="sourceDataExport" selected="true" />
</cell>
- <cell columns="2">
+ <cell columns="2" anchor="west">
<JLabel text="coser.ui.uploadresult.extractWithData" />
</cell>
</row>
@@ -70,10 +70,10 @@
</cell>
</row>
<row>
- <cell>
+ <cell fill="horizontal">
<JLabel text="coser.ui.uploadresult.uploadPassword" />
</cell>
- <cell>
+ <cell fill="horizontal">
<JPasswordField id="uploadPasswordtextField" />
</cell>
</row>
Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java
===================================================================
--- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/ResultHandler.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -39,6 +39,7 @@
import jaxx.runtime.JAXXUtil;
import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.lang.StringUtils;
import fr.ifremer.coser.CoserBusinessException;
import fr.ifremer.coser.CoserException;
@@ -66,10 +67,12 @@
//SwingUtil.fixTableColumnWidth(view.getSelectedProjectTable(), 1, 25);
//SwingUtil.fixTableColumnWidth(view.getAvailableProjectTable(), 1, 25);
- view.getAvailableProjectTable().setDefaultRenderer(String[].class, new RsufiResultRenderer());
+ view.getAvailableResultTable().setDefaultRenderer(String[].class, new RsufiResultRenderer());
+ view.getSelectedResultTable().setDefaultRenderer(String[].class, new RsufiResultRenderer());
// initialise les données avec les filtres par default
updateAvailableResultsFilter(view);
+ view.getSelectedResultTableModel().setResultPath(new ArrayList<Object[]>());
}
@@ -91,7 +94,7 @@
try {
List<Object[]> results = webService.findAllProjectWithResult(beginDate, endDate, onlyPubliable);
- view.getAvailableProjectTableModel().setResultPath(results);
+ view.getAvailableResultTableModel().setResultPath(results);
} catch (CoserBusinessException ex) {
throw new CoserException("Can't get results", ex);
}
@@ -106,9 +109,9 @@
// get new result to add
List<Object[]> newResult = new ArrayList<Object[]>();
- int[] selectedAvailableRows = view.getAvailableProjectTable().getSelectedRows();
+ int[] selectedAvailableRows = view.getAvailableResultTable().getSelectedRows();
for (int selectedAvailableRow : selectedAvailableRows) {
- Object[] resultData = view.getAvailableProjectTableModel().getResultPath().get(selectedAvailableRow);
+ Object[] resultData = view.getAvailableResultTableModel().getResultPath().get(selectedAvailableRow);
newResult.add(resultData);
}
@@ -116,9 +119,9 @@
// seulement lors du clic sur le bouton export/upload
// add new results
- List<Object[]> currentResult = view.getSelectedProjectTableModel().getResultPath();
+ List<Object[]> currentResult = view.getSelectedResultTableModel().getResultPath();
currentResult.addAll(newResult);
- view.getAvailableProjectTableModel().setResultPath(currentResult);
+ view.getSelectedResultTableModel().setResultPath(currentResult);
}
/**
@@ -127,12 +130,12 @@
* @param view view
*/
public void removeSelectedResult(SelectUploadResultView view) {
- List<Object[]> currentResult = view.getSelectedProjectTableModel().getResultPath();
- int[] selectedSelectedRows = view.getSelectedProjectTable().getSelectedRows();
+ List<Object[]> currentResult = view.getSelectedResultTableModel().getResultPath();
+ int[] selectedSelectedRows = view.getSelectedResultTable().getSelectedRows();
for (int selectedSelectedRow : selectedSelectedRows) {
currentResult.remove(selectedSelectedRow);
}
- view.getAvailableProjectTableModel().setResultPath(currentResult);
+ view.getSelectedResultTableModel().setResultPath(currentResult);
}
/**
@@ -148,22 +151,22 @@
// get result selected by user
SelectUploadResultView parentView = view.getContextValue(SelectUploadResultView.class, JAXXUtil.PARENT);
- final Collection<Object[]> selectedResult = parentView.getSelectedProjectTableModel().getResultPath();
+ final Collection<Object[]> selectedResult = parentView.getSelectedResultTableModel().getResultPath();
if (CollectionUtils.isNotEmpty(selectedResult)) {
- SwingWorker<Void, Void> task = new SwingWorker<Void, Void>() {
+ SwingWorker<String, Void> task = new SwingWorker<String, Void>() {
@Override
- protected Void doInBackground() {
+ protected String doInBackground() {
try {
// get progress bar
CoserProgressBar progressBar = view.getUploadProgressBar();
WebService webService = view.getContextValue(WebService.class);
- webService.performResultUpload(selectedResult, login, password, progressBar);
+ String status = webService.performResultUpload(selectedResult, login, password, progressBar);
+ return status;
}
catch (CoserBusinessException ex) {
throw new CoserException("Can't send results", ex);
}
- return null;
}
@Override
@@ -171,13 +174,20 @@
// laisser cet appel, sinon les exceptions sont silencieuse
try {
- get();
- } catch (Exception ex) {
- throw new CoserException("Can't send results", ex);
+ String status = get();
+
+ if (StringUtils.isNotEmpty(status)) {
+ JOptionPane.showMessageDialog(view, _("coser.ui.uploadresult.resultsuploaderror", status),
+ _("coser.ui.uploadresult.title"), JOptionPane.ERROR_MESSAGE);
+ }
+ else {
+ JOptionPane.showMessageDialog(view, _("coser.ui.uploadresult.resultsuploaded"),
+ _("coser.ui.uploadresult.title"), JOptionPane.INFORMATION_MESSAGE);
+ }
}
-
- JOptionPane.showMessageDialog(view, _("coser.ui.uploadresult.resultsuploaded"),
- _("coser.ui.uploadresult.title"), JOptionPane.INFORMATION_MESSAGE);
+ catch (Exception ex) {
+ throw new CoserException("Can't get upload status", ex);
+ }
}
};
task.execute();
@@ -199,7 +209,7 @@
boolean withData = view.getSourceDataExport().isSelected();
SelectUploadResultView parentView = view.getContextValue(SelectUploadResultView.class, JAXXUtil.PARENT);
- Collection<Object[]> selectedResult = parentView.getSelectedProjectTableModel().getResultPath();
+ Collection<Object[]> selectedResult = parentView.getSelectedResultTableModel().getResultPath();
WebService webService = view.getContextValue(WebService.class);
try {
webService.performResultExtract(selectedResult, extractDirectory, withData);
Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/SelectUploadResultView.jaxx
===================================================================
--- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/SelectUploadResultView.jaxx 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/result/SelectUploadResultView.jaxx 2011-01-14 17:06:27 UTC (rev 511)
@@ -67,16 +67,17 @@
<row>
<cell weightx="1" weighty="1" fill="both">
<JScrollPane>
- <RsufiResultTreeModel id="availableProjectTableModel" initializer='new RsufiResultTreeModel(false)'
- onTableChanged='addResultButton.setEnabled(getAvailableProjectTableModel().getRowCount() == 0)'/>
- <JTable id="availableProjectTable" model="{getAvailableProjectTableModel()}"/>
+ <RsufiResultTreeModel id="availableResultTableModel" initializer='new RsufiResultTreeModel(false)' />
+ <JTable id="availableResultTable" model="{getAvailableResultTableModel()}"/>
+ <ListSelectionModel javaBean="availableResultTable.getSelectionModel()"
+ onValueChanged="addResultButton.setEnabled(getAvailableResultTable().getSelectedRow() != -1)" />
</JScrollPane>
</cell>
</row>
<row>
<cell weightx="1" anchor="center">
<JButton id="addResultButton" text="coser.ui.uploadresult.addResults"
- onActionPerformed="getHandler().addAvailableResult(this)" />
+ onActionPerformed="getHandler().addAvailableResult(this)" enabled="false" />
</cell>
</row>
<row>
@@ -87,16 +88,17 @@
<row>
<cell weightx="1" weighty="1" fill="both">
<JScrollPane>
- <RsufiResultTreeModel id="selectedProjectTableModel" initializer='new RsufiResultTreeModel(true)'
- onTableChanged='removeResultButton.setEnabled(getAvailableProjectTableModel().getRowCount() == 0)'/>
- <JTable id="selectedProjectTable" model="{getSelectedProjectTableModel()}"/>
+ <RsufiResultTreeModel id="selectedResultTableModel" initializer='new RsufiResultTreeModel(true)' />
+ <JTable id="selectedResultTable" model="{getSelectedResultTableModel()}" />
+ <ListSelectionModel javaBean="selectedResultTable.getSelectionModel()"
+ onValueChanged="removeResultButton.setEnabled(getSelectedResultTable().getSelectedRow() != -1)" />
</JScrollPane>
</cell>
</row>
<row>
<cell weightx="1" anchor="center">
<JButton id="removeResultButton" text="coser.ui.uploadresult.removeResults"
- onActionPerformed="getHandler().removeSelectedResult(this)"/>
+ onActionPerformed="getHandler().removeSelectedResult(this)" enabled="false" />
</cell>
</row>
<row>
Modified: trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/selection/SelectionHandler.java
===================================================================
--- trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/selection/SelectionHandler.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/java/fr/ifremer/coser/ui/selection/SelectionHandler.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -35,7 +35,6 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
-import java.util.Date;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
Modified: trunk/coser-ui/src/main/resources/i18n/coser-ui_en_GB.properties
===================================================================
--- trunk/coser-ui/src/main/resources/i18n/coser-ui_en_GB.properties 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/resources/i18n/coser-ui_en_GB.properties 2011-01-14 17:06:27 UTC (rev 511)
@@ -236,6 +236,7 @@
coser.ui.uploadresult.removeResults=Remove results
coser.ui.uploadresult.resultsextracted=Result extracted.
coser.ui.uploadresult.resultsuploaded=Results published.
+coser.ui.uploadresult.resultsuploaderror=Result upload fails for reason \: %s
coser.ui.uploadresult.selectedResults=Selected results \:
coser.ui.uploadresult.title=Results publication
coser.ui.uploadresult.upload=Send results
Modified: trunk/coser-ui/src/main/resources/i18n/coser-ui_fr_FR.properties
===================================================================
--- trunk/coser-ui/src/main/resources/i18n/coser-ui_fr_FR.properties 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-ui/src/main/resources/i18n/coser-ui_fr_FR.properties 2011-01-14 17:06:27 UTC (rev 511)
@@ -226,7 +226,7 @@
coser.ui.uploadresult.extract=Extraire
coser.ui.uploadresult.extractChoice=Extraire vers un dossier
coser.ui.uploadresult.extractTo=Dossier d'extraction \:
-coser.ui.uploadresult.extractWithData=Extraire les r\u00E9sultats avec les donn\uFFFDes sources
+coser.ui.uploadresult.extractWithData=Extraire les r\u00E9sultats avec les donn\u00E9es sources
coser.ui.uploadresult.filter.beginDate=Date de d\u00E9but \:
coser.ui.uploadresult.filter.endDate=Date de fin \:
coser.ui.uploadresult.filter.publiableResults=Seulement les r\u00E9sultats publiables
@@ -236,6 +236,7 @@
coser.ui.uploadresult.removeResults=Supprimer le r\u00E9sultat
coser.ui.uploadresult.resultsextracted=R\u00E9sultats extraits.
coser.ui.uploadresult.resultsuploaded=R\u00E9sultats publi\u00E9s.
+coser.ui.uploadresult.resultsuploaderror=Echec de l'envoi des r\u00E9sultats pour la raison \: %s
coser.ui.uploadresult.selectedResults=R\u00E9sultats s\u00E9lectionn\u00E9s \:
coser.ui.uploadresult.title=Publication des r\u00E9sultats
coser.ui.uploadresult.upload=Envoyer les r\u00E9sultats
Modified: trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/UploadResultAction.java
===================================================================
--- trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/UploadResultAction.java 2011-01-14 14:37:55 UTC (rev 510)
+++ trunk/coser-web/src/main/java/fr/ifremer/coser/web/actions/UploadResultAction.java 2011-01-14 17:06:27 UTC (rev 511)
@@ -31,9 +31,12 @@
import java.util.Date;
import java.util.Properties;
+import javax.servlet.http.HttpServletResponse;
+
import org.apache.commons.io.IOUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.struts2.ServletActionContext;
import org.nuiton.util.StringUtil;
import com.opensymphony.xwork2.Action;
@@ -126,6 +129,8 @@
if (log.isWarnEnabled()) {
log.warn("Wrong login/password : login = " + login);
}
+ HttpServletResponse response = ServletActionContext.getResponse();
+ response.setStatus(HttpServletResponse.SC_FORBIDDEN);
}
}
1
0
Author: chatellier
Date: 2011-01-14 14:37:55 +0000 (Fri, 14 Jan 2011)
New Revision: 510
Log:
Bug dependency:analyze
Modified:
trunk/coser-ui/pom.xml
Modified: trunk/coser-ui/pom.xml
===================================================================
--- trunk/coser-ui/pom.xml 2011-01-14 14:30:31 UTC (rev 509)
+++ trunk/coser-ui/pom.xml 2011-01-14 14:37:55 UTC (rev 510)
@@ -33,12 +33,7 @@
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
- <!-- bug mavenpom -->
<dependency>
- <groupId>org.apache.struts.xwork</groupId>
- <artifactId>xwork-core</artifactId>
- </dependency>
- <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
1
0
Author: chatellier
Date: 2011-01-14 14:30:31 +0000 (Fri, 14 Jan 2011)
New Revision: 509
Log:
Bug dependency:analyze
Modified:
trunk/coser-ui/pom.xml
Modified: trunk/coser-ui/pom.xml
===================================================================
--- trunk/coser-ui/pom.xml 2011-01-14 14:24:17 UTC (rev 508)
+++ trunk/coser-ui/pom.xml 2011-01-14 14:30:31 UTC (rev 509)
@@ -33,7 +33,12 @@
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
+ <!-- bug mavenpom -->
<dependency>
+ <groupId>org.apache.struts.xwork</groupId>
+ <artifactId>xwork-core</artifactId>
+ </dependency>
+ <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
1
0
Author: chatellier
Date: 2011-01-14 14:24:17 +0000 (Fri, 14 Jan 2011)
New Revision: 508
Log:
commons-io used
Modified:
trunk/coser-ui/pom.xml
Modified: trunk/coser-ui/pom.xml
===================================================================
--- trunk/coser-ui/pom.xml 2011-01-14 14:23:15 UTC (rev 507)
+++ trunk/coser-ui/pom.xml 2011-01-14 14:24:17 UTC (rev 508)
@@ -30,6 +30,10 @@
<artifactId>commons-logging</artifactId>
</dependency>
<dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ </dependency>
+ <dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
1
0