<commit_before>function init_main() {
    //set up our options and site list
    buildPage();

    //show the menu
    $('html').hide().fadeIn('slow');
}

//main function that populates option boxes and the site list

function buildPage() {
    var config, sites, enabled;

    chrome.storage.sync.get(null, function (data) {
        chrome.storage.sync.set({
            'seenSites': data.sites.length
        });

        config = data.config;
        sites = data.sites;
        enabled = data.status;

        //set our checkboxes to what's in storage
        $("#enabled").prop("checked", enabled);
        $("#recursive").prop("checked", config.recursive);

        $("#soundFound").prop("checked", config.soundFound);
        $("#alertFound").prop("checked", config.alertFound);
        $("#alertCSSFound").prop("checked", config.alertCSSFound);

        $("#enableQueue").prop("checked", config.enableQueue);

        $("#xhrDelay").val(config.xhrDelay);
        $("#exclusionList").val(config.exclusionList);

        //set a delay so we don't cause issues on the first draw
        setTimeout(function () {
            populateRuleTable();
            populateSiteTable();
            populateQueueTable();
        }, 500)


        //be loud if it's disabled
        if (!enabled) {
            showNotification("danger", "Get Git is currently disabled.")
        }
    });
}

//show notifications
//type is a bootstrap alert class sans the 'alert-'
//message is the message to display
//time is the amount of time it should be visible in seconds; set 0 for indefinitely
function showNotification(type, message) {
    $.growl(message, {
        type: type<commit_msg>Fixing & git push<commit_after>function init_main() {
    //set up our options and site list
    buildPage();

    //show the menu
    $('html').hide().fadeIn('slow');
}

//main function that populates option boxes and the site list

function buildPage() {
    var config, sites, enabled;

    chrome.storage.sync.get(null, function (data) {
        chrome.storage.sync.set({
            'seenSites': data.sites.length
        });

        config = data.config;
        sites = data.sites;
        enabled = data.status;

        //set our checkboxes to what's in storage
        $("#enabled").prop("checked", enabled);
        $("#recursive").prop("checked", config.recursive);

        $("#soundFound").prop("checked", config.soundFound);
        $("#alertFound").prop("checked", config.alertFound);
        $("#alertCSSFound").prop("checked", config.alertCSSFound);

        $("#enableQueue").prop("checked", config.enableQueue);

        $("#xhrDelay").val(config.xhrDelay);
        $("#exclusionList").val(config.exclusionList);

        //set a delay so we don't cause issues on the first draw
        setTimeout(function () {
            populateRuleTable();
            populateSiteTable();
            populateQueueTable();
        }, 500)


        //be loud if it's disabled
        if (!enabled) {
            showNotification("danger", "Bishop is currently disabled.")
        }
    });
}

//show notifications
//type is a bootstrap alert class sans the 'alert-'
//message is the message to display
//time is the amount of time it should be visible in seconds; set 0 for indefinitely
function showNotification(type, message) {
    $.growl(message, {
        type: type
{'fraction_non_alphanumeric': 0.1402203036618041, 'fraction_numerical': 0.0023816612086930635, 'mean_word_length': 2.5480464625131996, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3679857', 'n_tokens_mistral': 931, 'n_tokens_neox': 886, 'n_words': 264}