diff --git a/resources/library/interactivities/Balance.wgt/config.xml b/resources/library/interactivities/Balance.wgt/config.xml
new file mode 100644
index 00000000..8b6e7741
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/config.xml
@@ -0,0 +1,15 @@
+
+
+
+ La Balance
+ njin
+
+
+
+
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.eot b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.eot
new file mode 100755
index 00000000..b96b90c7
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.eot differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.svg b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.svg
new file mode 100755
index 00000000..93074c91
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.svg
@@ -0,0 +1,379 @@
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.ttf b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.ttf
new file mode 100755
index 00000000..47b34293
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.ttf differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.woff b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.woff
new file mode 100755
index 00000000..0bd0b4dc
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/Lobster_1.3-webfont.woff differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/demo.html b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/demo.html
new file mode 100755
index 00000000..1bc61965
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/demo.html
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+ Font Face Demo
+
+
+
+
+
+
+
Font-face Demo for the Lobster Font
+
+
+
+
Lobster Regular - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+
+
+
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/stylesheet.css b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/stylesheet.css
new file mode 100755
index 00000000..d19342e7
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/Lobster/stylesheet.css
@@ -0,0 +1,16 @@
+/* Generated by Font Squirrel (http://www.fontsquirrel.com) on March 26, 2012 06:03:05 AM America/New_York */
+
+
+
+@font-face {
+ font-family: 'Lobster13Regular';
+ src: url('Lobster_1.3-webfont.eot');
+ src: url('Lobster_1.3-webfont.eot?#iefix') format('embedded-opentype'),
+ url('Lobster_1.3-webfont.woff') format('woff'),
+ url('Lobster_1.3-webfont.ttf') format('truetype'),
+ url('Lobster_1.3-webfont.svg#Lobster13Regular') format('svg');
+ font-weight: normal;
+ font-style: normal;
+
+}
+
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.eot b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.eot
new file mode 100755
index 00000000..3bff5391
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.eot differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.svg b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.svg
new file mode 100755
index 00000000..81933f60
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.svg
@@ -0,0 +1,237 @@
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.ttf b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.ttf
new file mode 100755
index 00000000..13307470
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.ttf differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.woff b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.woff
new file mode 100755
index 00000000..aaab7cec
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime-webfont.woff differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.eot b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.eot
new file mode 100755
index 00000000..ac1fd0d0
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.eot differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.svg b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.svg
new file mode 100755
index 00000000..ff631987
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.svg
@@ -0,0 +1,237 @@
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.ttf b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.ttf
new file mode 100755
index 00000000..47a8088a
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.ttf differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.woff b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.woff
new file mode 100755
index 00000000..ddf074eb
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch-webfont.woff differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.eot b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.eot
new file mode 100755
index 00000000..94d51427
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.eot differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.svg b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.svg
new file mode 100755
index 00000000..2ab9b626
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.svg
@@ -0,0 +1,237 @@
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.ttf b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.ttf
new file mode 100755
index 00000000..e1f76ba5
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.ttf differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.woff b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.woff
new file mode 100755
index 00000000..07d9c7a5
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Blotch_Italic-webfont.woff differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.eot b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.eot
new file mode 100755
index 00000000..bfb2f7db
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.eot differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.svg b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.svg
new file mode 100755
index 00000000..c543b941
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.svg
@@ -0,0 +1,237 @@
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.ttf b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.ttf
new file mode 100755
index 00000000..21c24cfa
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.ttf differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.woff b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.woff
new file mode 100755
index 00000000..f6ae9285
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold-webfont.woff differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.eot b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.eot
new file mode 100755
index 00000000..1ca8442e
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.eot differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.svg b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.svg
new file mode 100755
index 00000000..666bcb77
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.svg
@@ -0,0 +1,237 @@
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.ttf b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.ttf
new file mode 100755
index 00000000..cc4da56c
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.ttf differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.woff b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.woff
new file mode 100755
index 00000000..3c6df8de
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Bold_Italic-webfont.woff differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.eot b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.eot
new file mode 100755
index 00000000..72f7912c
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.eot differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.svg b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.svg
new file mode 100755
index 00000000..45af0b93
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.svg
@@ -0,0 +1,237 @@
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.ttf b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.ttf
new file mode 100755
index 00000000..2edf7ae2
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.ttf differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.woff b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.woff
new file mode 100755
index 00000000..d88bb523
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/SF_Toontime_Italic-webfont.woff differ
diff --git a/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/demo.html b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/demo.html
new file mode 100755
index 00000000..088d0105
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/css/fonts/SF-Toontime/demo.html
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+ Font Face Demo
+
+
+
+
+
+
+
FONT-FACE DEMO FOR THE TOONTIME FONT
+
+
+
+
SF Toontime Regular - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+
+
+
SF Toontime Italic - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+
+
+
SF Toontime Bold - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+
+
+
SF Toontime Bold Italic - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+
+
+
SF Toontime Blotch Regular - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+
+
+
SF Toontime Blotch Italic - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/i18n/Messages.properties b/resources/library/interactivities/Balance.wgt/i18n/Messages.properties
new file mode 100644
index 00000000..8d5d0465
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/i18n/Messages.properties
@@ -0,0 +1,13 @@
+fr.njin.i18n.document.title = balance
+
+fr.njin.i18n.toolbar.edit = Edit
+fr.njin.i18n.toolbar.view = Close
+fr.njin.i18n.toolbar.reload = Reload
+fr.njin.i18n.toolbar.help = Help
+
+fr.njin.i18n.parameters.label.themes = Theme
+fr.njin.i18n.parameters.label.slate.themes = slate
+fr.njin.i18n.parameters.label.pad.themes = pad
+fr.njin.i18n.parameters.label.none.themes = none
+
+fr.njin.i18n.balance.parameters.label.remove = Remove
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/i18n/Messages_fr.properties b/resources/library/interactivities/Balance.wgt/i18n/Messages_fr.properties
new file mode 100644
index 00000000..c4ee9e73
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/i18n/Messages_fr.properties
@@ -0,0 +1,13 @@
+fr.njin.i18n.document.title = La Balance
+
+fr.njin.i18n.toolbar.edit = Modifier
+fr.njin.i18n.toolbar.view = Afficher
+fr.njin.i18n.toolbar.reload = Recharger
+fr.njin.i18n.toolbar.help = Aide
+
+fr.njin.i18n.parameters.label.themes = Thèmes
+fr.njin.i18n.parameters.label.slate.themes = ardoise
+fr.njin.i18n.parameters.label.pad.themes = tablette
+fr.njin.i18n.parameters.label.none.themes = aucun
+
+fr.njin.i18n.balance.parameters.label.remove = Enlever
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/icon.png b/resources/library/interactivities/Balance.wgt/icon.png
new file mode 100644
index 00000000..fea858af
Binary files /dev/null and b/resources/library/interactivities/Balance.wgt/icon.png differ
diff --git a/resources/library/interactivities/Balance.wgt/index.html b/resources/library/interactivities/Balance.wgt/index.html
new file mode 100644
index 00000000..4acb565e
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/index.html
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/js/help-template.js b/resources/library/interactivities/Balance.wgt/js/help-template.js
new file mode 100644
index 00000000..c49c0759
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/js/help-template.js
@@ -0,0 +1 @@
+
balance
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/js/help_fr-template.js b/resources/library/interactivities/Balance.wgt/js/help_fr-template.js
new file mode 100644
index 00000000..c49c0759
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/js/help_fr-template.js
@@ -0,0 +1 @@
+
balance
\ No newline at end of file
diff --git a/resources/library/interactivities/Balance.wgt/js/lib/jquery-1.7.1.min.js b/resources/library/interactivities/Balance.wgt/js/lib/jquery-1.7.1.min.js
new file mode 100644
index 00000000..198b3ff0
--- /dev/null
+++ b/resources/library/interactivities/Balance.wgt/js/lib/jquery-1.7.1.min.js
@@ -0,0 +1,4 @@
+/*! jQuery v1.7.1 jquery.com | jquery.org/license */
+(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Cadran.wgt/i18n/Messages.properties b/resources/library/interactivities/Cadran.wgt/i18n/Messages.properties
new file mode 100644
index 00000000..d7320d54
--- /dev/null
+++ b/resources/library/interactivities/Cadran.wgt/i18n/Messages.properties
@@ -0,0 +1,11 @@
+fr.njin.i18n.document.title = Cadran opératoire
+
+fr.njin.i18n.toolbar.edit = Edit
+fr.njin.i18n.toolbar.view = Close
+fr.njin.i18n.toolbar.reload = Reload
+fr.njin.i18n.toolbar.help = Help
+
+fr.njin.i18n.parameters.label.themes = Theme
+fr.njin.i18n.parameters.label.slate.themes = slate
+fr.njin.i18n.parameters.label.pad.themes = pad
+fr.njin.i18n.parameters.label.none.themes = none
\ No newline at end of file
diff --git a/resources/library/interactivities/Cadran.wgt/i18n/Messages_fr.properties b/resources/library/interactivities/Cadran.wgt/i18n/Messages_fr.properties
new file mode 100644
index 00000000..939ff3d0
--- /dev/null
+++ b/resources/library/interactivities/Cadran.wgt/i18n/Messages_fr.properties
@@ -0,0 +1,11 @@
+fr.njin.i18n.document.title = Cadran opératoire
+
+fr.njin.i18n.toolbar.edit = Modifier
+fr.njin.i18n.toolbar.view = Afficher
+fr.njin.i18n.toolbar.reload = Recharger
+fr.njin.i18n.toolbar.help = Aide
+
+fr.njin.i18n.parameters.label.themes = Thèmes
+fr.njin.i18n.parameters.label.slate.themes = ardoise
+fr.njin.i18n.parameters.label.pad.themes = tablette
+fr.njin.i18n.parameters.label.none.themes = aucun
\ No newline at end of file
diff --git a/resources/library/interactivities/Cadran.wgt/icon.png b/resources/library/interactivities/Cadran.wgt/icon.png
new file mode 100644
index 00000000..d835a40c
Binary files /dev/null and b/resources/library/interactivities/Cadran.wgt/icon.png differ
diff --git a/resources/library/interactivities/Cadran.wgt/index.html b/resources/library/interactivities/Cadran.wgt/index.html
new file mode 100644
index 00000000..3a9dd736
--- /dev/null
+++ b/resources/library/interactivities/Cadran.wgt/index.html
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
?
+
12
+
+
+
+
+
+
0
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
11
+
+
+
+
+
*
+
-
+
/
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Cadran.wgt/js/help-template.js b/resources/library/interactivities/Cadran.wgt/js/help-template.js
new file mode 100644
index 00000000..e7d800e0
--- /dev/null
+++ b/resources/library/interactivities/Cadran.wgt/js/help-template.js
@@ -0,0 +1 @@
+
Le disque
\ No newline at end of file
diff --git a/resources/library/interactivities/Cadran.wgt/js/help_fr-template.js b/resources/library/interactivities/Cadran.wgt/js/help_fr-template.js
new file mode 100644
index 00000000..e7d800e0
--- /dev/null
+++ b/resources/library/interactivities/Cadran.wgt/js/help_fr-template.js
@@ -0,0 +1 @@
+
Le disque
\ No newline at end of file
diff --git a/resources/library/interactivities/Cadran.wgt/js/lib/jquery-1.7.1.min.js b/resources/library/interactivities/Cadran.wgt/js/lib/jquery-1.7.1.min.js
new file mode 100644
index 00000000..198b3ff0
--- /dev/null
+++ b/resources/library/interactivities/Cadran.wgt/js/lib/jquery-1.7.1.min.js
@@ -0,0 +1,4 @@
+/*! jQuery v1.7.1 jquery.com | jquery.org/license */
+(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Memory.wgt/i18n/Messages.properties b/resources/library/interactivities/Memory.wgt/i18n/Messages.properties
new file mode 100644
index 00000000..48ade354
--- /dev/null
+++ b/resources/library/interactivities/Memory.wgt/i18n/Messages.properties
@@ -0,0 +1,19 @@
+fr.njin.i18n.document.title = Memory
+
+fr.njin.i18n.toolbar.edit = Edit
+fr.njin.i18n.toolbar.view = Close
+fr.njin.i18n.toolbar.reload = Reload
+fr.njin.i18n.toolbar.help = Help
+
+fr.njin.i18n.parameters.label.themes = Theme
+fr.njin.i18n.parameters.label.slate.themes = slate
+fr.njin.i18n.parameters.label.pad.themes = pad
+fr.njin.i18n.parameters.label.none.themes = none
+
+fr.njin.i18n.memory.parameters.label.cards = Cards
+fr.njin.i18n.memory.parameters.option.cards = {0} cards
+fr.njin.i18n.memory.parameters.label.timeout = Timeout
+
+fr.njin.i18n.memory.label.usePicture = Image
+fr.njin.i18n.memory.label.drop = Drag and drop here
+fr.njin.i18n.memory.action.flip = Flip
\ No newline at end of file
diff --git a/resources/library/interactivities/Memory.wgt/i18n/Messages_fr.properties b/resources/library/interactivities/Memory.wgt/i18n/Messages_fr.properties
new file mode 100644
index 00000000..3b35c9c6
--- /dev/null
+++ b/resources/library/interactivities/Memory.wgt/i18n/Messages_fr.properties
@@ -0,0 +1,19 @@
+fr.njin.i18n.document.title = Memory
+
+fr.njin.i18n.toolbar.edit = Modifier
+fr.njin.i18n.toolbar.view = Afficher
+fr.njin.i18n.toolbar.reload = Recharger
+fr.njin.i18n.toolbar.help = Aide
+
+fr.njin.i18n.parameters.label.themes = Thèmes
+fr.njin.i18n.parameters.label.slate.themes = ardoise
+fr.njin.i18n.parameters.label.pad.themes = tablette
+fr.njin.i18n.parameters.label.none.themes = aucun
+
+fr.njin.i18n.memory.parameters.label.cards = Cartes
+fr.njin.i18n.memory.parameters.option.cards = {0} cartes
+fr.njin.i18n.memory.parameters.label.timeout = Délai
+
+fr.njin.i18n.memory.label.usePicture = Utiliser une image
+fr.njin.i18n.memory.label.drop = Glisser une ressource ici
+fr.njin.i18n.memory.action.flip = Tourner
\ No newline at end of file
diff --git a/resources/library/interactivities/Memory.wgt/icon.png b/resources/library/interactivities/Memory.wgt/icon.png
new file mode 100644
index 00000000..c82260bf
Binary files /dev/null and b/resources/library/interactivities/Memory.wgt/icon.png differ
diff --git a/resources/library/interactivities/Memory.wgt/index.html b/resources/library/interactivities/Memory.wgt/index.html
new file mode 100644
index 00000000..d3fc7bb8
--- /dev/null
+++ b/resources/library/interactivities/Memory.wgt/index.html
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Memory.wgt/js/help-template.js b/resources/library/interactivities/Memory.wgt/js/help-template.js
new file mode 100644
index 00000000..71d1b5c4
--- /dev/null
+++ b/resources/library/interactivities/Memory.wgt/js/help-template.js
@@ -0,0 +1,22 @@
+
Memory
+
Mental calculation, matching game
+
The goal of the App Memory is to make pairs and remembering the location of the various cards.
+
Cards are laid out in a grid face down. The player turns two cards. If the two cards match, cards are not covered. If they do not match, the cards are turned back over.
+
The game is over when all pairs have been found.
+
+
The "Edit" button allows you to :
+
+
change the theme of the App : tablet, slate, or none (by default tablet),
+
choose the number of cards (4, 6 or 8 cards),
+
select the displayed time of returned cards,
+
edit directly a card.
+
+
The cards have by default a text field. To insert text, click on it.
+
To add an image from your library, select the checkbox "use image" and drag and drop the item. You need to turn the card with the blue button before.
+
The cards are arranged randomly in the game mode.
+
The App is able to identify the equivalent mathematical entries (authorized signs: "+", "*", "-", "/" and parentheses). However avoid division by 0.
L’App Memory a pour but de faire des paires tout en mémorisant l’emplacement des différentes cartes.
+
Les cartes sont retournées face contre table de façon à ce que les images ne soient pas visibles. Le joueur découvre 2 cartes. Si elles sont identiques, elles restent découvertes. Si elles sont différentes, elles se retournent à nouveau.
+
La partie est terminée quand toutes les paires ont été trouvées.
+
+
Le bouton "éditer" vous permet de :
+
+
modifier le thème de l'interactivité : tablette, ardoise ou aucun (par défaut tablette),
+
choisir le nombre de cartes (4, 6 ou 8 cartes),
+
sélectionner le délai d’affichage des cartes retournées,
+
éditer directement une carte.
+
+
Les cartes possèdent par défaut un champ texte. Pour insérer du texte, cliquez sur cette dernière et saisissez le texte désiré. Pour ajouter une image depuis votre bibliothèque, cochez la case “utiliser une image” et utilisez le glisser-déposer. Il faut au préalable retourner la carte avec le bouton bleu.
+
Les cartes sont disposées de manière aléatoire dans le mode jeu.
+
L’App est capable d’identifier les écritures mathématiques équivalentes (signes autorisés : “+”, “*”, “-”, “/” et les parenthèses).
\ No newline at end of file
diff --git a/resources/library/interactivities/Memory.wgt/js/lib/jquery-1.7.1.min.js b/resources/library/interactivities/Memory.wgt/js/lib/jquery-1.7.1.min.js
new file mode 100644
index 00000000..198b3ff0
--- /dev/null
+++ b/resources/library/interactivities/Memory.wgt/js/lib/jquery-1.7.1.min.js
@@ -0,0 +1,4 @@
+/*! jQuery v1.7.1 jquery.com | jquery.org/license */
+(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Morpion.wgt/i18n/Messages.properties b/resources/library/interactivities/Morpion.wgt/i18n/Messages.properties
new file mode 100644
index 00000000..57dca2b4
--- /dev/null
+++ b/resources/library/interactivities/Morpion.wgt/i18n/Messages.properties
@@ -0,0 +1,14 @@
+fr.njin.i18n.document.title = Tic tac toe
+
+fr.njin.i18n.toolbar.edit = Edit
+fr.njin.i18n.toolbar.view = Close
+fr.njin.i18n.toolbar.reload = Reload
+fr.njin.i18n.toolbar.help = Help
+
+fr.njin.i18n.parameters.label.themes = Theme
+fr.njin.i18n.parameters.label.slate.themes = slate
+fr.njin.i18n.parameters.label.pad.themes = pad
+fr.njin.i18n.parameters.label.none.themes = none
+
+fr.njin.i18n.morpion.playerInfo = Player {0} ({1})
+fr.njin.i18n.morpion.cell.submit = Ok
\ No newline at end of file
diff --git a/resources/library/interactivities/Morpion.wgt/i18n/Messages_fr.properties b/resources/library/interactivities/Morpion.wgt/i18n/Messages_fr.properties
new file mode 100644
index 00000000..5790d783
--- /dev/null
+++ b/resources/library/interactivities/Morpion.wgt/i18n/Messages_fr.properties
@@ -0,0 +1,14 @@
+fr.njin.i18n.document.title = Morpion
+
+fr.njin.i18n.toolbar.edit = Modifier
+fr.njin.i18n.toolbar.view = Afficher
+fr.njin.i18n.toolbar.reload = Recharger
+fr.njin.i18n.toolbar.help = Aide
+
+fr.njin.i18n.parameters.label.themes = Thèmes
+fr.njin.i18n.parameters.label.slate.themes = ardoise
+fr.njin.i18n.parameters.label.pad.themes = tablette
+fr.njin.i18n.parameters.label.none.themes = aucun
+
+fr.njin.i18n.morpion.playerInfo = Joueur {0} ({1})
+fr.njin.i18n.morpion.cell.submit = Ok
\ No newline at end of file
diff --git a/resources/library/interactivities/Morpion.wgt/icon.png b/resources/library/interactivities/Morpion.wgt/icon.png
new file mode 100644
index 00000000..8e106b5b
Binary files /dev/null and b/resources/library/interactivities/Morpion.wgt/icon.png differ
diff --git a/resources/library/interactivities/Morpion.wgt/images/failed.png b/resources/library/interactivities/Morpion.wgt/images/failed.png
new file mode 100644
index 00000000..2539c152
Binary files /dev/null and b/resources/library/interactivities/Morpion.wgt/images/failed.png differ
diff --git a/resources/library/interactivities/Morpion.wgt/images/succeed.png b/resources/library/interactivities/Morpion.wgt/images/succeed.png
new file mode 100644
index 00000000..db3e2de3
Binary files /dev/null and b/resources/library/interactivities/Morpion.wgt/images/succeed.png differ
diff --git a/resources/library/interactivities/Morpion.wgt/index.html b/resources/library/interactivities/Morpion.wgt/index.html
new file mode 100644
index 00000000..a1978063
--- /dev/null
+++ b/resources/library/interactivities/Morpion.wgt/index.html
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/library/interactivities/Morpion.wgt/js/help-template.js b/resources/library/interactivities/Morpion.wgt/js/help-template.js
new file mode 100644
index 00000000..f43e336a
--- /dev/null
+++ b/resources/library/interactivities/Morpion.wgt/js/help-template.js
@@ -0,0 +1,20 @@
+
Tic Tac Toe
+
Mental calculation version
+
+
+The two players choose, complete and valid an operation in turn.
+Click the "check" button to verify the entry. The App is able to verify the calculation.
+If the answer is correct, the box is marked with a cross (X) or a circle (O) according to the player.
+If the answer is false, the other player takes the hand and begins to play.
+
+
The name of the player is displayed on the left : Player 1 (X), Player 2 (O).
+
+
The first player to get 3 of her marks ( X or O) in a row (up, down, across, or diagonally) is the winner.
+
+
The "Edit" button allows you to :
+
+
choose the theme of the App : tablet, slate, or none (by default tablet),
+
change the calculations that you want to use for your activity.
+
+
The App is able to identify mathematical scripture (authorized signs: "+", "*", "-", "/" and parentheses).
+
The "Reload" button restarts the game.
diff --git a/resources/library/interactivities/Morpion.wgt/js/help_fr-template.js b/resources/library/interactivities/Morpion.wgt/js/help_fr-template.js
new file mode 100644
index 00000000..b42e7e98
--- /dev/null
+++ b/resources/library/interactivities/Morpion.wgt/js/help_fr-template.js
@@ -0,0 +1,21 @@
+
Morpion
+
Version calcul mental
+
+
+Les deux joueurs choisissent, répondent et font valider tour à tour une opération dans une case.
+Une fois la réponse saisie, la “coche” permet de vérifier la réponse. L’App corrige la réponse.
+Si la réponse est correcte, la case est marquée d’une croix (X) ou d’un cercle (O) selon le joueur.
+Si la réponse est fausse, l’autre joueur prend la main.
+
+
Le nom du joueur figure à gauche : JOUEUR 1 (X), JOUEUR 2 (O).
+
+
Le premier joueur qui parvient à aligner trois de ses symboles (X ou O) gagne la partie.
+
+
Le bouton "éditer" vous permet de :
+
+
choisir le thème de l'interactivité : tablette, ardoise ou aucun (par défaut tablette),
+
modifier les calculs que vous voulez utiliser pour votre activité.
+
+
L’App est capable d’identifier les écritures mathématiques (signes autorisés : “+”, “*”, “-”, “/” et les parenthèses).
+
+
Le bouton "Recharger" permet de recommencer le jeu.