Skip to content

Commit

Permalink
Dev Label set browser now fully functional
Browse files Browse the repository at this point in the history
git-svn-id: file:///Users/Shitiz/Downloads/lssvn/source/limesurvey_dev_cs@8297 b72ed6b6-b9f8-46b5-92b4-906544132732
  • Loading branch information
c-schmitz committed Jan 24, 2010
1 parent e4fe0c1 commit 19aa060
Show file tree
Hide file tree
Showing 2 changed files with 136 additions and 7 deletions.
9 changes: 4 additions & 5 deletions admin/html.php
Expand Up @@ -1283,7 +1283,7 @@
$vasummary .= "<div class='header'>\n"
.$clang->gT("Edit answer options")
."</div>\n"
."<form id='editanswersform' name='editanswers' method='post' action='$scriptname'>\n"
."<form id='editanswersform' name='editanswersform' method='post' action='$scriptname'>\n"
. "<input type='hidden' name='sid' value='$surveyid' />\n"
. "<input type='hidden' name='gid' value='$gid' />\n"
. "<input type='hidden' name='qid' value='$qid' />\n"
Expand Down Expand Up @@ -1417,29 +1417,28 @@
$vasummary .= "<input type='hidden' id='lid0' name='lid0' value='{$qrow['lid']}' />\n";
$vasummary .= "<input type='hidden' id='lid1' name='lid1' value='{$qrow['lid1']}' />\n";
}
$vasummary .= "<button id='btnlsbrowser_{$scale_id}' class='btnlsbrowser' type='button'>".$clang->gT('Predefined label sets...')."</button>";

}

$position=sprintf("%05d", $position);

$first=false;
$vasummary .= "</tbody></table>\n";
$vasummary .= "</div>";
}
// Label set browser
$vasummary .= "<button id='btnlsbrowser' type='button'>".$clang->gT('Browse label sets...')."</button>";
$vasummary .= "<div id='labelsetbrowser' style='display:none;'><div style='float:left;'>
<label for='labelsets'>".$clang->gT('Available label sets:')."</label>
<br /><select id='labelsets' size='10' style='width:250px;'><option>A label set</option></select>
<br/><input type='checkbox' checked='checked' id='languagefilter'><label for='languagefilter'>".$clang->gT('Match language')."</label>
<br/><input type='checkbox' checked='checked' id='languagefilter' /><label for='languagefilter'>".$clang->gT('Match language')."</label>
<br /><button id='btnlsreplace' type='button'>".$clang->gT('Replace')."</button>
<button id='btnlsinsert' type='button'>".$clang->gT('Add')."</button>
<button id='btncancel' type='button'>".$clang->gT('Cancel')."</button></div>
<div id='labelsetpreview' style='float:right;width:500px;'></div></div> ";
// Save button
$vasummary .= "<p><input type='submit' id='saveallbtn_$anslang' name='method' value='".$clang->gT("Save changes")."' />\n";
$vasummary .= "</div></form></td></tr></table>";
$vasummary .= "</div></form>";


}
Expand Down
134 changes: 132 additions & 2 deletions admin/scripts/answers.js
Expand Up @@ -12,12 +12,15 @@ $(document).ready(function(){
modal: true,
width:800,
title: lsbrowsertitle});
$('#btnlsbrowser').click(lsbrowser);
$('.btnlsbrowser').click(lsbrowser);
$('#btncancel').click(function(){
$('#labelsetbrowser').dialog('close');
});
$('#btnlsreplace').click(transferlabels);
$('#btnlsinsert').click(transferlabels);
$('#labelsets').click(lspreview);
$('#languagefilter').click(lsbrowser);
updaterowproperties();
});


Expand Down Expand Up @@ -249,7 +252,7 @@ function code_duplicates_check()

function lsbrowser()
{

var scale_id=removechars($(this).attr('id'));
$('#labelsetbrowser').dialog( 'open' );
surveyid=$('input[name=sid]').val();
match=0;
Expand Down Expand Up @@ -343,4 +346,131 @@ function addlabels()
for (x in languages)
{
}
}

