commit
3ad8a10628
@ -0,0 +1,16 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<widget xmlns="http://www.w3.org/ns/widgets" |
||||
xmlns:ub="http://uniboard.mnemis.com/widgets" |
||||
id="http://uniboard.mnemis.com/widgets/webbrowser" |
||||
version="1.1" |
||||
width="700" |
||||
height="400" |
||||
ub:resizable="false"> |
||||
|
||||
<name>Choisir</name> |
||||
<author href="http://www.getuniboard.com" |
||||
email="info@mnemis.com">Mnemis SA</author> |
||||
<description>Choisir widget</description> |
||||
|
||||
<content src="index.html"/> |
||||
</widget> |
@ -0,0 +1,507 @@ |
||||
body{ |
||||
width: 100%; |
||||
padding: 0; |
||||
margin: 0 auto; |
||||
height: auto; |
||||
background-color: #666; |
||||
overflow: hidden; |
||||
} |
||||
|
||||
.toggleButton, .addButton{ |
||||
width: 20px; |
||||
height: 28px; |
||||
border: none; |
||||
background-image: url(../images/greySquare.png); |
||||
font-weight: bold; |
||||
font-family: Verdana; |
||||
color: yellow; |
||||
cursor: pointer; |
||||
-webkit-border-top-left-radius: 5px; |
||||
-webkit-border-bottom-left-radius: 5px; |
||||
border-top-left-radius: 5px; |
||||
border-bottom-left-radius: 5px; |
||||
} |
||||
|
||||
.buttonDiv, .addButtonDiv{ |
||||
position: fixed; |
||||
float: right; |
||||
z-index: 1; |
||||
} |
||||
|
||||
.addButtonDiv{ |
||||
display: none; |
||||
} |
||||
|
||||
.leftDiv{ |
||||
width: 50%; |
||||
float: left; |
||||
background-color: black; |
||||
-webkit-border-top-left-radius: 3px; |
||||
-webkit-border-bottom-left-radius: 3px; |
||||
border-top-left-radius: 3px; |
||||
border-bottom-left-radius: 3px; |
||||
} |
||||
|
||||
.rightDiv{ |
||||
width: 50%; |
||||
float: right; |
||||
background-color: yellow; |
||||
-webkit-border-top-right-radius: 3px; |
||||
-webkit-border-bottom-right-radius: 3px; |
||||
border-top-right-radius: 3px; |
||||
border-bottom-right-radius: 3px; |
||||
} |
||||
|
||||
.shadowDiv{ |
||||
width: 100%; |
||||
display: none; |
||||
opacity: 0.7; |
||||
background-color: black; |
||||
-webkit-border-radius: 3px; |
||||
-webkit-border-radius: 3px; |
||||
border-radius: 3px; |
||||
border-radius: 3px; |
||||
z-index: 100; |
||||
} |
||||
|
||||
.popupBack{ |
||||
width: 360px; |
||||
height: 138px; |
||||
position: absolute; |
||||
background-image: url(../images/popupBack.png); |
||||
background-repeat: repeat; |
||||
-webkit-border-radius: 10px; |
||||
-webkit-border-radius: 10px; |
||||
border-radius: 10px; |
||||
border-radius: 10px; |
||||
display: none; |
||||
z-index: 500; |
||||
} |
||||
|
||||
.popupContainers{ |
||||
float: left; |
||||
width: 98%; |
||||
height: 36px; |
||||
padding: 5px 3px 5px 0; |
||||
overflow: hidden; |
||||
} |
||||
|
||||
.popupLabels{ |
||||
color: yellow; |
||||
margin: 0 5px; |
||||
} |
||||
|
||||
.expresionInput{ |
||||
float: right; |
||||
width: 70%; |
||||
border: none; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
background-color: #ffc; |
||||
-webkit-border-radius: 5px; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
border-radius: 5px; |
||||
} |
||||
|
||||
.popupButtons{ |
||||
float: right; |
||||
width: 74px; |
||||
height: 28px; |
||||
margin: 4px 5px; |
||||
border: none; |
||||
background-image: url(../images/greySquare.png); |
||||
font-weight: bold; |
||||
font-family: Verdana; |
||||
color: yellow; |
||||
cursor: pointer; |
||||
-webkit-border-radius: 5px; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
border-radius: 5px; |
||||
} |
||||
|
||||
.readyTask{ |
||||
margin: 2px; |
||||
padding: 2px; |
||||
width: 100%; |
||||
height: 100%; |
||||
overflow: hidden; |
||||
z-index: 100; |
||||
} |
||||
|
||||
.taskContainer{ |
||||
width: 96%; |
||||
padding: 2px; |
||||
float: left; |
||||
text-align: center; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
font-weight: bold; |
||||
} |
||||
|
||||
.editContainer{ |
||||
position: absolute; |
||||
border: 5px solid #c7c7c7; |
||||
-webkit-border-radius: 5px; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
border-radius: 5px; |
||||
} |
||||
|
||||
.closeItem{ |
||||
width: 30px; |
||||
height: 30px; |
||||
position: absolute; |
||||
background-image: url(../images/icon-close.png); |
||||
right: -15px; |
||||
top: -15px; |
||||
} |
||||
|
||||
.rightResize{ |
||||
width: 10px; |
||||
height: 65%; |
||||
cursor: e-resize; |
||||
position: absolute; |
||||
background: none; |
||||
right: -10px; |
||||
top: 20%; |
||||
} |
||||
|
||||
.bottomResize{ |
||||
width: 65%; |
||||
height: 10px; |
||||
cursor: n-resize; |
||||
position: absolute; |
||||
background: none; |
||||
bottom: -10px; |
||||
left: 20%; |
||||
} |
||||
/* |
||||
.addQstDiv{ |
||||
float: left; |
||||
padding: 5px; |
||||
margin: 2px; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
font-size: large; |
||||
} |
||||
|
||||
.addQstButton{ |
||||
margin: 0; |
||||
border: none; |
||||
background: none; |
||||
color: #99ccff; |
||||
cursor: pointer; |
||||
} |
||||
|
||||
#addQsqSpan1{ |
||||
font-size: 30px; |
||||
margin-right: 10px !important; |
||||
} |
||||
|
||||
.qstDiv{ |
||||
width: 90%; |
||||
margin: 2px auto; |
||||
padding: 5px; |
||||
float: left; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
} |
||||
|
||||
.qstDivDisplay{ |
||||
width: 90%; |
||||
margin: 5px 5%; |
||||
padding: 5px; |
||||
float: left; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
border: 2px solid #cccccc; |
||||
-moz-border-radius: 5px; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
-moz-box-shadow: #dadada -1px 0 4px; |
||||
-webkit-box-shadow: #dadada -1px 0 4px; |
||||
box-shadow: #dadada -1px 0 4px; |
||||
} |
||||
|
||||
.spanOptConn{ |
||||
float: left; |
||||
width: 100%; |
||||
} |
||||
|
||||
.qstNumber{ |
||||
float: left; |
||||
font-size: 30px; |
||||
margin-left: 10px !important; |
||||
color: #00C6FF; |
||||
} |
||||
|
||||
.qstOptions{ |
||||
float: right; |
||||
} |
||||
|
||||
.changeOptions{ |
||||
border: none; |
||||
background-image: url(../images/grayClose.png); |
||||
background-color: white; |
||||
background-repeat: no-repeat; |
||||
background-position: 0 50%; |
||||
width: auto; |
||||
padding-left: 18px; |
||||
color: #00C6FF; |
||||
cursor: pointer; |
||||
} |
||||
|
||||
.applyChanges{ |
||||
border: none; |
||||
background-image: url(../images/blueClose.png); |
||||
background-color: white; |
||||
background-repeat: no-repeat; |
||||
background-position: 0 50%; |
||||
width: auto; |
||||
padding-left: 18px; |
||||
color: #00C6FF; |
||||
cursor: pointer; |
||||
} |
||||
|
||||
.qstDelete{ |
||||
border: none; |
||||
background-image: url(../images/boldClose.png); |
||||
background-color: white; |
||||
background-repeat: no-repeat; |
||||
background-position: 0 50%; |
||||
width: auto; |
||||
padding-left: 28px; |
||||
line-height: 35px; |
||||
cursor: pointer; |
||||
} |
||||
|
||||
.qstContent{ |
||||
float: left; |
||||
padding: 3px; |
||||
margin-left: 10px; |
||||
margin-bottom: 10px; |
||||
width: 95%; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
font-size: small; |
||||
border: 3px solid #ccc; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
-moz-box-shadow: #dadada -1px 0 4px; |
||||
-webkit-box-shadow: #dadada -1px 0 4px; |
||||
box-shadow: #dadada -1px 0 4px; |
||||
} |
||||
|
||||
.qstContentDisplay{ |
||||
float: left; |
||||
padding: 5px; |
||||
margin: 10px; |
||||
width: 100%; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
color:#333333; |
||||
} |
||||
|
||||
.ansDiv{ |
||||
float: left; |
||||
margin-left: 100px; |
||||
width: 80%; |
||||
} |
||||
|
||||
.ansAdd{ |
||||
border: none; |
||||
background: url(../images/blueClose.png) -0px -0px no-repeat; |
||||
background-color: white; |
||||
width: auto; |
||||
padding-left: 20px; |
||||
line-height: 24px; |
||||
color: #99ccff; |
||||
cursor: pointer; |
||||
} |
||||
|
||||
.newAnswer{ |
||||
float: left; |
||||
width: 100%; |
||||
margin: 3px; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
} |
||||
|
||||
.ansSpan{ |
||||
border: none; |
||||
background-color: white; |
||||
color: #00C6FF; |
||||
font-size: 14px; |
||||
float: left; |
||||
margin: 0 3px; |
||||
width: 20px; |
||||
} |
||||
|
||||
.ansSpanDisplay{ |
||||
color: #00C6FF; |
||||
font-size: 14px; |
||||
float: left; |
||||
} |
||||
|
||||
.ansContent{ |
||||
padding: 1px 3px 3px 3px; |
||||
margin-left: 5px; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
font-size: small; |
||||
width: 80%; |
||||
float: left; |
||||
border: 3px solid #ccc; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
-moz-box-shadow: #dadada -1px 0 4px; |
||||
-webkit-box-shadow: #dadada -1px 0 4px; |
||||
box-shadow: #dadada -1px 0 4px; |
||||
} |
||||
|
||||
.ansContentDisplay{ |
||||
padding: 1px 3px 3px 3px; |
||||
margin-left: 5px; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
font-size: small; |
||||
width: 90%; |
||||
float: left; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
} |
||||
|
||||
.ansDelete{ |
||||
float: left; |
||||
border: none; |
||||
background-image: url(../images/boldGreyClose.png); |
||||
background-color: white; |
||||
background-repeat: no-repeat; |
||||
background-position: 0 50%; |
||||
cursor: pointer; |
||||
margin: 0 5px; |
||||
} |
||||
|
||||
.qstOptChoice{ |
||||
width: 80%; |
||||
margin: 10px 10%; |
||||
float: left; |
||||
background-color: #F3F3F2; |
||||
border-top-width: 1px; |
||||
border-right-width: 1px; |
||||
border-bottom-width: 1px; |
||||
border-left-width: 1px; |
||||
border-top-style: solid; |
||||
border-right-style: solid; |
||||
border-bottom-style: solid; |
||||
border-left-style: solid; |
||||
border-top-color: #ECECEB; |
||||
border-right-color: #ECECEB; |
||||
border-bottom-color: #ECECEB; |
||||
border-left-color: #ECECEB; |
||||
border-top-left-radius: 5px 5px; |
||||
border-top-right-radius: 5px 5px; |
||||
border-bottom-right-radius: 5px 5px; |
||||
border-bottom-left-radius: 5px 5px; |
||||
-webkit-box-shadow: #dededd 0 0 2px inset; |
||||
padding: 0; |
||||
} |
||||
|
||||
.optDescImg{ |
||||
padding: 2px; |
||||
margin: 5px; |
||||
background: url(../images/tool.png) -0px -0px no-repeat; |
||||
float: left; |
||||
margin-left: 20px; |
||||
width: 56px; |
||||
height: 51px; |
||||
} |
||||
|
||||
.optDescText{ |
||||
text-align: center; |
||||
width: 70%; |
||||
color: #666666; |
||||
float: left; |
||||
font-size: small; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
margin: 3px 5px; |
||||
padding: 5px; |
||||
} |
||||
|
||||
.type{ |
||||
float: left; |
||||
margin: 10px; |
||||
padding: 5px; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
-moz-box-shadow: #dadada -1px 0 4px; |
||||
-webkit-box-shadow: #dadada -1px 0 4px; |
||||
box-shadow: #dadada -1px 0 4px; |
||||
} |
||||
|
||||
.contentType{ |
||||
width: 100%; |
||||
padding: 0; |
||||
margin: 0; |
||||
background-color: white; |
||||
border-bottom: 1px solid #DFDFDE; |
||||
border-top-left-radius: 5px 5px; |
||||
border-top-right-radius: 5px 5px; |
||||
} |
||||
|
||||
.divType1, .divType2, .divType3 { |
||||
width: 122px; |
||||
height: 97px; |
||||
padding: 0 15px; |
||||
margin-left: 30px; |
||||
} |
||||
|
||||
.divType1{ |
||||
background: url(../images/1thOption.png)-0px -0px no-repeat; |
||||
} |
||||
|
||||
.divType2{ |
||||
background: url(../images/2thOption.png)-0px -0px no-repeat; |
||||
} |
||||
|
||||
.divType3{ |
||||
background: url(../images/3thOption.png)-0px -0px no-repeat; |
||||
} |
||||
|
||||
.textType{ |
||||
width: 160px; |
||||
font-size: small; |
||||
font-family: Verdana,Arial,Helvetica,sans-serif; |
||||
color: #666; |
||||
padding: 3px; |
||||
margin-left: 20px; |
||||
} |
||||
|
||||
.radioDiv{ |
||||
background-color: #F5F5F5; |
||||
border-top: 1px solid white; |
||||
width: 100%; |
||||
padding: 0; |
||||
margin: 0; |
||||
height: 30px; |
||||
border-bottom-right-radius: 5px 5px; |
||||
border-bottom-left-radius: 5px 5px; |
||||
} |
||||
|
||||
.radioType{ |
||||
float: right; |
||||
margin: 2px; |
||||
padding: 3px; |
||||
} |
||||
|
||||
.popupWordInfo{ |
||||
position: absolute; |
||||
display: none; |
||||
width: 100px; |
||||
height: 20px; |
||||
top: 0; |
||||
left: 0; |
||||
text-align: center; |
||||
border: 1px solid #B9B9B9; |
||||
background-color: #eaebeb; |
||||
color: #666; |
||||
-webkit-border-radius: 5px; |
||||
border-radius: 5px; |
||||
-webkit-box-shadow: #dadada -1px 0 4px; |
||||
box-shadow: #dadada -1px 0 4px; |
||||
z-index: 100; |
||||
} |
||||
*/ |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 214 B |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 861 B |
@ -0,0 +1,25 @@ |
||||
<!-- |
||||
To change this template, choose Tools | Templates |
||||
and open the template in the editor. |
||||
--> |
||||
<!DOCTYPE html> |
||||
<html> |
||||
<head> |
||||
<title></title> |
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
||||
<link rel="stylesheet" type="text/css" href="css/basic.css"/> |
||||
<script type="text/javascript" src="scripts/jquery-1.6.2.min.js"></script> |
||||
<script src="scripts/jquery.disable.text.select.js" type="text/javascript"></script> |
||||
<script type="text/javascript" src="scripts/blackYellow.js"></script> |
||||
<script type="text/javascript"> |
||||
|
||||
$(document).ready(function(){ |
||||
init(); |
||||
}); |
||||
|
||||
</script> |
||||
</head> |
||||
<body> |
||||
|
||||
</body> |
||||
</html> |
@ -0,0 +1,398 @@ |
||||
/* |
||||
* This program is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU 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 General Public License |
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/ |
||||
|
||||
|
||||
function init(){ |
||||
|
||||
//variables
|
||||
var toggleFlag = false; // detects toggling in toggle button
|
||||
var endFlag = false; // ending of toggling in toggle button
|
||||
var addToggleStart = false; // detects toggling in add button
|
||||
var addToggleEnd = false; // ending of toggling in add button
|
||||
var shadowOver = false; |
||||
var mode = false; |
||||
var popupFlag = false |
||||
var flagForSelect = false; |
||||
var dragElement = null; //the element that must be dragging
|
||||
var coords = { |
||||
left:0, |
||||
top:0 |
||||
} |
||||
|
||||
var resizeObj = { |
||||
y:false, |
||||
x:false, |
||||
width:0, |
||||
height:0 |
||||
} |
||||
|
||||
var opacityChanged = false; |
||||
|
||||
if(window.sankore){ |
||||
if(sankore.preference("blackYellowData","")){ |
||||
var importArray = jQuery.parseJSON(sankore.preference("blackYellowData","")); |
||||
for(var i in importArray){ |
||||
var tmpReadyTask = $("<div class='readyTask'>"); |
||||
var exprContainer = $("<div class='taskContainer' style='color: yellow;'>" + importArray[i].data1 + "</div>").appendTo(tmpReadyTask); |
||||
var resContainer = $("<div class='taskContainer' style='color: black;'>"+ importArray[i].data2 + "</div>").appendTo(tmpReadyTask); |
||||
tmpReadyTask.width(importArray[i].width) |
||||
.height(importArray[i].height) |
||||
.css("position","absolute") |
||||
.css("top",importArray[i].top) |
||||
.css("left",importArray[i].left);
|
||||
tmpReadyTask.appendTo("body"); |
||||
}
|
||||
} |
||||
$(document).disableTextSelect(); |
||||
} |
||||
|
||||
/* ------------- BUTTONS -------------*/ |
||||
|
||||
// toggle button
|
||||
var buttonDiv = $("<div id='buttonDiv' class='buttonDiv'>").appendTo("body"); |
||||
var toggleButton = $("<button id='toggleButton' class='toggleButton'><</button>").appendTo("#buttonDiv"); |
||||
buttonDiv.css({ |
||||
top:"10px", |
||||
right:0 |
||||
});
|
||||
|
||||
//toggle mode
|
||||
toggleButton.click(function(){ |
||||
if(!shadowOver){ |
||||
if(mode){ |
||||
mode = false; |
||||
addButtonDiv.css("display","none"); |
||||
$(".leftDiv, .rightDiv").animate({ |
||||
"opacity":"1" |
||||
},"slow",function(){ |
||||
if(opacityChanged){ |
||||
if($(".editContainer").size() != 0){ |
||||
$(".editContainer").each(function(index, domElem){ |
||||
var tmpReadyTask = $(domElem).find(".readyTask"); |
||||
tmpReadyTask.width($(domElem).width()) |
||||
.height($(domElem).height()) |
||||
.css("position","absolute") |
||||
.css("top",$(domElem).position().top) |
||||
.css("left",$(domElem).position().left) |
||||
.find(".taskContainer").removeAttr("contenteditable");
|
||||
|
||||
$(domElem).remove(); |
||||
tmpReadyTask.appendTo("body"); |
||||
}); |
||||
} |
||||
opacityChanged = false; |
||||
} |
||||
}); |
||||
$(document).disableTextSelect();
|
||||
} else {
|
||||
mode = true; |
||||
addButtonDiv.css("display","block");
|
||||
$(document).enableTextSelect();
|
||||
$(".leftDiv, .rightDiv").animate({ |
||||
"opacity":"0.4" |
||||
},"slow",function(){ |
||||
if(!opacityChanged){ |
||||
if($(".readyTask").size() != 0){ |
||||
$(".readyTask").each(function(index, domElem){
|
||||
var editContent = $("<div class='editContainer'>").width($(domElem).width() + 10).height($(domElem) + 10).appendTo("body"); |
||||
var closeItem = $("<div class='closeItem'>").appendTo(editContent); |
||||
var rightResize = $("<div class='rightResize'>").appendTo(editContent); |
||||
var bottomResize = $("<div class='bottomResize'>").appendTo(editContent); |
||||
editContent.css("top", $(domElem).position().top).css("left", $(domElem).position().left); |
||||
$(domElem).css("position","static") |
||||
.width("100%") |
||||
.height("100%") |
||||
.find(".taskContainer").attr("contenteditable", "true"); |
||||
$(domElem).appendTo(editContent); |
||||
}); |
||||
} |
||||
opacityChanged = true; |
||||
} |
||||
}); |
||||
|
||||
} |
||||
toggleButton.trigger("mouseout"); |
||||
} |
||||
}); |
||||
|
||||
// toggle button events
|
||||
toggleButton.mouseover(function(){ |
||||
if(!shadowOver){ |
||||
if(!toggleFlag && !endFlag){ |
||||
endFlag = true; |
||||
toggleButton.animate({ |
||||
width:"72px" |
||||
},"fast",function(){ |
||||
toggleFlag = true; |
||||
if(!mode) |
||||
toggleButton.text("Edit"); |
||||
else |
||||
toggleButton.text("Display"); |
||||
}); |
||||
} |
||||
} |
||||
}); |
||||
|
||||
toggleButton.mouseout(function(){ |
||||
if(!shadowOver){ |
||||
if(toggleFlag && endFlag){ |
||||
endFlag = false; |
||||
toggleButton.animate({ |
||||
width:"20px" |
||||
},"fast", function(){ |
||||
toggleButton.text("<"); |
||||
toggleFlag = false; |
||||
}); |
||||
} |
||||
} |
||||
}); |
||||
|
||||
//add button
|
||||
var addButtonDiv = $("<div id='addButtonDiv' class='addButtonDiv'>").appendTo("body"); |
||||
var addButton = $("<button id='addButton' class='addButton'>+</button>").appendTo("#addButtonDiv"); |
||||
addButtonDiv.css({ |
||||
top:"47px", |
||||
right:0 |
||||
});
|
||||
|
||||
// add button events
|
||||
addButton.click(function(){ |
||||
shadowDiv.show("fast", function(){ |
||||
shadowOver = true; |
||||
popupBack.show("slow");
|
||||
}); |
||||
$(document).disableTextSelect(); |
||||
addButton.trigger("mouseout"); |
||||
}); |
||||
|
||||
addButton.mouseover(function(){ |
||||
if(!shadowOver){ |
||||
if(!addToggleStart && !addToggleEnd){ |
||||
addToggleEnd = true; |
||||
addButton.animate({ |
||||
width:"72px" |
||||
},"fast",function(){ |
||||
addToggleStart = true; |
||||
addButton.text("Add"); |
||||
}); |
||||
} |
||||
} |
||||
}); |
||||
|
||||
addButton.mouseout(function(){ |
||||
if(!shadowOver){ |
||||
if(addToggleStart && addToggleEnd){ |
||||
addToggleEnd = false; |
||||
addButton.animate({ |
||||
width:"20px" |
||||
},"fast", function(){ |
||||
addButton.text("+"); |
||||
addToggleStart = false; |
||||
}); |
||||
} |
||||
} |
||||
}); |
||||
|
||||
/* -------------- END OF WORK WITH BUTTONS ---------------*/ |
||||
|
||||
//basic divs
|
||||
var leftDiv = $("<div id='leftDiv' class='leftDiv'>").appendTo("body"); |
||||
var rightDiv = $("<div id='rightDiv' class='rightDiv'>").appendTo("body"); |
||||
|
||||
//divs for adding a new item
|
||||
var shadowDiv = $("<div id='shadowDiv' class='shadowDiv'>").appendTo("body"); |
||||
var popupBack = $("<div id='popupBack' class='popupBack'>").appendTo("body"); |
||||
|
||||
//input fields and buttons for a popup window
|
||||
var expressionDiv = $("<div id='expressionDiv' class='popupContainers'>").appendTo(popupBack); |
||||
var experssionLabel = $("<span id='experssionLabel' class='popupLabels'><b>Enter data:</b></span>").appendTo(expressionDiv); |
||||
var expresionText = $("<input type='text' id='expresionText' class='expresionInput'/>").appendTo(expressionDiv); |
||||
|
||||
var resultDiv = $("<div id='resultDiv' class='popupContainers'>").appendTo(popupBack); |
||||
var resultLabel = $("<span id='resultLabel' class='popupLabels'><b>Enter result:</b></span>").appendTo(resultDiv); |
||||
var resultText = $("<input type='text' id='resultText' class='expresionInput'/>").appendTo(resultDiv); |
||||
|
||||
var popupButtonsDiv= $("<div id='popupButtonsDiv' class='popupContainers'>").appendTo(popupBack); |
||||
var cancelButton = $("<input type='button' id='cancelButton' class='popupButtons' value='Cancel'/>").appendTo(popupButtonsDiv); |
||||
var okButton = $("<input type='button' id='okButton' class='popupButtons' value='Ok'/>").appendTo(popupButtonsDiv); |
||||
|
||||
/* -------------- A WORK WITH POPUP BUTTONS AND FIELDS ---------------*/ |
||||
|
||||
$("#resultText, #expresionText").keyup(function(){ |
||||
if($(this).val()){ |
||||
$(this).css("background-color", "#ff9"); |
||||
} |
||||
}); |
||||
|
||||
cancelButton.click(function(){ |
||||
$(document).enableTextSelect(); |
||||
popupBack.hide("slow", function(){ |
||||
$("#resultText, #expresionText").val("") |
||||
.css("background-color", "#ffc"); |
||||
shadowDiv.hide("fast"); |
||||
shadowOver = false;
|
||||
});
|
||||
}); |
||||
|
||||
okButton.click(function(){ |
||||
$(document).enableTextSelect(); |
||||
if(checkEmptyFields(expresionText) && checkEmptyFields(resultText)){ |
||||
popupBack.hide("slow", function(){ |
||||
shadowDiv.hide("fast"); |
||||
shadowOver = false; |
||||
addTask(expresionText.val(), resultText.val()); |
||||
$("#resultText, #expresionText").val("") |
||||
.css("background-color", "#ffc"); |
||||
}) |
||||
} |
||||
}); |
||||
|
||||
/* -------------- THE END OF WORK WITH POPUP BUTTONS AND FIELDS ---------------*/
|
||||
|
||||
// a work with dragging possibility
|
||||
$("input:text").mouseover(function(){ |
||||
$(document).enableTextSelect();
|
||||
}); |
||||
|
||||
$("input:text").mouseout(function(){ |
||||
$(document).disableTextSelect();
|
||||
}); |
||||
|
||||
$(".readyTask, .editContainer").live("mousedown",function(event){ |
||||
if(!shadowOver){ |
||||
dragElement = $(this); |
||||
coords.left = event.pageX - $(this).position().left; |
||||
coords.top = event.pageY - $(this).position().top; |
||||
resizeObj.width = $(this).width(); |
||||
resizeObj.height = $(this).height(); |
||||
} |
||||
}); |
||||
|
||||
$(".rightResize").live("mousedown",function(event){ |
||||
if(!shadowOver){ |
||||
resizeObj.x = true; |
||||
} |
||||
}); |
||||
|
||||
$(".bottomResize").live("mousedown",function(event){ |
||||
if(!shadowOver){ |
||||
resizeObj.y = true; |
||||
} |
||||
}); |
||||
|
||||
$("body").mouseup(function(event){ |
||||
if(!shadowOver){ |
||||
dragElement = null; |
||||
resizeObj.x = false; |
||||
resizeObj.y = false; |
||||
} |
||||
}); |
||||
|
||||
$("body").mousemove(function(event){ |
||||
if(dragElement && !shadowOver){ |
||||
if(resizeObj.x) |
||||
dragElement.width(event.pageX - dragElement.position().left); |
||||
else if(resizeObj.y)
|
||||
dragElement.height(event.pageY - dragElement.position().top); |
||||
else |
||||
dragElement.css("top",event.pageY - coords.top).css("left", event.pageX - coords.left); |
||||
} |
||||
}); |
||||
|
||||
//closing item
|
||||
$(".closeItem").live("click", function(){ |
||||
if(!shadowOver){ |
||||
$(this).parent().remove(); |
||||
} |
||||
}); |
||||
|
||||
$("#leftDiv,#rightDiv,#shadowDiv").css("height", $(window).height()); |
||||
popupBack.css("top", ($(window).height() - 138)*50/$(window).height() + "%"); |
||||
popupBack.css("left", ($(window).width() - 360)*50/$(window).width() + "%"); |
||||
|
||||
$(window).resize(function(){ |
||||
$("#leftDiv,#rightDiv,#shadowDiv").css("height", $(window).height()); |
||||
popupBack.css("top", ($(window).height() - 138)*50/$(window).height() + "%"); |
||||
popupBack.css("left", ($(window).width() - 360)*50/$(window).width() + "%"); |
||||
}); |
||||
|
||||
$("html").mouseout(function(){ |
||||
if(window.sankore) |
||||
exportToSankore();
|
||||
}); |
||||
|
||||
// export data
|
||||
function exportToSankore(){ |
||||
|
||||
var objToExport = { |
||||
data1:"", |
||||
data2:"", |
||||
width:0, |
||||
height:0, |
||||
top:0, |
||||
left:0 |
||||
}
|
||||
var arrayToExport = new Array();
|
||||
if(mode){
|
||||
if($(".editContainer").size() != 0){ |
||||
$(".editContainer").each(function(index, domElem){
|
||||
objToExport.data1 = $(domElem).find(".readyTask").find(":first-child").text(); |
||||
objToExport.data2 = $(domElem).find(".readyTask").find(":last-child").text(); |
||||
objToExport.width = $(domElem).width(); |
||||
objToExport.height = $(domElem).height(); |
||||
objToExport.top = $(domElem).position().top; |
||||
objToExport.left = $(domElem).position().left; |
||||
arrayToExport.push(objToExport); |
||||
}); |
||||
} |
||||
} else {
|
||||
if($(".readyTask").size() != 0){ |
||||
$(".readyTask").each(function(index, domElem){ |
||||
objToExport.data1 = $(domElem).find(":first-child").text(); |
||||
objToExport.data2 = $(domElem).find(":last-child").text(); |
||||
objToExport.width = $(domElem).width(); |
||||
objToExport.height = $(domElem).height(); |
||||
objToExport.top = $(domElem).position().top; |
||||
objToExport.left = $(domElem).position().left; |
||||
arrayToExport.push(objToExport); |
||||
}); |
||||
}
|
||||
} |
||||
sankore.setPreference("blackYellowData", JSON.stringify(arrayToExport)); |
||||
} |
||||
} |
||||
|
||||
//checking empty fields
|
||||
function checkEmptyFields(field){ |
||||
if(field.val() == ""){ |
||||
field.css("background-color", "red"); |
||||
return false; |
||||
} else { |
||||
field.css("background-color", "#ff9"); |
||||
return true; |
||||
} |
||||
} |
||||
|
||||
//adding a new task to the page
|
||||
function addTask(expression, result){ |
||||
var editContent = $("<div class='editContainer'>").width(240).height(70).appendTo("body"); |
||||
var closeItem = $("<div class='closeItem'>").appendTo(editContent); |
||||
var rightResize = $("<div class='rightResize'>").appendTo(editContent); |
||||
var bottomResize = $("<div class='bottomResize'>").appendTo(editContent); |
||||
var main = $("<div class='readyTask'>"); |
||||
var exprContainer = $("<div class='taskContainer' style='color: yellow;' contenteditable='true'>" + expression + "</div>").appendTo(main); |
||||
var resContainer = $("<div class='taskContainer' style='color: black;' contenteditable='true'>"+ result + "</div>").appendTo(main); |
||||
main.appendTo(editContent); |
||||
} |
File diff suppressed because one or more lines are too long
@ -0,0 +1,62 @@ |
||||
/** |
||||
* .disableTextSelect - Disable Text Select Plugin |
||||
* |
||||
* Version: 1.1 |
||||
* Updated: 2007-11-28 |
||||
* |
||||
* Used to stop users from selecting text |
||||
* |
||||
* Copyright (c) 2007 James Dempster (letssurf@gmail.com, http://www.jdempster.com/category/jquery/disabletextselect/)
|
||||
* |
||||
* Dual licensed under the MIT (MIT-LICENSE.txt) |
||||
* and GPL (GPL-LICENSE.txt) licenses. |
||||
**/ |
||||
|
||||
/** |
||||
* Requirements: |
||||
* - jQuery (John Resig, http://www.jquery.com/)
|
||||
**/ |
||||
(function($) { |
||||
if ($.browser.mozilla) { |
||||
$.fn.disableTextSelect = function() { |
||||
return this.each(function() { |
||||
$(this).css({ |
||||
'MozUserSelect' : 'none' |
||||
}); |
||||
}); |
||||
}; |
||||
$.fn.enableTextSelect = function() { |
||||
return this.each(function() { |
||||
$(this).css({ |
||||
'MozUserSelect' : '' |
||||
}); |
||||
}); |
||||
}; |
||||
} else if ($.browser.msie) { |
||||
$.fn.disableTextSelect = function() { |
||||
return this.each(function() { |
||||
$(this).bind('selectstart.disableTextSelect', function() { |
||||
return false; |
||||
}); |
||||
}); |
||||
}; |
||||
$.fn.enableTextSelect = function() { |
||||
return this.each(function() { |
||||
$(this).unbind('selectstart.disableTextSelect'); |
||||
}); |
||||
}; |
||||
} else { |
||||
$.fn.disableTextSelect = function() { |
||||
return this.each(function() { |
||||
$(this).bind('mousedown.disableTextSelect', function() { |
||||
return false; |
||||
}); |
||||
}); |
||||
}; |
||||
$.fn.enableTextSelect = function() { |
||||
return this.each(function() { |
||||
$(this).unbind('mousedown.disableTextSelect'); |
||||
}); |
||||
}; |
||||
} |
||||
})(jQuery); |
Loading…
Reference in new issue