diff --git a/resources/library/interactivities/Balance.wgt/config.xml b/resources/library/interactivities/Balance.wgt/config.xml
index 738583bf..8b6e7741 100644
--- a/resources/library/interactivities/Balance.wgt/config.xml
+++ b/resources/library/interactivities/Balance.wgt/config.xml
@@ -3,8 +3,8 @@
xmlns:ub="http://uniboard.mnemis.com/widgets"
id="http://www.njin.fr/sankore/apps/balance"
version="1.0"
- width="1025"
- height="880"
+ width="540"
+ height="450"
ub:resizable="true">
La Balance
diff --git a/resources/library/interactivities/Balance.wgt/css/images/delete.png b/resources/library/interactivities/Balance.wgt/css/images/delete.png
index 22bf8f29..c896c1ab 100644
Binary files a/resources/library/interactivities/Balance.wgt/css/images/delete.png and b/resources/library/interactivities/Balance.wgt/css/images/delete.png differ
diff --git a/resources/library/interactivities/Balance.wgt/css/images/graduations.png b/resources/library/interactivities/Balance.wgt/css/images/graduations.png
index 88e65ba3..5756880c 100644
Binary files a/resources/library/interactivities/Balance.wgt/css/images/graduations.png and b/resources/library/interactivities/Balance.wgt/css/images/graduations.png differ
diff --git a/resources/library/interactivities/Balance.wgt/css/images/pivot.png b/resources/library/interactivities/Balance.wgt/css/images/pivot.png
index d5137e29..72e8e264 100644
Binary files a/resources/library/interactivities/Balance.wgt/css/images/pivot.png and b/resources/library/interactivities/Balance.wgt/css/images/pivot.png differ
diff --git a/resources/library/interactivities/Balance.wgt/css/images/scale.png b/resources/library/interactivities/Balance.wgt/css/images/scale.png
index 386184c2..b201a386 100644
Binary files a/resources/library/interactivities/Balance.wgt/css/images/scale.png and b/resources/library/interactivities/Balance.wgt/css/images/scale.png differ
diff --git a/resources/library/interactivities/Balance.wgt/css/images/scales.png b/resources/library/interactivities/Balance.wgt/css/images/scales.png
index 1fea726c..cb25be60 100644
Binary files a/resources/library/interactivities/Balance.wgt/css/images/scales.png and b/resources/library/interactivities/Balance.wgt/css/images/scales.png differ
diff --git a/resources/library/interactivities/Balance.wgt/css/images/weight-add.png b/resources/library/interactivities/Balance.wgt/css/images/weight-add.png
index 9e043661..329d4969 100644
Binary files a/resources/library/interactivities/Balance.wgt/css/images/weight-add.png and b/resources/library/interactivities/Balance.wgt/css/images/weight-add.png differ
diff --git a/resources/library/interactivities/Balance.wgt/css/images/weight.png b/resources/library/interactivities/Balance.wgt/css/images/weight.png
index 32b0c536..5970846e 100644
Binary files a/resources/library/interactivities/Balance.wgt/css/images/weight.png and b/resources/library/interactivities/Balance.wgt/css/images/weight.png differ
diff --git a/resources/library/interactivities/Balance.wgt/css/main.css b/resources/library/interactivities/Balance.wgt/css/main.css
index 616ed26e..baf0662b 100644
--- a/resources/library/interactivities/Balance.wgt/css/main.css
+++ b/resources/library/interactivities/Balance.wgt/css/main.css
@@ -15,7 +15,7 @@
}
#scalesWrapper {
- padding: 0px 100px 200px;
+ padding: 0px 100px 100px;
position: relative;
}
@@ -29,10 +29,10 @@
.scale {
position: absolute;
- width: 250px;
+ width: 125px;
height: 0;
- padding: 200px 45px 50px;
- top: 145px;
+ padding: 90px 20px 35px;
+ top: 72px;
background: url(images/scale.png) no-repeat center bottom;
}
@@ -45,12 +45,12 @@
#leftScale {
left: 0;
- margin-left: -150px;
+ margin-left: -75px;
}
#rightScale {
right: 0;
- margin-right: -150px;
+ margin-right: -75px;
}
#tray {
@@ -58,27 +58,27 @@
background-color: red;
top: 50%;
margin-top: -1px;
- width: 550px;
- height: 288px;
+ width: 225px;
+ height: 144px;
background: url("images/scales.png") no-repeat center;
}
#graduations {
- width: 100px;
- height: 30px;
+ width: 50px;
+ height: 15px;
position: absolute;
top: 0;
left: 50%;
- margin-left: -50px;
+ margin-left: -25px;
background: url(images/graduations.png) center no-repeat;
}
#pivot {
position: absolute;
- width: 80px;
- height: 80px;
- left: 235px;
- top: 106px;
+ width: 40px;
+ height: 40px;
+ left: 93px;
+ top: 52px;
background: url(images/pivot.png) center no-repeat;
}
@@ -101,14 +101,14 @@
text-indent: -100px;
- width: 68px;
- height: 70px;
+ width: 34px;
+ height: 34px;
margin-left: 10px;
cursor: pointer;
- border-radius: 4px;
+ border-radius: 2px;
border: 1px solid rgba(255,255,255, 0.15);
background: rgba(0,0,0, 0.15) url(images/weight-add.png) center no-repeat;
}
@@ -124,15 +124,15 @@
.object input {
border: none;
- width: 40px;
- padding: none;
- margin: 0 2px 0 0;
+ width: 100%;
+ padding: 0;
+ margin: 0;
text-align: center;
- font-size: 16px;
+ font-size: 12px;
color: #000;
- border-radius: 3px;
+ border-radius: 2px;
background-color: #FFF;
box-shadow: 0 1px 2px rgba(0,0,0, 0.4);
}
@@ -140,7 +140,7 @@
.object .tools {
display: none;
position: absolute;
- top: -23px;
+ top: -13px;
width: 100%;
text-align: center;
}
@@ -150,8 +150,8 @@
position: relative;
overflow: hidden;
cursor: pointer;
- width: 22px;
- height: 22px;
+ width: 11px;
+ height: 11px;
text-indent: -100px;
border: none;
margin: 0;
@@ -180,7 +180,7 @@
position: absolute;
width: 100%;
height: 20px;
- top: 72px;
+ top: 36px;
border-radius: 4px;
box-shadow: 0 3px 0 #999, 0 1px 2px rgba(0,0,0, .65);
background-color: #CCC;
@@ -198,9 +198,9 @@
#weights {
display: none;
position: absolute;
- top: 40px;
- right: 40px;
- width: 230px;
+ top: 20px;
+ right: 0px;
+ width: 160px;
}
.onEdit #weights {
@@ -213,21 +213,26 @@
.weight {
position: relative;
- width: 64px;
- height: 70px;
-
+
+ width: 32px;
+ height: 35px;
+
margin-left: 10px;
margin-bottom: 30px;
- font-size: 16px;
+ font-size: 12px;
text-align: center;
color: #CCC;
text-shadow: 0 -1px 0 #000;
}
+.weight .unit {
+ font-size: 10px;
+}
+
.weight .amount {
height: 100%;
- padding: 4px 4px 0;
+ padding: 4px 2px 0;
border-radius: 4px;
border: 1px solid rgba(255,255,255, 0.15);
background-color: rgba(0,0,0, 0.15);
@@ -235,10 +240,10 @@
.weight > div.bg {
position: absolute;
- left: -3px;
+ left: -2px;
bottom: -18px;
- width: 70px;
- height: 64px;
+ width: 35px;
+ height: 32px;
background: url(images/weight.png) no-repeat center bottom;
}
diff --git a/resources/library/interactivities/Balance.wgt/js/main.js b/resources/library/interactivities/Balance.wgt/js/main.js
index 089559fb..9b5bc3f6 100644
--- a/resources/library/interactivities/Balance.wgt/js/main.js
+++ b/resources/library/interactivities/Balance.wgt/js/main.js
@@ -1,14 +1,47 @@
+var weighValues = [500,200,100,50,20,10];
+
function onTemplateLoadedCallback(app) {
- $("#weights").append($(Mustache.render(weightTemplate, {weight: 500})));
- $("#weights").append($(Mustache.render(weightTemplate, {weight: 200})));
- $("#weights").append($(Mustache.render(weightTemplate, {weight: 100})));
- $("#weights").append($(Mustache.render(weightTemplate, {weight: 50})));
- $("#weights").append($(Mustache.render(weightTemplate, {weight: 20})));
- $("#weights").append($(Mustache.render(weightTemplate, {weight: 10})));
+ $.each(weighValues, function(){
+ $("#weights").append($(Mustache.render(weightTemplate, {weight: this})));
+ });
$("#weights > .weight").draggable({helper: "clone"});
+
+ $("#leftScale").droppable({
+ accept: ".object",
+ drop: function(event, ui) {
+ if($(ui.draggable).hasClass("inScale"))
+ return;
+
+ var object = $(ui.draggable).clone();
+ object.data("weight", $(ui.draggable).data("weight"));
+
+ object.addClass("inScale");
+ $("#leftScale").append(object);
+
+ placeObject($("#leftScale"), object);
+
+ refreshScales();
+
+ object.draggable({
+ stop: function(event, ui) {
+ if($(ui.helper).hasClass("onOut")) {
+ $(ui.helper).remove();
+ refreshScales();
+ }
+ }
+ });
+ },
+ out: function(event, ui) {
+ $(ui.draggable).addClass("onOut");
+ },
+ over: function(event, ui) {
+ $(ui.draggable).removeClass("onOut");
+ }
+ });
+
$("#rightScale").droppable({
- accept: ".weight",
+ accept: ".weight.right",
drop: function(event, ui) {
if($(ui.draggable).hasClass("inScale"))
return;
@@ -72,6 +105,10 @@ function objectForGUID(app, guid) {
window.object = guid;
var objectUi = $(Mustache.render(objectTemplate, window));
var weight = getWeightFor(app.parameters, guid);
+
+ if(!app.onEdit && (weight == undefined || $.trim(weight) == ""))
+ weight = weighValues[Math.floor(Math.random()*weighValues.length)];
+
if(weight !== undefined) {
objectUi.data("weight", weight);
objectUi.find("input[name=weight]").val(weight);
@@ -137,8 +174,8 @@ function placeObject($container, $object) {
var count = $container.children().size() - 1;
- var left = width * (count % 4) + 25;
- var bottom = height * (Math.floor(count / 4)) + 40;
+ var left = width * (count % 4) + 5;
+ var bottom = height * (Math.floor(count / 4)) + 12;
log("Place at ["+left+" , "+bottom+"]");
$object.css("left", left+"px").css("bottom", bottom+"px");
@@ -215,39 +252,6 @@ function reloadApp(app) {
}
refreshScales();
-
- $("#leftScale").droppable({
- accept: ".object",
- drop: function(event, ui) {
- if($(ui.draggable).hasClass("inScale"))
- return;
-
- var object = $(ui.draggable).clone();
- object.data("weight", $(ui.draggable).data("weight"));
-
- object.addClass("inScale");
- $("#leftScale").append(object);
-
- placeObject($("#leftScale"), object);
-
- refreshScales();
-
- object.draggable({
- stop: function(event, ui) {
- if($(ui.helper).hasClass("onOut")) {
- $(ui.helper).remove();
- refreshScales();
- }
- }
- });
- },
- out: function(event, ui) {
- $(ui.draggable).addClass("onOut");
- },
- over: function(event, ui) {
- $(ui.draggable).removeClass("onOut");
- }
- });
if(app.onEdit) {
diff --git a/resources/library/interactivities/Balance.wgt/js/templates.js b/resources/library/interactivities/Balance.wgt/js/templates.js
index 1f683036..e18176e9 100644
--- a/resources/library/interactivities/Balance.wgt/js/templates.js
+++ b/resources/library/interactivities/Balance.wgt/js/templates.js
@@ -23,8 +23,8 @@ var objectTemplate =
'
'+
''+
'
'+
- 'g
'+
+ ''+
'';
var weightTemplate =
- '';
\ No newline at end of file
+ '';
\ No newline at end of file
diff --git a/resources/library/interactivities/Morpion.wgt/js/main.js b/resources/library/interactivities/Morpion.wgt/js/main.js
index 70b0c546..1473f7e6 100644
--- a/resources/library/interactivities/Morpion.wgt/js/main.js
+++ b/resources/library/interactivities/Morpion.wgt/js/main.js
@@ -148,7 +148,8 @@ function isGameEnd(i, j) {
}
function isCellsWin(cells) {
- if((player == cells.eq(0).data("player") == cells.eq(1).data("player") == cells.eq(2).data("player")))
+ var n = ((3*player) - (parseInt(cells.eq(0).data("player")) + parseInt(cells.eq(1).data("player")) + parseInt(cells.eq(2).data("player"))));
+ if( n == 0 )
return cells;
return null;
}
diff --git a/resources/library/interactivities/Train.wgt/js/main.js b/resources/library/interactivities/Train.wgt/js/main.js
index a8d264e9..d77f3fca 100644
--- a/resources/library/interactivities/Train.wgt/js/main.js
+++ b/resources/library/interactivities/Train.wgt/js/main.js
@@ -8,9 +8,18 @@ function revert($e) {
elmt.className = elmt.className.replace(/(d(\d+))/, "");
}
+function getN(range) {
+ if(range > 1)
+ return Math.floor(Math.random()*range);
+ else if(range == 1)
+ return Math.round(Math.random()*10)/10;
+ else if(range == 0.1)
+ return Math.round(Math.random()*0.1*100)/100;
+}
+
function reloadApp(app) {
var operator = app.parameters.value("operator");
- var range = parseInt(app.parameters.value("range"));
+ var range = parseFloat(app.parameters.value("range"));
var count = parseInt(app.parameters.value("count"));
$scene = $("#scene");
@@ -25,16 +34,12 @@ function reloadApp(app) {
var meeted = [];
for (var i = 0; i < count; i++) {
- var n = Math.floor(Math.random()*range);
-
- while($.inArray(n, meeted) != -1) {
- if(range > 1)
- n = Math.floor(Math.random()*range);
- else
- n = Math.round(Math.random()*range*100)/100;
- }
-
+
+ var n = getN(range);
+ while($.inArray(n, meeted) != -1)
+ n = getN(range);
+
meeted.push(n);
$label = $(""+n+"
");
diff --git a/resources/library/interactivities/Train.wgt/js/templates.js b/resources/library/interactivities/Train.wgt/js/templates.js
index e62c381e..f53d27dd 100644
--- a/resources/library/interactivities/Train.wgt/js/templates.js
+++ b/resources/library/interactivities/Train.wgt/js/templates.js
@@ -31,6 +31,7 @@ var parametersTemplate =
''+
'