|
1 | | -// gitvsgit jquery widget v 0.1.1 (http://git.io/XIauew) |
| 1 | +// gitvsgit jquery widget v 0.1.2 (http://git.io/XIauew) |
2 | 2 | // by @fatbattk |
3 | 3 |
|
4 | | -(function($){ |
| 4 | +;(function($){ |
5 | 5 | var $gvgs = $('div.gvg'); |
6 | 6 | if($gvgs.length) |
7 | 7 | { |
|
13 | 13 | +'div.gvg{background-color:#EEE;border-radius:3px;padding:3px;width:500px;}' |
14 | 14 | +'table.'+ gvg_table_class +'{border:1px solid #CCC;font:13px Helvetica,arial,sans-serif;width:100%;}' |
15 | 15 | +'.'+ gvg_table_class +' td{background-color:#FFF;font-size:12px;padding:6px;}' |
| 16 | + +'.'+ gvg_table_class +' .hilite td{background-color:#E6F1F6;}' |
16 | 17 | +'.'+ gvg_table_class +' thead th,.'+ gvg_table_class +' tfoot th{background-color:#FAFAFA;color:#555;}' |
17 | | - +'.'+ gvg_table_class +' thead th{background-image:-moz-linear-gradient(#FAFAFA,#EAEAEA);background-repeat:repeat-x;border-bottom:1px solid #D8D8D8;font-size:13px;padding:4px;}' |
| 18 | + +'.'+ gvg_table_class +' thead th{background-image:-moz-linear-gradient(top,#FAFAFA,#EAEAEA);background-image:-webkit-linear-gradient(top,#FAFAFA,#EAEAEA);background-image:-ms-linear-gradient(top,#FAFAFA,#EAEAEA);background-image:linear-gradient(top,#FAFAFA,#EAEAEA);background-repeat:repeat-x;border-bottom:1px solid #D8D8D8;font-size:13px;padding:4px;}' |
18 | 19 | +'.'+ gvg_table_class +' tfoot th{font-size:10px;padding:2px 4px;text-align:right;}' |
19 | 20 | +'</style>'); |
20 | 21 |
|
21 | 22 | $gvgs.each(function(idx){ |
22 | 23 | var $gvg = $(this), |
23 | 24 | $repos = $gvg.data('repos'); |
| 25 | + |
24 | 26 | if($repos.length>7) |
25 | 27 | { |
26 | 28 | var repo = $repos.split(','), |
27 | | - repo_count = repo.length; |
28 | | - if(repo_count>1) |
| 29 | + repo_count = repo.length, |
| 30 | + repo_highlights = [], |
| 31 | + gvgaj =[]; |
| 32 | + |
| 33 | + if($gvg.data('highlight')) |
29 | 34 | { |
30 | | - var gvgaj =[]; |
| 35 | + repo_highlights = $gvg.data('highlight').split(','); |
| 36 | + } |
31 | 37 |
|
32 | | - for(i=0; i<repo_count; i++) |
| 38 | + for(i=0; i<repo_count; i++) |
| 39 | + { |
| 40 | + if(repo[i].length>3) |
33 | 41 | { |
34 | | - if(repo[i].length>3) |
35 | | - { |
36 | | - gvgaj[i] = $.getJSON('https://api.github.com/repos/'+ repo[i] +'?callback=?'); |
37 | | - } |
| 42 | + gvgaj[i] = $.getJSON('https://api.github.com/repos/'+ repo[i] +'?callback=?'); |
38 | 43 | } |
| 44 | + } |
39 | 45 |
|
40 | | - $.when.apply(this,gvgaj).done(function(){ |
41 | | - var gvgtbl = '<table class="'+ gvg_table_class +'" id="'+ gvg_table_class +'-'+ idx +'" border="0" cellspacing="1" cellpadding="2">' |
42 | | - +'<thead><tr><th>Repos</th><th>Created</th><th>Updated</th><th>Stars</th><th>Forks</th><th>Open Issues</th></tr></thead>' |
43 | | - +'<tfoot><tr><th colspan="6">'+ footer +'</th></tr></tfoot><tbody>'; |
| 46 | + $.when.apply(this,gvgaj).done(function(){ |
| 47 | + var gvgtbl = '<table class="'+ gvg_table_class +'" id="'+ gvg_table_class +'-'+ idx +'" border="0" cellspacing="1" cellpadding="2"><thead><tr><th>Repos</th><th>Created</th><th>Updated</th><th>Stars</th><th>Forks</th><th>Open Issues</th></tr></thead>'; |
| 48 | + if(footer.length) |
| 49 | + { |
| 50 | + gvgtbl += '<tfoot><tr><th colspan="6">'+ footer +'</th></tr></tfoot>'; |
| 51 | + } |
| 52 | + gvgtbl += '<tbody>'; |
44 | 53 |
|
45 | | - var gvga,gvgd; |
46 | | - for(i=0; i<arguments.length; i++) |
| 54 | + var gvga,gvgd; |
| 55 | + for(i=0; i<repo_count; i++) |
| 56 | + { |
| 57 | + if(repo_count>1) |
47 | 58 | { |
48 | 59 | gvga = arguments[i][0]; |
49 | | - if(gvga && (gvga.meta.status===200 || gvga.meta.status===304)) |
| 60 | + } |
| 61 | + else |
| 62 | + { |
| 63 | + gvga = arguments[0]; |
| 64 | + } |
| 65 | + if(gvga) |
| 66 | + { |
| 67 | + gvgd = gvga.data; |
| 68 | + if(gvga.meta.status===200 || gvga.meta.status===304) |
50 | 69 | { |
51 | | - gvgd = gvga.data; |
52 | | - |
53 | | - gvgtbl += '<tr><td title="'+ gvgd.description +'"><a href="'+ gvgd.html_url +'" target="_blank">'+ gvgd.full_name +'</a></td><td>'+ new Date(gvgd.created_at).toDateString().replace(/[a-z]+ (.*?)/i,'') +'</td><td>'+ new Date(gvgd.updated_at).toDateString().replace(/[a-z]+ (.*?)/i,'') +'</td><td align="right">'+ gvgd.watchers_count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,',') +'</td><td align="right">'+ gvgd.forks_count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,',') +'</td><td align="right">'+ gvgd.open_issues_count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,',') +'</td></tr>'; |
| 70 | + gvgtbl += '<tr'; |
| 71 | + if(repo_highlights.length>0 && $.inArray(gvgd.full_name,repo_highlights)>-1) |
| 72 | + { |
| 73 | + gvgtbl += ' class="hilite"'; |
| 74 | + } |
| 75 | + gvgtbl += '><td title="'+ gvgd.description +'"><a href="'+ gvgd.html_url +'" target="_blank">'+ gvgd.full_name +'</a></td><td>'+ new Date(gvgd.created_at).toDateString().replace(/[a-z]+ (.*?)/i,'') +'</td><td>'+ new Date(gvgd.updated_at).toDateString().replace(/[a-z]+ (.*?)/i,'') +'</td><td align="right">'+ gvgd.watchers_count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,',') +'</td><td align="right">'+ gvgd.forks_count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,',') +'</td><td align="right">'+ gvgd.open_issues_count.toString().replace(/\B(?=(\d{3})+(?!\d))/g,',') +'</td></tr>'; |
54 | 76 | } |
55 | | - else if(gvga && gvga.meta.status===403) |
| 77 | + else if(gvga.meta.status===403) |
56 | 78 | { |
57 | | - gvgtbl += '<tr><td colspan="6" align="center">'+ gvga.data.message +'</td></tr>'; |
| 79 | + gvgtbl += '<tr><td colspan="6" align="center">'+ gvgd.message +'</td></tr>'; |
58 | 80 | break; |
59 | 81 | } |
60 | 82 | } |
| 83 | + } |
61 | 84 |
|
62 | | - $gvg.html(gvgtbl +'</tbody></table>'); |
63 | | - }); |
64 | | - } |
| 85 | + $gvg.html(gvgtbl +'</tbody></table>'); |
| 86 | + }); |
65 | 87 | } |
66 | 88 | }); |
67 | 89 | } |
|
0 commit comments