Beispiel #1
0
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;
}
Beispiel #2
0
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;
}