0)? "+{$ratings['+']}" :""; $neg = (@$ratings['-']>0)? "-{$ratings['-']}" :""; if( count($ratings) == 0 ) unset($new['rating2']); else $new['rating2'] = trim("$pos $neg"); if(IsEnabled($EnableBasepageUpdate, 0)) UpdateBasepageRating($pagename, @$new['rating2']); } ## pmwiki.org's cookbook specific function UpdateBasepageRating($pagename, $rating) { if ( substr($pagename, -6) !='-Users' ) return; $basename = substr($pagename, 0, -6); $base = RetrieveAuthPage($basename, "edit", false); if(@$base['text']>'' && @$base['users'] != $rating) { if( $rating>'') $base['users'] = $rating; else unset($base['users']); WritePage($basename, $base); } } function Rating2Stat($x, $what) { if(!$x) return; list($pos, $neg) = explode(' ', $x); $pos = intval($pos); $neg = intval($neg); $num = abs($pos)+abs($neg); switch ($what) { case "count": return $num; case "percent": return round($pos/$num*100); case "diff": return $pos+$neg; case "diffpad": return sprintf("%05d", $pos+$neg); case "pos": return $pos; case "neg": return abs($neg); } return $x ; # shouldn't happen }