From: <var...@us...> - 2010-05-19 07:53:22
|
Revision: 7413 http://phpwiki.svn.sourceforge.net/phpwiki/?rev=7413&view=rev Author: vargenau Date: 2010-05-19 07:53:16 +0000 (Wed, 19 May 2010) Log Message: ----------- Adapt for Gforge Modified Paths: -------------- trunk/themes/gforge/wikilens.js Modified: trunk/themes/gforge/wikilens.js =================================================================== --- trunk/themes/gforge/wikilens.js 2010-05-19 07:48:48 UTC (rev 7412) +++ trunk/themes/gforge/wikilens.js 2010-05-19 07:53:16 UTC (rev 7413) @@ -33,18 +33,23 @@ var curr_rating = rating[imgId]; var curr_pred = prediction[imgId]; var title = ''; + var imgSrc = rateit_imgsrc; if (init) { // re-initialize titles title = msg_curr_rating+curr_rating+' '+ratings[curr_rating*2]; var linebreak = '. '; //
 or 
 within IE only; if (pred) { title = title+' '+msg_curr_prediction+ curr_pred+' '+ratings[curr_pred*2]; } + if (curr_rating) { + document[cancel].style.display = 'inline'; + } + else { + document[cancel].style.display = 'none'; + } } for (var i=1; i<=10; i++) { var imgName = imgId + i; - var imgSrc = rateit_imgsrc; if (init) { - if (curr_rating) document[cancel].style.display = 'inline'; document[imgName].title = title; var j = i/2; if (ratingvalue > 0) { @@ -73,7 +78,8 @@ } } function sprintfRating(s, num, count) { - var num1 = num.toString().replace(/\.(\d).*/, '.$1'); + var num1 = Math.round(num * 10) / 10; + if (count < 2) s = s.replace(/votes/, 'vote'); return s.replace(/\%.1f/, num1).replace(/\%d/, count); } function clickRating(imgPrefix,pagename,version,imgId,dimension,newrating) { @@ -83,50 +89,57 @@ var old_rating = rating[imgId]; if (newrating == 'X') { deleteRating(actionImg,pagename,dimension); - displayRating(imgId,imgPrefix,0,0,1); if (top && nusers) { var sum1 = avg[imgId] * nusers; var new_avg; - if (nusers > 1) - new_avg = (sum1 - old_rating) / (nusers-1); - else - new_avg = 0.0; + if (old_rating && old_rating > 0) { + if (nusers > 1) { + new_avg = (sum1 - old_rating) / (nusers - 1); + numusers[imgId]--; + } + else { + new_avg = 0; + numusers[imgId] = 0; + } + } if (new_avg.toString() != "NaN") { + avg[imgId] = new_avg; top.childNodes[0].innerHTML = sprintfRating(msg_rating_votes, new_avg, nusers-1); - avg[imgId] = new_avg; - numusers[imgId]--; } } rating[imgId] = 0; + displayRating(imgId,imgPrefix,0,0,1); } else { submitRating(actionImg,pagename,version,dimension,newrating); - displayRating(imgId,imgPrefix,newrating,0,1); if (top && nusers) { - var new_avg; var sum1 = avg[imgId] * nusers; + var new_avg; if (old_rating && (old_rating > 0)) { new_avg = (sum1 + newrating - old_rating) / nusers; } else { new_avg = (sum1 + newrating) / (nusers + 1); - avg[imgId] = new_avg; numusers[imgId]++; } - if ((rating != rating[imgId]) && (new_avg.toString() != "NaN")) { - top.childNodes[0].innerHTML = sprintfRating(msg_rating_votes, new_avg, numusers[imgId]); - } + if (new_avg.toString() != "NaN") { + avg[imgId] = new_avg; + if (newrating != rating[imgId]) { + top.childNodes[0].innerHTML = sprintfRating(msg_rating_votes, new_avg, numusers[imgId]); + } + } } else if (top) { top.childNodes[0].innerHTML = sprintfRating(msg_rating_votes, newrating, 1); avg[imgId] = newrating; numusers[imgId] = 1; } rating[imgId] = newrating; + displayRating(imgId,imgPrefix,newrating,0,1); } } function submitRating(actionImg,page,version,dimension,newrating) { //TODO: GET => PUT request // currently ratings are changed with side-effect, but GET should be side-effect free. var myRand = Math.round(Math.random()*(1000000)); - var imgSrc = WikiURL(page) + 'version=' + version + '&action=' + rateit_action + '+&mode=add&rating=' + newrating + '&dimension=' + dimension + '&nocache=1&nopurge=1&rand=' + myRand; + var imgSrc = WikiURL(page) + 'version=' + version + '&action=' + rateit_action + '&mode=add&rating=' + newrating + '&dimension=' + dimension + '&nocache=1&nopurge=1&rand=' + myRand; //alert('submitRating("'+actionImg+'", "'+page+'", '+version+', '+dimension+', '+newrating+') => '+imgSrc); document[actionImg].title = msg_thanks; document[actionImg].src = imgSrc; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <var...@us...> - 2010-06-10 13:42:18
|
Revision: 7522 http://phpwiki.svn.sourceforge.net/phpwiki/?rev=7522&view=rev Author: vargenau Date: 2010-06-10 13:42:12 +0000 (Thu, 10 Jun 2010) Log Message: ----------- Add displayRating2 Modified Paths: -------------- trunk/themes/gforge/wikilens.js Modified: trunk/themes/gforge/wikilens.js =================================================================== --- trunk/themes/gforge/wikilens.js 2010-06-10 13:36:55 UTC (rev 7521) +++ trunk/themes/gforge/wikilens.js 2010-06-10 13:42:12 UTC (rev 7522) @@ -15,7 +15,7 @@ var msg_rating_votes = "Rating: %.1f (%d votes)"; var msg_curr_rating = "Your current rating: "; var msg_curr_prediction = "Your current prediction: "; -var msg_chg_rating = "Change your rating from "; +//var msg_chg_rating = "Change your rating from "; var msg_to = " to "; var msg_add_rating = "Add your rating: "; var msg_thanks = "Thanks!"; @@ -50,19 +50,19 @@ for (var i=1; i<=10; i++) { var imgName = imgId + i; if (init) { - document[imgName].title = title; + //document[imgName].title = title; var j = i/2; if (ratingvalue > 0) { if (curr_rating) { - document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,curr_rating,0,0) }; + document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,avg[imgId],0,0) }; } else if (curr_pred) { document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,curr_pred,1,0) }; } - if (curr_rating != ratingvalue) { + if (curr_rating != ratingvalue && typeof(msg_chg_rating) != "undefined") { document[imgName].title = msg_chg_rating+curr_rating+' '+ratings[curr_rating*2]+msg_to+j+' '+ratings[i]; } } else { - document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,0,0,0) }; + document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,avg[imgId],0,0) }; document[imgName].title = msg_add_rating+j+' '+ratings[i]; } } @@ -77,6 +77,72 @@ document[imgName].src = imgSrc + imgPrefix + imgType + ((i%2) ? 'k1' : 'k0') + '.png'; } } + +function displayRating2(imgId, imgPrefix, ratingvalue, pred, init) { + var ratings = new Array('Not Rated','Awful','Very Poor','Poor','Below Average', + 'Average','Above Average','Good','Very Good','Excellent','Outstanding'); + var cancel = imgId + imgPrefix + 'Cancel'; + var curr_rating = rating[imgId]; + var curr_pred = prediction[imgId]; + var title = ''; + var imgSrc = rateit_imgsrc; + if (init) { // re-initialize titles + title = msg_curr_rating+curr_rating+' '+ratings[curr_rating*2]; + var linebreak = '. '; //
 or 
 within IE only; + if (pred) { + title = title+' '+msg_curr_prediction+ curr_pred+' '+ratings[curr_pred*2]; + } + if (curr_rating) { + document[cancel].style.display = 'inline'; + } + else { + document[cancel].style.display = 'none'; + } + } + for (var i=1; i<=10; i++) { + var imgName = imgId + i; + if (init) { + //document[imgName].title = title; + var j = i/2; + if (ratingvalue > 0) { + if (curr_rating) { + document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,avg[imgId],0,0) }; + } else if (curr_pred) { + document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,curr_pred,1,0) }; + } + if (curr_rating != ratingvalue && typeof(msg_chg_rating) != "undefined") { + document[imgName].title = msg_chg_rating+curr_rating+' '+ratings[curr_rating*2]+msg_to+j+' '+ratings[i]; + } + } else { + document[imgName].onmouseout = function() { displayRating(imgId,imgPrefix,avg[imgId],0,0) }; + document[imgName].title = msg_add_rating+j+' '+ratings[i]; + } + } + var imgType = 'N'; + if (pred) { + if (init) + document[imgName].title = title+linebreak+msg_add_rating+ratings[i]; + imgType = 'R'; + } else { + if (ratingvalue <= curr_rating) { + if (i <= (ratingvalue * 2)) + imgType = 'Rp'; + else + if (i <= (curr_rating * 2)) + imgType = 'R'; + } + else { + if (i <= (curr_rating * 2)) + imgType = 'Rp'; + else + if (i <= (ratingvalue * 2)) + imgType = 'Rm'; + } + } + document[imgName].src = imgSrc + imgPrefix + imgType + ((i%2) ? 'k1' : 'k0') + '.png'; + } +} + function sprintfRating(s, num, count) { var num1 = Math.round(num * 10) / 10; if (count < 2) s = s.replace(/votes/, 'vote'); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |