if (typeof(FOE) == 'undefined') FOE = {};
if (typeof(FOE.UI) == 'undefined') FOE.UI = {};
FOE.UI.Rater = function() {
var addTagScript = '/direct/dynaments/tagging/action/tag_maintenance.xml';
var contentClasses = '.contentarea';
var rateOptions = [];
var raterText = false;
var raterActive = true;
var init = function() {
$('body').addClass('dynamic');
$('.closed').children(contentClasses).toggle();
$('.boxtop').append('');
$('.boxtop .contenttoggle').click(function(e){
e.preventDefault();
$(this).parent().siblings(contentClasses).slideToggle("normal", function() {
$(this).parent().toggleClass('closed');
});
});
$('#yourtags a.addtag').click(function(e){
e.preventDefault();
var yourtags = $('#yourtags');
var tagcloud = yourtags.find('ul.tagcloud');
tagcloud.hide();
yourtags.find('.boxcontent form').remove();
yourtags.find('.boxcontent').append('
');
yourtags.find('.boxcontent form').submit(function(e){
e.preventDefault();
var tag = yourtags.find('#tag_name').val();
if (tag) {
yourtags.find('#tag_name').remove();
var xml = getXhttp( );
if ( !xml )
return false; //Usually you alert something but I don't :d
xml.open('POST', addTagScript);
xml.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xml.send('tag_name=' + tag + '&tag_pageid=4&tag_mode=add');
history.go(0);
tagcloud.slideDown();
$.post(addTagScript, {tag: tag}, function(data) {
if (data) {
var json = eval('(' + data + ')');
if (json) {
var i, l;
for (i=0, l=json.length; i'+json[i].tag+' ');
}
}
}
} );
yourtags.find('.boxcontent form').slideUp();
tagcloud.slideDown();
}
});
if (yourtags.is('.closed')) {
yourtags.find(contentClasses).slideDown("normal", function() {
$(this).parent().toggleClass('closed');
});
}
});
var rater = $('#rating-tagging select.rater');
if (rater) {
rater.find('option').each(function(i, obj){
rateOptions.push({
label: $(obj).text(),
value: $(obj).val()
});
});
var i;
for (i=0; i<5; i++) {
rater.before('');
}
rater.before(' Rollover stars to rate page
');
rater.remove();
raterText = $('#rating-tagging .rater span.rating');
$('#rating-tagging .rater span.rater-segment').mouseover(function(){
if (raterActive) {
var index = find_idx(this);
raterText.text(rateOptions[index].label);
highlight(index);
}
}).mouseout(function(){
if (raterActive) {
raterText.text(' ');
$('#rating-tagging .rater span.rater-segment').removeClass('selected');
}
}).click(function(e){
e.preventDefault();
raterActive = !raterActive;
if (!raterActive) {
$('#rater-value').val(find_idx(this)+1);
if ($('#rating-comments').is('.closed')) {
$('#rating-comments').find(contentClasses).slideToggle("normal", function() {
$(this).parent().toggleClass('closed');
flashButton();
});
}else{
flashButton();
}
}
})
}
}
var find_idx = function(obj) {
var id = $(obj).attr('id');
return parseInt(id.replace('rater-', ''));
}
var highlight = function(index) {
$('#rating-tagging .rater span.rater-segment').each(function(i, obj){
if (find_idx(obj) <= index) {
$(obj).addClass('selected');
}else{
$(obj).removeClass('selected');
}
});
}
var flashButton = function() {
$('#rating-tagging .ratingpanel input.submit').animate({opacity: 0.5}, 'fast', function(){$(this).animate({opacity: 1}, 'fast')});
}
return {
init: init
}
}();
jQuery(function($) { FOE.UI.Rater.init(); });
function getXhttp ( )
{
var ajax_request;
if ( window.ActiveXObject ) {
var mSoftVersions = [
'MSXML2.DOMDocument.5.0',
'MSXML2.DOMDocument.4.0',
'MSXML2.DOMDocument.3.0',
'MSXML2.DOMDocument.2.0',
'MSXML2.DOMDocument',
'Microsoft.XmlDom',
'Msxml2.XMLHTTP',
'Microsoft.XMLHTTP'
];
for ( i=0; i