MyList Status Bar

UserScript for adding status bar to AniDB MyList page.

当前为 2015-07-16 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name MyList Status Bar
  3. // @version 1.0
  4. // @namespace Wiidat
  5. // @description UserScript for adding status bar to AniDB MyList page.
  6. // @include http://anidb.net/perl-bin/animedb.pl?*show=mylist*
  7. // @exclude http://anidb.net/perl-bin/animedb.pl?*show=mylist*do=edit.state*
  8. // @exclude http://anidb.net/perl-bin/animedb.pl?*show=mylist*do=cmp*
  9. // @exclude http://anidb.net/perl-bin/animedb.pl?*show=mylist*do=mch*
  10. // @grant none
  11. // @require http://code.jquery.com/jquery-1.9.1.min.js
  12. // @icon http://static.anidb.net/favicon.ico
  13. // @homepage https://github.com/wiidat/MyList-Status-Bar
  14. // ==/UserScript==
  15.  
  16. /* main url */
  17. var list_url ='http://anidb.net/perl-bin/animedb.pl?show=mylist'; //&uid=345411&char=0&page=0
  18. /* url 2 vars */
  19. function getUrlVars(){
  20. var vars={};
  21. var parts=window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,function(m,key,value){
  22. vars[key]=value;});
  23. return vars;}
  24. /* get url vars */
  25. var user_id=parseInt(getUrlVars()["uid"]);
  26. var char_id=getUrlVars()["char"];
  27. var page_id=parseInt(getUrlVars()["page"]);
  28. /* get liststates */
  29. var liststate_watching=parseInt(getUrlVars()["liststate.watching"]); //Currently Watching
  30. var liststate_completed=parseInt(getUrlVars()["liststate.completed"]); //Completed
  31. var liststate_stalled=parseInt(getUrlVars()["liststate.stalled"]); //On Hold
  32. var liststate_dropped=parseInt(getUrlVars()["liststate.dropped"]); //Dropped
  33. var liststate_collecting=parseInt(getUrlVars()["liststate.collecting"]); //Plan to Watch
  34. var liststate_unknown=parseInt(getUrlVars()["liststate.unknown"]); //Recently Added
  35. /* check active vars */
  36. if(isNaN(user_id)){var user_url=''}else{var user_url='&uid='+user_id}
  37. if(typeof char_id==='undefined'){var char_url=''}else{var char_url='&char='+char_id}
  38. if(isNaN(page_id)){page_id=0}
  39. var page_back_id=page_id-1;
  40. var page_next_id=page_id+1;
  41. /* check active vars for liststates */
  42. if(isNaN(liststate_watching)){liststate_watching=0}
  43. if(isNaN(liststate_completed)){liststate_completed=0}
  44. if(isNaN(liststate_stalled)){liststate_stalled=0}
  45. if(isNaN(liststate_dropped)){liststate_dropped=0}
  46. if(isNaN(liststate_collecting)){liststate_collecting=0}
  47. if(isNaN(liststate_unknown)){liststate_unknown=0}
  48. /* urls for liststates */
  49. //note: if<->else better?
  50. if(liststate_watching==0){var liststate_watching_url=''}else{var liststate_watching_url='&liststate.watching=1'}
  51. if(liststate_completed==0){var liststate_completed_url=''}else{var liststate_completed_url='&liststate.completed=1'}
  52. if(liststate_stalled==0){var liststate_stalled_url=''}else{var liststate_stalled_url='&liststate.stalled=1'}
  53. if(liststate_dropped==0){var liststate_dropped_url=''}else{var liststate_dropped_url='&liststate.dropped=1'}
  54. if(liststate_collecting==0){var liststate_collecting_url=''}else{var liststate_collecting_url='&liststate.collecting=1'}
  55. if(liststate_unknown==0){var liststate_unknown_url=''}else{var liststate_unknown_url='&liststate.unknown=1'}
  56. //all liststates - liststate_watching_url+liststate_completed_url+liststate_stalled_url+liststate_dropped_url+liststate_collecting_url+liststate_unknown_url+
  57.  
  58. /* check vars */
  59. //alert(user_id);
  60. //alert(char_id);
  61. //alert(page_id);
  62. //alert(page_back_id);
  63. //alert(page_next_id);
  64.  
  65. /* list states navigation */
  66. $('ul.g_list').before('<ul class="g_list jump"><li><a href="'+list_url+user_url+'">All Anime</a></li><li><a href="'+list_url+user_url+'&liststate.watching=1">Watching</a></li><li><a href="'+list_url+user_url+'&liststate.completed=1">Completed</a></li><li><a href="'+list_url+user_url+'&liststate.stalled=1">On Hold</a></li><li><a href="'+list_url+user_url+'&liststate.dropped=1">Dropped</a></li><li><a href="'+list_url+user_url+'&liststate.collecting=1">Plan to Watch</a></li><li><a href="'+list_url+user_url+'&liststate.unknown=1">Recently Added</a></li></ul>');
  67.  
  68. /* menu loader end */
  69. //alert('Menu loading complete');