-;; }
-
-;; euphorik.include("jquery")
-;; euphorik.include("jquery.lightbox")
-;; euphorik.include("md5")
-;; euphorik.include("json2")
-
-;; euphorik.include("conf")
-;; euphorik.include("util")\r
-;; euphorik.include("formateur")\r
-;; euphorik.include("pages")
-
-;; euphorik.include("pageMinichat")
-;; euphorik.include("pageAdmin")
-;; euphorik.include("pageProfile")
-;; euphorik.include("pageRegister")
-;; euphorik.include("pageAbout")
-\r
-\r
-// tout un tas d'améliorations de JavaScript ;)\r
-/**\r
- * Pour chaque propriété de l'objet execute f(p, v) ou p est le nom de la propriété et v sa valeur.\r
- * Ne parcours pas les propriétés des prototypes.\r
- */\r
-Object.prototype.each = function(f) {\r
- for (var k in this) {\r
- if (this.hasOwnProperty(k)) {\r
- f(k, this[k]);\r
- }\r
- }\r
-};\r
-\r
-Array.prototype.each = function(f) {\r
- for (var i = 0; i < this.length; i++) {\r
- f(i, this[i]);\r
- }\r
-};\r
-\r
-Array.prototype.map = function(f) {\r
- for (var i = 0; i < this.length; i++) {\r
- this[i] = f(this[i])\r
- }\r
-};\r
+;; };
+
+
+// tout un tas d'améliorations de JavaScript ;)
+/**
+ * Pour chaque propriété de l'objet execute f(p, v) ou p est le nom de la propriété et v sa valeur.
+ * Ne parcours pas les propriétés des prototypes.
+ * FIXME : Normalement : Object.prototype.each = function(f) mais non supporté par jquery
+ */
+//Object.prototype.each = function(f) {
+var objectEach = function(o, f) {
+ for (var k in o) {
+ if (o.hasOwnProperty(k)) {
+ f(k, o[k]);
+ }
+ }
+};
+
+var objectMemberCount = function(o) {
+ var nb = 0;
+ for (var k in o) {
+ if (o.hasOwnProperty(k)) {
+ nb += 1;
+ }
+ }
+ return nb;
+};
+
+Array.prototype.each = function(f) {
+ for (var i = 0; i < this.length; i++) {
+ f(i, this[i]);
+ }
+};
+
+Array.prototype.map = function(f) {
+ for (var i = 0; i < this.length; i++) {
+ this[i] = f(this[i])
+ }
+};