Documentation
This function renders a selection widget to chose an icon
Parameters
- VALUE: which icon is preselected
- SOURCE: topic that has got a set of icons attached to it, defaults to IconSet
Implementation
%STARTINCLUDE%<!-- render photo selector -->
<div class="clsIconSelector">
<input type="hidden" class="clsIconInput" name="Icon" value="%IF{"defined VALUE" then="%VALUE%"}%" />
%ATTACHMENTS{
topic="%IF{"defined SOURCE" then="%SOURCE%" else="Applications.ClassificationApp.IconSet"}%"
name=".*\.(jpe?g|JPE?G|gif|GIF|png|PNG)$"
sort="name"
format="<div class='clsIconContainer'><img class='clsIcon' src='$url' alt='$name' title='$name' height='16px' /></div>"
}%
%CLEAR%
</div>
<literal>
<script>
jQuery(function($) {
$(".clsIconSelector").each(function() {
var $selector = $(this),
$input = $selector.find(".clsIconInput");
function updateSelection(name) {
$selector.find(".clsIconContainer").removeClass("selected")
if (typeof(name) === 'undefined') {
name = $(".clsIconInput").val();
}
if (name) {
$selector.find("img[alt='"+name+"']").parent().addClass("selected");
}
$input.val(name);
}
$selector.find(".clsIcon").click(function(e) {
var $this = $(this),
$container = $this.parent(),
name = $this.attr("alt");
if ($container.is(".selected")) {
updateSelection("");
} else {
updateSelection(name);
}
e.preventDefault();
return false;
});
updateSelection()
});
});
</script>
</literal>
%STOPINCLUDE%
Test
Calls to 'RenderIconSelector'
Copyright
© 2006-2019 Michael Daum
http://michaeldaumconsulting.com
This file is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version. For
more details read the
LICENSE.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.