Turning the inside out

Redactions screenshot

Tim Sherratt | | University of Canberra | timsherratt.org

play along

Use arrow keys or swipe to navigate.

NAA: ST84/1, 1905/31-40
http://invisibleaustralians.org/faces/
https://twitter.com/wragge/status/637095112992944128
http://iabrowse.herokuapp.com/
// ==UserScript==
// @name           RecordSearch -- People Inside
// @namespace      http://wraggelabs.com/recordsearch_show_people
// @description    Records are about people. This userscript enriches the National Archives of Australia's database by inserting images of some of those people.
// @version        0.2
// @date           2015-06-9
// @creator        Tim Sherratt
// @include        http://recordsearch.naa.gov.au/SearchNRetrieve/Interface/ListingReports/ItemsListing.aspx*
// @include        http://recordsearch.naa.gov.au/SearchNRetrieve/Interface/DetailsReports/ItemDetail.aspx*
// @grant          GM_xmlhttpRequest
// ==/UserScript==
var processed_series = ['ST84/1']

function getLink() {
    if (type == 'single') {
        var total = 1;
    } else {
        var total = links.length;
    }
    if (link < total ) {
        //getPages(rs_links.snapshotItem(link));
        getPages(links[link]);
    }
}
function getPages(rs_link) {
    var barcode = rs_link.match(/\/ViewImage.aspx\?B=(\d+)/)[1];
    if (type == 'single') {
        var url = 'http://invisibleaustralians.org/api/faces/' + barcode + '/?format=json';
    } else {
        var url = 'http://invisibleaustralians.org/api/faces/random/' + barcode + '/?format=json';
    }
    GM_xmlhttpRequest({
        method: 'GET',
        url: url,
        onload: function(response) {
            var data = JSON.parse(response.responseText);
            if (type == 'single') {
                if (data.length > 0) {
                    cell = document.evaluate('//*[@id="ctl00_ContentPlaceHolderSNR_ucItemDetails_ctl01"]/tbody/tr/td/div/table/tbody/tr[1]/td[2]', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
                    var faces = '';
                    var num_faces = data.length;
                    for (i=0; i<num_faces; i++) {
                        faces += '<img style="margin-right:10px;margin-top:10px;" title="Page: ' + data[i].page + '" src="http://invisibleaustralians.org/image/' + data[i].id + '/?width=80">';
                    }
                    cell.innerHTML = cell.innerHTML + '<p style="margin-top: 10px;">' + faces + '</p>';
                }
            } else {
                if (data.id) {
                    xpath = "//a[contains(@href, '" + barcode + "')]/img";
                    img = document.evaluate(xpath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
                    img.setAttribute('src', 'http://invisibleaustralians.org/image/' + data.id + '/?width=80');
                    img.setAttribute('title', 'Page: ' + data.page);
                }
            }
            link++;
            getLink();
        }
    });
}
var links = [];
if (document.location.href.indexOf('ItemDetail.aspx') > 0) {
    var type = 'single';
    series = document.evaluate("//a[contains(@href, '/SeriesDetail.aspx')]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.textContent;
    digitised = document.evaluate("//a[contains(@href, '/ViewImage.aspx')]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
    if (digitised && processed_series.indexOf(series) != -1) {
        links.push(digitised.href);
    }
} else {
    var type = 'multiple'
    var rows = document.evaluate('//*[@id="ctl00_ContentPlaceHolderSNR_tblItemDetails"]/tbody/tr', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
    for ( var i=0 ; i < rows.snapshotLength; i++ ) {
        var series = document.evaluate('td[2]', rows.snapshotItem(i), null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.textContent;
        var digitised = document.evaluate('td[6]/a', rows.snapshotItem(i), null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
        if (digitised && processed_series.indexOf(series) != -1) {
            links.push(digitised.href);
        }
    }
}
var link = 0;
getLink(link);
https://gist.github.com/wragge/2941e473ee70152f4de7
https://cvdazzle.com/
https://dx.doi.org/10.6084/m9.figshare.3443867.v1
https://closedaccess.herokuapp.com/
https://closedaccess.herokuapp.com/reasons/Pre Access Recorder/
https://closedaccess.herokuapp.com/reasons/Withheld pending adv/
https://timsherratt.org/research-notebook/notes/interpreting-annual-report-totals/
https://historichansard.net/
http://timsherratt.org/research-notebook/notes/investigating-the-hansard-black-hole/
https://github.com/wragge/asio-files
http://cutecommies.photos/
http://www.history-lab.org/
http://owebrowse.herokuapp.com/
https://twitter.com/wragge/status/774920699546783744
https://twitter.com/wragge/status/781456226576052225
https://owebrowse.herokuapp.com/redactions/explore/
https://twitter.com/wragge/status/784895925370052609
http://owebrowse.herokuapp.com/redactions/
https://owebrowse.herokuapp.com/redactions/tags/art/
https://storify.com/wragge/redaction-art
// ==UserScript==
// @name           RecordSearch -- Redactions
// @namespace      http://timsherratt.org/recordsearch-redactions
// @description    Access is not always accessible. This userscript enriches the National Archives of Australia's database by inserting information about redactions in ASIO files.
// @version        0.1
// @date           2016-10-15
// @creator        Tim Sherratt
// @include        http://recordsearch.naa.gov.au/SearchNRetrieve/Interface/ListingReports/ItemsListing.aspx*
// @include        http://recordsearch.naa.gov.au/SearchNRetrieve/Interface/DetailsReports/ItemDetail.aspx*
// @grant          GM_xmlhttpRequest
// @connect        owebrowse.herokuapp.com
// ==/UserScript==
var processed_series = ['A6119'];

function getLink() {
    if (links.length > 0) {
        if (type == 'single') {
            var total = 1;
        } else {
            var total = links.length;
        }
        if (link < total ) {
            //getPages(rs_links.snapshotItem(link));
            getPages(links[link]);
        }
    }
}
function getPages(rs_link) {
    var barcode = rs_link.match(/\/ViewImage.aspx\?B=(\d+)/)[1];
    var url = 'https://owebrowse.herokuapp.com/items/' + barcode + '/redactions/?format=json';
    GM_xmlhttpRequest({
        method: 'GET',
        url: url,
        onload: function(response) {
            var data = JSON.parse(response.responseText);
            if (type == 'single') {
                if (data.total) {
                    var table = document.evaluate('//*[@id="ctl00_ContentPlaceHolderSNR_ucItemDetails_ctl01"]/tbody/tr/td/div/table/tbody', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
                    var cell = document.evaluate('//*[text()="Reason for restriction"]', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
                    var row = cell.parentNode.parentNode;
                    var newRow = document.createElement('tr');
                    var titleCell = document.createElement('td');
                    var titleDiv = document.createElement('div');
                    var att = document.createAttribute("class");
                    att.value = 'field';
                    titleDiv.setAttributeNode(att);
                    titleCell.setAttributeNode(att.cloneNode());
                    var contentCell = document.createElement('td');
                    var rowTitle = document.createTextNode("Redactions");
                    titleDiv.appendChild(rowTitle);
                    titleCell.appendChild(titleDiv);
                    var block = document.createElement('div');
                    var att = document.createAttribute("style");
                    percent = 100 - (Math.log10((100 * data.percentage)) * 25);
                    color = 'rgb(' + percent + '%, ' + percent + '%, ' + percent + '%)';
                    att.value = 'background: ' + color + '; width: 100px; height: 20px; border: 1px solid black';
                    block.setAttributeNode(att);
                    contentCell.appendChild(block);
                    contentCell.innerHTML = contentCell.innerHTML + '<br>Number of redactions: ' + data.total + '<br>Area redacted: ' + data.percentage.toFixed(2) + '%';
                    newRow.appendChild(titleCell);
                    newRow.appendChild(contentCell);
                    table.insertBefore(newRow, row);
                }
            } else {
                if (data.total) {
                    xpath = "//a[contains(@href, '" + barcode + "')]/img";
                    img = document.evaluate(xpath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
                    var rs_link = img.parentNode;
                    var cell = img.parentNode.parentNode;
                    var block = document.createElement('div');
                    var att = document.createAttribute("style");
                    percent = 100 - (Math.log10((100 * data.percentage)) * 25);
                    color = 'rgb(' + percent + '%, ' + percent + '%, ' + percent + '%)';
                    att.value = 'background: ' + color + '; width: 60px; height: 20px; border: 1px solid black';
                    block.setAttributeNode(att);
                    rs_link.replaceChild(block, img);
                    cell.innerHTML = cell.innerHTML + '<br>Number of redactions: ' + data.total + '<br>Area redacted: ' + data.percentage.toFixed(2) + '%';
                }
            }
            link++;
            getLink();
        }
    });
}
var links = [];
if (document.location.href.indexOf('ItemDetail.aspx') > 0) {
    var type = 'single';
    series = document.evaluate("//a[contains(@href, '/SeriesDetail.aspx')]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.textContent;
    digitised = document.evaluate("//a[contains(@href, '/ViewImage.aspx')]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
    if (digitised && processed_series.indexOf(series) != -1) {
        links.push(digitised.href);
    }
} else {
    var type = 'multiple';
    var rows = document.evaluate('//*[@id="ctl00_ContentPlaceHolderSNR_tblItemDetails"]/tbody/tr', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
    for ( var i=0 ; i < rows.snapshotLength; i++ ) {
        var series = document.evaluate('td[2]', rows.snapshotItem(i), null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.textContent;
        var digitised = document.evaluate('td[6]/a', rows.snapshotItem(i), null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
        if (digitised && processed_series.indexOf(series) != -1) {
            links.push(digitised.href);
        }
    }
}
var link = 0;
getLink(link);
https://gist.github.com/wragge/b6d120a712ae7d598ab70e228f070bac