web/static/admin/js/collapse.js
author ymh <ymh.work@gmail.com>
Mon, 12 Jul 2010 12:03:31 +0200
changeset 58 ec1d0e7dcb53
parent 0 ecdfc63274bf
permissions -rw-r--r--
Added tag V00.09 for changeset 3a3c15c462f8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
(function($) {
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
	$(document).ready(function() {
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
		// Add anchor tag for Show/Hide link
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
		$("fieldset.collapse").each(function(i, elem) {
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
			// Don't hide if fields in this fieldset have errors
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
			if ( $(elem).find("div.errors").length == 0 ) {
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
				$(elem).addClass("collapsed");
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
				$(elem).find("h2").first().append(' (<a id="fieldsetcollapser' +
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
					i +'" class="collapse-toggle" href="#">' + gettext("Show") +
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
					'</a>)');
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
			}
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
		});
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
		// Add toggle to anchor tag
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
		$("fieldset.collapse a.collapse-toggle").toggle(
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
			function() { // Show
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
				$(this).text(gettext("Hide"));
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
				$(this).closest("fieldset").removeClass("collapsed");
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
				return false;
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
			},
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
			function() { // Hide
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
				$(this).text(gettext("Show"));
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
				$(this).closest("fieldset").addClass("collapsed");
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
				return false;
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
			}
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
		);
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
	});
ecdfc63274bf first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
})(django.jQuery);