Scripts

PM Checkboxen

N.B. voorlopig alleen voor FireFox gebruikers (en waarschijnlijk ook Safari, maar dat heb ik nog niet kunnen testen) Na wat tests in een topic zet ik deze maar in de scriptlib, omdat ik vermoed dat er best veel FireFox gebruikers zijn die het topic gemist hebben. Wat doet het? Op de pagina's van je inbox en je outbox krijg je er drie buttons bij: selecteer alles , deselecteer alles en keer selectie om . De werking ervan spreekt hoop ik voor zich ;-) Installatie Installeer eerst de GreaseMonkey extensie. Klik daarna op deze link. Meer lezen over GreaseMonkey Dive into GreaseMonkey Avoid common pitfalls in GreaseMonkey PHP tags? Er staan PHP tags om het codevoorbeeld. Dat is voor de kleurtjes (zo goed, Boris?) en heeft verder geen enkele betekenis.

pm-checkboxen
[code]
<?php
// ==UserScript==
// @name          Select All Checkboxes
// @namespace     http://www.jankoehoorn.nl/
// @description   selects all checkboxes on a page
// @include       http://www.phphulp.nl/profiel/mailbox/*
// ==/UserScript==

(function () {
	var mailbox;

	function check_all () {
		var c = document.getElementsByTagName ('input');
		for (i = 0; i < c.length; i++) {
			if (c[i].type == 'checkbox') {
				c[i].checked = 'checked';
			}
		}
	}
	
	function uncheck_all () {
		var c = document.getElementsByTagName ('input');
		for (i = 0; i < c.length; i++) {
			if (c[i].type == 'checkbox') {
				c[i].checked = '';
			}
		}
	}
	
	function inverse_selection () {
		var c = document.getElementsByTagName ('input');
		for (i = 0; i < c.length; i++) {
			if (c[i].type == 'checkbox') {
				if (c[i].checked == '') {
					c[i].checked = 'checked';	
				}
				else {
					c[i].checked = '';	
				}
			}
		}
	}
	
	var x = document.getElementsByTagName ('form');
	for (i = 0; i < x.length; i++) {
		if (x[i].name == 'mailbox') { // de naam van het formulier op phphulp.nl
			mailbox = x[i];
			break;
		}
	}
	var select_all = document.createElement ('input');
	select_all.type = 'button';
	select_all.value = 'selecteer alles';
	select_all.style.margin = '5px';
	mailbox.appendChild (select_all);
	select_all.addEventListener ("click", check_all, false);

	var deselect_all = document.createElement ('input');
	deselect_all.type = 'button';
	deselect_all.value = 'deselecteer alles';
	deselect_all.style.margin = '5px';
	mailbox.appendChild (deselect_all);
	deselect_all.addEventListener ("click", uncheck_all, false);
	
	var inverse = document.createElement ('input');
	inverse.type = 'button';
	inverse.value = 'keer selectie om';
	inverse.style.margin = '5px';
	mailbox.appendChild (inverse);
	inverse.addEventListener ("click", inverse_selection, false);
})();
?>
[/code]

Reacties

0
Nog geen reacties.