function transferlabels()
{
if ($(this).attr('id')=='btnlsreplace')
{
var lsreplace=true;
}
else
{
var lsreplace=false;
}
var lsid=$('#labelsets').selectedValues();
$.ajax({
url: 'admin.php?action=ajaxlabelsetdetails',
dataType: 'json',
data: {lid:lsid},
cache: true,
success: function(json){
languages=langs.split(';');
var x;
for (x in languages)
{
if (assessmentvisible)
{
assessment_style='';
assessment_type='text';
}
else
{
assessment_style='style="display:none;"';
assessment_type='hidden';
}

var tablerows='';
var y;
for (y in json)
{

language=json[y];
defaultdata=language[languages[0]][0];
for (z in language)
{
if (z==languages[y])
{
lsrows=language[z][0];
}
else
{
lsrows=defaultdata;
}
var k;
for (k in lsrows)
{
if (x==0) {
tablerows=tablerows+'<tr class="row_'+k+'" ><td><img class="handle" src="../images/handle.png" /></td><td><input class="code" type="text" maxlength="5" size="5" value="'+lsrows[k].code+'" /></td><td '+assessment_style+'><input class="assessment" type="'+assessment_type+'" maxlength="5" size="5" value="1"/></td><td><input type="text" size="80" class="answer" value="'+lsrows[k].title+'"></input><img src="../images/edithtmlpopup.png" class="btneditanswer" /></td><td><img src="../images/addanswer.png" class="btnaddanswer" /><img src="../images/deleteanswer.png" class="btndelanswer" /></td></tr>'
}
else
{
tablerows=tablerows+'<tr class="row_'+k+'" ><td>&nbsp;</td><td>&nbsp;</td><td><input type="text" size="80" class="answer" value="'+lsrows[k].code+'"></input><img src="../images/edithtmlpopup.png" class="btnaddanswer" /></td><td><img src="../images/addanswer.png" class="btnaddanswer" /><img src="../images/deleteanswer.png" class="btndelanswer" /></td></tr>'
}
}
}
}
if (lsreplace) {
$('#answers_'+languages[x]+'_'+scale_id+' tbody').empty();
}
$('#answers_'+languages[x]+'_'+scale_id+' tbody').append(tablerows);
// Unbind any previous events
$('#answers_'+languages[x]+'_'+scale_id+' .btnaddanswer').unbind('click');
$('#answers_'+languages[x]+'_'+scale_id+' .btneditanswer').unbind('click');
$('#answers_'+languages[x]+'_'+scale_id+' .btndelanswer').unbind('click');
$('#answers_'+languages[x]+'_'+scale_id+' .answer').unbind('focus');
$('#answers_'+languages[x]+'_'+scale_id+' .btnaddanswer').click(addinput);
$('#answers_'+languages[x]+'_'+scale_id+' .btneditanswer').click(popupeditor);
$('#answers_'+languages[x]+'_'+scale_id+' .btndelanswer').click(deleteinput);
$('#answers_'+languages[x]+'_'+scale_id+' .answer').focus(function(){
if ($(this).val()==newansweroption_text)
{
$(this).val('');
}
});
}
$('#labelsetbrowser').dialog('close');
$('.answertable tbody').sortable('refresh');
updaterowproperties();

}}
);


}

function in_array (needle, haystack, argStrict) {
// http://kevin.vanzonneveld.net
// + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
// + improved by: vlado houba
// + input by: Billy
// + bugfixed by: Brett Zamir (http://brett-zamir.me)
// * example 1: in_array('van', ['Kevin', 'van', 'Zonneveld']);
// * returns 1: true
// * example 2: in_array('vlado', {0: 'Kevin', vlado: 'van', 1: 'Zonneveld'});
// * returns 2: false
// * example 3: in_array(1, ['1', '2', '3']);
// * returns 3: true
// * example 3: in_array(1, ['1', '2', '3'], false);
// * returns 3: true
// * example 4: in_array(1, ['1', '2', '3'], true);
// * returns 4: false

var key = '', strict = !!argStrict;

if (strict) {
for (key in haystack) {
if (haystack[key] === needle) {
return true;
}
}
} else {
for (key in haystack) {
if (haystack[key] == needle) {
return true;
}
}
}

return false;
}

0 comments on commit 19aa060

Please sign in to comment.