Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name AO3: Kudos&Comments/Chapters
- // @description Checks FF quality based on kudos and comments. Based on "AO3: Kudos/hits ratio".
- // @author X.
- // @version 1.0
- // @grant none
- // @require https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js
- // @include http://archiveofourown.org/*
- // @include https://archiveofourown.org/*
- // ==/UserScript==
- // ~~ SETTINGS ~~ //
- // color background depending on percentage: true/false
- var colorbg = true;
- // ratio_red, ratio_green - background colors
- var eval_red = '#ffdede';
- var eval_green = '#c4eac3';
- // ~~ END OF SETTINGS ~~ //
- // STUFF HAPPENS BELOW //
- (function($) {
- storyEval();
- function storyEval() {
- $('dl.stats').each(function() {
- var hits_value = $(this).find('dd.hits');
- var kudos_value = $(this).find('dd.kudos');
- var comments_value = $(this).find('dd.comments');
- var chapters_value = $(this).find('dd.chapters');
- chapters_value = chapters_value.text().substr(0, chapters_value.text().indexOf('/'));
- // parse values to int
- var comments_count = parseInt(comments_value.text());
- var kudos_count = parseInt(kudos_value.text());
- var chapters_count = parseInt(chapters_value);
- // let's define a "good" story as one that has 10 comments and 100 kudos per chapter
- var chapters_kudos = chapters_count * 100;
- var chapters_comments = chapters_count * 10;
- // checks if a story has more than 100 kudos and 10 comments per chapter
- var eval = false;
- var eval_message = '✅ Pass';
- if ((kudos_count >= chapters_kudos) && (comments_count >= chapters_comments)) {
- eval = true;
- } else {
- eval_message = '❌ Fail';
- }
- // show the results after the hits
- var eval_label = $('<dt class="kudoscomments"></dt>').text('Eval:');
- var eval_value = $('<dd class="kudoscomments"></dd>').text(eval_message);
- hits_value.after('<br>', eval_label, '\n', eval_value);
- // colors the bg depending on the result
- if (colorbg) {
- if (eval) {
- eval_value.css('background-color', eval_green);
- }
- else {
- eval_value.css('background-color', eval_red);
- }
- }
- });
- }
- })(jQuery);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement