if(Len(arguments.id))
{
return variables.ceData.getCEData(variables.getPageRatingFormName(),"id",arguments.id);
}
else if(Len(arguments.ratingPageID) and Len(arguments.userID))
{
return variables.ceData.getCEData(
customElementName=variables.getPageRatingFormName(),
queryType="multi",
searchValues="#arguments.ratingPageID#,#arguments.userID#",
searchFields="ratingPageID,userID");
}
else if(Len(arguments.ratingPageID))
{
return variables.ceData.getCEData(variables.getPageRatingFormName(),"ratingPageID",arguments.ratingPageID);
}
else if(Len(arguments.userID))
{
return variables.ceData.getCEData(variables.getPageRatingFormName(),"userID",arguments.userID);
}
else
{
return variables.ceData.getCEData(variables.getPageRatingFormName());
}
var total = 0;
var ratings = getRating(ratingPageID=arguments.ratingPageID);
if(ArrayLen(ratings))
{
for(var i=1;i<=ArrayLen(ratings);i++){
total = total + ratings[i].values.rating;
}
return total/ArrayLen(ratings)/10*100;
}
else
{
return 0;
}
var results = {};
var ratingObject = StructNew();
var ratings = getRating(id=arguments.ratingID);
var elementName = getPageRatingFormName();
var useCeRecordAPI = getUseCeRecordApiByElement(ceName=elementName);
try
{
if( ArrayLen(ratings) )
ratingObject.dataPageID = ratings[1].pageID;
ratingObject.id = arguments.ratingID;
if( arguments.rating neq -1 )
{
// add the Privileges so anonymous users can add/edit the CE record
// ---------------------------------------------------------------------
if ( useCeRecordAPI )
Request.User.enableApprovedPrivileges(Request);
ratingObject.userID = request.user.id;
ratingObject.ratingPageID = arguments.ratingPageID;
ratingObject.rating = arguments.rating;
results = pageRatingCCAPI(dataValues=ratingObject);
// remove the anonymous users CE add/edit Privileges
// ---------------------------------------------------------------------
if ( useCeRecordAPI )
Request.User.disableApprovedPrivileges();
return results.contentUpdated;
}
else if ( StructKeyExists(ratingObject,"dataPageID") )
{
//Rating was -1. We need to delete the existing rating!
return variables.ceData.deleteCE(ratingObject.dataPageID);
}
}
catch (any ex)
{
application.ptPageRating.log.addLogEntry(message='Error occurred in command ptPageRating.DAO.saveRating (#DateTimeFormat(Now(),"short")#): #ex.message# - #Server.CommonSpot.UDF.util.structToText(arguments)#',CFCatch=ex,forceStackTrace=true,useDatePrefix=true);
if ( StructKeyExists(request.params,'debug') AND VAL(request.params.debug) EQ 1 )
WriteDump(var=ex,expand=false,label='Error: ptPageRating.DAO.saveRating');
return false;
}
return true;
var retStruct = {};
var CCAPIName = getPageRatingCCAPIName();
var elementName = getPageRatingFormName();
var useCeRecordAPI = getUseCeRecordApiByElement(ceName=elementName);
if ( NOT useCeRecordAPI )
{
// Save the custom element record using the CCAPI
retStruct = variables.csContent.populateContent(CCAPIName, arguments.dataValues);
}
else
{
// save the custom element record ceRecordAPI
retStruct = variables.gceRecord.saveRecord(ceName=elementName,dataValues=arguments.dataValues);
}
/* retStruct RETURNS: CONTENTUPDATED : true/false & CONTENTUPDATERESPONSE: Success:1 */
return retStruct;