function calculateTrendForProject($project_id) { global $db_con; $project = getProjectById($project_id); $likes = getLikesCount($project_id); $ratings = getTotalRatingsForProject($project_id); /*Like + Rating*/ $j = $likes + $ratings - 2; /*comments*/ $comments = getCommentsCount($project_id); $query = 'SELECT DISTINCT(created_by) FROM `comments` WHERE `project_id` = ' . $project_id; $unique_commenter = count($db_con->sql2array($query)); $k = $unique_commenter / $comments; /*Route*/ $query = 'SELECT `routed_by` FROM `routed_projects` WHERE `project_id` = ' . $project_id; $users1 = count($db_con->sql2array($query)); $query = 'SELECT `project_id` FROM `suggestions` WHERE `project_id` = ' . $project_id; $users2 = count($db_con->sql2array($query)); $users = $users1 + $users2; $query = 'SELECT DISTINCT(`sent_to`) FROM `suggestions` WHERE `project_id` = ' . $project_id; $routers1 = count($db_con->sql2array($query)); $routers = $users1 + $routers1; $l = $users / $routers; /*Time period*/ /*Functional period */ $contant = strtotime('2015-03-01'); $m = strtotime($project['created_on']) - $contant; /*Event period*/ $n = time() - strtotime($project['created_on']); /*Raw score*/ $r = $j * $k * $l; if (abs($r) >= 1) { $r = abs($r); } else { $r = 1; } /*Trending score*/ $update_cycle = 11 * 60 * 60; $events = $likes + $ratings; $t = $m / $update_cycle * ($events / $n) * log($r); return $t; }
function calculateTrendForProject($project_id) { global $db_con; $project = getProjectById($project_id); $likes = getLikesCount($project_id); $ratings = getTotalRatingsForProject($project_id); echo "ratins="; //print_r($ratings); /*Like + Rating*/ $j = $likes + $ratings - 2; //why is -2//to cancel the user self event /*comments*/ $comments = getCommentsCount($project_id); //could be zero $query = 'SELECT DISTINCT(created_by) FROM `comments` WHERE `project_id` = ' . $project_id; $unique_commenter = count($db_con->sql2array($query)); $k = $comments / $unique_commenter; //could lead to infinity /*Route*/ $query = 'SELECT `routed_by` FROM `routed_projects` WHERE `project_id` = ' . $project_id; $users1 = count($db_con->sql2array($query)); $query = 'SELECT `project_id` FROM `suggestions` WHERE `project_id` = ' . $project_id; $users2 = count($db_con->sql2array($query)); print_r($users2); $users = $users1 + $users2; print_r($users); echo "22"; $query = 'SELECT DISTINCT(`sent_to`) FROM `suggestions` WHERE `project_id` = ' . $project_id; $routers1 = count($db_con->sql2array($query)); echo "routers1"; print_r($routers1); $routers = $users1 + $routers1; echo "routers"; print_r($routers); $l = $users / $routers; echo "l="; print_r($l); /*Time period*/ /*Functional period */ $contant = strtotime('2015-03-01'); $m = strtotime($project['created_on']) - $contant; echo "constan="; print_r($contant); echo "m="; print_r($m); /*Event period*/ $n = time() - strtotime($project['created_on']); echo "n="; print_r($n); /*Raw score*/ $r = $j * $k * $l; echo "r="; print_r($r); if (abs($r) >= 1) { $r = abs($r); } else { $r = 1; } echo "final r="; print_r($r); /*Trending score*/ $update_cycle = 11 * 60 * 60; $events = $likes + $ratings; echo "events="; print_r($events); $t = $m / $update_cycle * ($events / $n) * log($r); echo "t="; print_r($t); return $t; }