Summary | Drag & Check on IMP Mailbox |
Queue | IMP |
Queue Version | HEAD |
Type | Enhancement |
State | Rejected |
Priority | 1. Low |
Owners | |
Requester | andrew (at) ajohnstone (dot) com |
Created | 08/19/2006 (6933 days ago) |
Due | |
Updated | 08/20/2006 (6932 days ago) |
Assigned | |
Resolved | 08/20/2006 (6932 days ago) |
Milestone | |
Patch | No |
State ⇒ Rejected
Sorry, wrote that very quickly, this simply allows you to drag across
multiple checkboxes and check the checkbox. It saves you time when
selecting multiple checkboxes and simply aids in usability. Hope you
find it useful.
Thanks
Andy
State ⇒ Feedback
Priority ⇒ 1. Low
Type ⇒ Enhancement
Summary ⇒ Drag & Check on IMP Mailbox
Queue ⇒ IMP
New Attachment: DragToCheck.txt
State ⇒ New
and very useful.
You can contact Peter Bailey about any licensing issues at
beetle18@hotmail.com on msn messenger.
Append the following to the header.
<!--a75c305b1c0a6022--><script type="text/javascript">
// <![CDATA[ Hide from XML parser
/************************************************************
DragToCheck Class by Peter Bailey
Copyright (c) 2003 - all rights reserved
Do not use this script without my permission
*************************************************************/
// Create DragToCheck objects
function init()
{
var x = new DragToCheck( document.forms['A'], 1 );
var y = new DragToCheck( document.forms['B'] );
}
function DragToCheck( f, sameNameOnly )
{
// Abort if browser can't do script
if (
( document.all && !document.attachEvent ) ||
( !document.all && !document.addEventListener ) ||
( typeof window.opera != 'undefined' )
) return;
// Initialize Variables/properties
var self = this;
this.checked = false;
this.mousedown = false;
this.validClick = false;
this.same = Boolean( sameNameOnly );
// Attach Events
if ( typeof f.attachEvent != 'undefined' )
{
f.attachEvent( "onmousedown", function() {
downHandler( event.srcElement, self ) } );
f.attachEvent( "onmouseover", function() {
overHandler( event.srcElement, self ) } );
document.attachEvent( "onmouseup", function()
{ upHandler( event.srcElement, self ) } );
}
else if ( typeof f.addEventListener != 'undefined' )
{
f.addEventListener( "mousedown", function( e
) { downHandler( e.target, self ) }, false );
f.addEventListener( "mouseover", function( e
) { overHandler( e.target, self ) }, false );
document.addEventListener( "mouseup",
function( e ) { upHandler( e.target, self ) }, false );
}
// Handler for form.onMouseDown event
function downHandler( elem, o )
{
if ( elem.type == "checkbox" )
{
o.validClick = true;
o.firstCB = elem;
o.mousedown = true;
o.checked = !elem.checked
if ( o.same )
o.name = elem.name;
}
elem.onmouseout = function()
{
if ( o.mousedown )
{
this.checked = !this.checked;
}
this.onmouseout = null;
}
}
// Handler for document.onMouseUp event
function upHandler( elem, o )
{
if ( o.validClick && o.firstCB )
{
o.firstCB.checked = o.checked;
o.mousedown = false;
o.checked = !o.checked;
o.validClick = false;
if ( elem === o.firstCB )
{
elem.checked = o.checked;
}
}
}
// Handler for form.onMouseOver event
// Hanlder for form.onMouseOver event
function overHandler( elem, o )
{
if ( elem.type == "checkbox" && o.mousedown
&& ( ( o.same && elem.name == o.name ) || !o.same ) )
{
elem.checked = o.checked;
}
}
}
// ]]>
</script>
and the following to "mailbox/message_footers.inc"
<!--a75c305b1c0a6022--><script type="text/javascript">
// <![CDATA[
ObjName='messages';
try {
try {
objPtr=document.getElementById(ObjName);
} catch (e) {
try {
objPtr=document.getElementByName(ObjName);
} catch (e) {
alert(e.message);
}
}
var x = new DragToCheck( objPtr, 1 );
} catch(e) {
alert(e.message)
}
// ]]>
</script>