Utopian v0.0.12: Search Top Projects!


Introduction to Utopian Moderators & Supervisors

Utopian Moderators & Supervisors is a Chrome Extension that can be installed via Chrome Webstore.

If you are using Firefox, you can still install this Extension by Chrome Extension Foxified.

Utopian Moderators & Supervisors, as its name suggests, help the moderators & supervisors during their moderation or supervision by providing a few useful tools, charts and statistics.

Technology Stack

Javascript that runs in Chrome Extension.

Previous Contributions

This Commits

Commits

It adds the following features:

  • Add User Image Avatar in Moderator Tab.
  • Add Projects Tab which allows you to search top projects.

Screenshots of Utopian Chrome Extension

utopian-moderator-search-top-projects Utopian v0.0.12: Search Top Projects! chrome extension javascript SteemIt

utopian-moderator-search-top-projects

utopian-moderator-search-top-projects-list Utopian v0.0.12: Search Top Projects! chrome extension javascript SteemIt

utopian-moderator-search-top-projects-list

Javascript calls Utopian Top Projects API

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
// top projects and contributions
$('button#btn_top').click(function() {
    $('div#top_result').html("<img id='loading' src='images/loading.gif' />");
    let limit = parseInt($('input#top_limit').val());
    let start = $('input#top_start').val().trim();
    let end = $('input#top_end').val().trim();
    let sort1 = $('select#top_sort1').val().trim();
    let sort2 = "projects";
    let only_new = $('input#top_new').is(":checked") ? "true" : "false";
    let api = "https://api.utopian.io/api/posts/top?limit=" + limit + "&start_date=" + start + "&end_date=" + end + "&sort_by=" + sort1 + "&retrieve_by=" + sort2 + "&only_new=" + only_new;
    logit("calling " + api);
    saveSettings(false);
    $.ajax({
        type: "GET",
        url: api,
        success: function(result) {
            let s = "<table style='width:100%'>";
            s += "<thead>";
            s += "<tr><th>Project Name</th><th>Description</th><th>Count<th>Rewards</th><th>License</th></tr>";
            s += "</thead>";                                
            let len = result.length;
            for (let i = 0; i < len; ++ i) {
                s += "<tr>";
                let github = result[i].github;
                let lic = github.license;
                let home_url = github.home_url;
                let project_name = github['name'];
                let description = github['description'];
                let count = result[i]['count'];
                let rewards = result[i]['rewards'];
                let license = lic ? lic['name'] : '';
                s += "<td><a target=_blank href='" + home_url + "'>" + project_name + "</a></td>";
                s += "<td>" + description + "</td>";
                s += "<td>" + count + "</td>";
                s += "<td>" + rewards.toFixed(3) + "</td>";
                s += "<td>" + license + "</td>";                    
                s += "</tr>";
            }                
            s += "</table>";
            $('div#top_result').html(s);
        },
        error: function(request, status, error) {
            logit('Response: ' + request.responseText);
            logit('Error: ' + error );
            logit('Status: ' + status);
        },
        complete: function(data) {
            logit("API Finished: " + api);                
        }             
    });            
});
// top projects and contributions
$('button#btn_top').click(function() {
    $('div#top_result').html("<img id='loading' src='images/loading.gif' />");
    let limit = parseInt($('input#top_limit').val());
    let start = $('input#top_start').val().trim();
    let end = $('input#top_end').val().trim();
    let sort1 = $('select#top_sort1').val().trim();
    let sort2 = "projects";
    let only_new = $('input#top_new').is(":checked") ? "true" : "false";
    let api = "https://api.utopian.io/api/posts/top?limit=" + limit + "&start_date=" + start + "&end_date=" + end + "&sort_by=" + sort1 + "&retrieve_by=" + sort2 + "&only_new=" + only_new;
    logit("calling " + api);
    saveSettings(false);
    $.ajax({
        type: "GET",
        url: api,
        success: function(result) {
            let s = "<table style='width:100%'>";
            s += "<thead>";
            s += "<tr><th>Project Name</th><th>Description</th><th>Count<th>Rewards</th><th>License</th></tr>";
            s += "</thead>";                                
            let len = result.length;
            for (let i = 0; i < len; ++ i) {
                s += "<tr>";
                let github = result[i].github;
                let lic = github.license;
                let home_url = github.home_url;
                let project_name = github['name'];
                let description = github['description'];
                let count = result[i]['count'];
                let rewards = result[i]['rewards'];
                let license = lic ? lic['name'] : '';
                s += "<td><a target=_blank href='" + home_url + "'>" + project_name + "</a></td>";
                s += "<td>" + description + "</td>";
                s += "<td>" + count + "</td>";
                s += "<td>" + rewards.toFixed(3) + "</td>";
                s += "<td>" + license + "</td>";                    
                s += "</tr>";
            }                
            s += "</table>";
            $('div#top_result').html(s);
        },
        error: function(request, status, error) {
            logit('Response: ' + request.responseText);
            logit('Error: ' + error );
            logit('Status: ' + status);
        },
        complete: function(data) {
            logit("API Finished: " + api);                
        }             
    });            
});

Roadmap

Any good suggestions, please shout at @justyy !

Chrome Webstore

Install the Utopian Chrome Extension Now!

Contribution Welcome

Github: https://github.com/DoctorLai/utopian-moderator

  • Fork it!
  • Create your feature branch: git checkout -b my-new-feature
  • Commit your changes: git commit -am ‘Add some feature’
  • Push to the branch: git push origin my-new-feature
  • Submit a pull request.

–EOF (The Ultimate Computing & Technology Blog) —

GD Star Rating
loading...
950 words
Last Post: Teach Your Kids Programming - The First Logo Interpreter (Turtle Graphics) in Chrome Extension!
Next Post: LogoTurtle v0.0.2: ShowTurtle, HideTurtle, Color, Width and Help.

The Permanent URL is: Utopian v0.0.12: Search Top Projects!

Leave a Reply