forked from anilshanbhag/GPO-Styler
-
Notifications
You must be signed in to change notification settings - Fork 1
/
injector.js
84 lines (77 loc) · 31.8 KB
/
injector.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
console.log("GPO Styler inited");
var compose_template = "<form name='compose' action='compose.php' method='post' enctype='multipart/form-data'> <input type='hidden' name='startMessage' value='1'> <input type='hidden' name='session' value='2'> <input type='hidden' name='passed_id' value=''> <table align='center' cellspacing='0' style='width:100%;' border='0'> <tbody><tr> <td bgcolor='#ffffff' width='100px'> To:</td> <td bgcolor='#ffffff' align='left' width='400px'> <input type='text' name='send_to' value='' size='60' onfocus='alreadyFocused=true;'><br> </td> </tr> <tr> <td bgcolor='#ffffff' > Cc:</td> <td bgcolor='#ffffff' align='left'> <input type='text' name='send_to_cc' value='' size='60' onfocus='alreadyFocused=true;'><br> </td> </tr> <tr> <td bgcolor='#ffffff' > Bcc:</td> <td bgcolor='#ffffff' align='left'> <input type='text' name='send_to_bcc' value='' size='60' onfocus='alreadyFocused=true;'><br> </td> </tr> <tr> <td bgcolor='#ffffff' > Subject:</td> <td bgcolor='#ffffff' align='left'> <input type='text' name='subject' value='' size='60' onfocus='alreadyFocused=true;'> </td> </tr> <tr> <td></td> <td> Priority<select name='mailprio'> <option value='1'>High</option> <option value='3' selected='selected'>Normal</option> <option value='5'>Low</option> </select> Receipt: <input type='checkbox' name='request_mdn' value='1' id='request_mdn'> <label for='request_mdn'>On Read</label><input type='checkbox' name='request_dr' value='1' id='request_dr'> <label for='request_dr'>On Delivery</label> </td> </tr> <tr> <td></td> <td> <br><input type='submit' name='sigappend' value='Signature'> <input type='submit' name='html_addr_search' value='Addresses'> <input type='submit' name='draft' value='Save Draft'> <input type='submit' name='send' value='Send'> <script type='text/javascript'> <!-- document.write('<input type=\'button\' value=\'Check Spelling\' name=\'check_spelling\' onclick=\'window.open('../plugins/squirrelspell/sqspell_interface.php', 'sqspell', 'status=yes,width=550,height=370,resizable=yes')\' />'); //--> </script><input type='button' value='Check Spelling' name='check_spelling' onclick='window.open('../plugins/squirrelspell/sqspell_interface.php', 'sqspell', 'status=yes,width=550,height=370,resizable=yes')'><br><br>Save Sent Message in: <select name='variable_sent_folder'><option value='none'><Do not Save></option> <option value='INBOX'>INBOX</option> <option value='INBOX.Drafts'> Drafts</option> <option value='INBOX.Drafts.2011'> 2011</option> <option value='INBOX.Drafts.2011.08'> 08</option> <option value='INBOX.Drafts.2011.10'> 10</option> <option value='INBOX.Drafts.2011.11'> 11</option> <option value='INBOX.Drafts.2011.12'> 12</option> <option value='INBOX.Drafts.2012'> 2012</option> <option value='INBOX.Drafts.2012.02'> 02</option> <option value='INBOX.Drafts.2012.03' selected=''> 03</option> <option value='INBOX.msgs-seen'> msgs-seen</option> <option value='INBOX.Spam'> Spam</option> <option value='INBOX.Trash'> Trash</option> <option value='INBOX.Sent'> Sent</option> </select> <script language='Javascript'> <!-- document.write('<input type=\'button\' name=\'QScancel\' value=\'Cancel\' onClick=\'QuickSave_cancel_button('right_main.php?use_mailbox_cache=0&sort=0&startMessage=1&mailbox=INBOX');\'>'); //--> </script><input type='button' name='QScancel' value='Cancel' onclick='QuickSave_cancel_button('right_main.php?use_mailbox_cache=0&sort=0&startMessage=1&mailbox=INBOX');'> </td> </tr> <tr> <td bgcolor='#ffffff' colspan='2'> <textarea name='body' id='body' style='width:100%;' rows='20' cols='76' wrap='virtual' onfocus='alreadyFocused=true;'></textarea><br> </td> </tr> <tr> <td colspan='2'> <input type='submit' name='send' value='Send'> <br><br> </td> </tr> <tr> <td colspan='2'> <table width='100%' cellpadding='1' cellspacing='0' align='center' border='0' bgcolor='#ababab'> <tbody><tr> <td> <table width='100%' cellpadding='3' cellspacing='0' align='center' border='0'> <tbody><tr> <td valign='middle'> Attach:</td> <td align='left' valign='middle'> <input type='hidden' name='MAX_FILE_SIZE' value='8388608'> <input name='attachfile' size='48' type='file'> <input type='submit' name='attach' value='Add'> (max. 8<small> M</small>) </td> </tr> </tbody></table> </td> </tr> </tbody></table> </td> </tr> </tbody></table> <input type='hidden' name='username' value='anilshanbhag'> <input type='hidden' name='smaction' value=''> <input type='hidden' name='mailbox' value='INBOX'> <input type='hidden' name='composesession' value='2'> <input type='hidden' name='querystring' value='mailbox=INBOX&amp;startMessage=1'> </form> <!-- start -- QuickSave plugin --> <form name='QSstopsign'> <input type='hidden' name='mailsent' value='0'> </form> <script language='Javascript'> <!-- var maxSingleCookieLength = 3320; var maxCookieLength = 700; var maxCookies = 5; function QuickSave_left_frame_exists() { // this checks to make sure the left frame has loaded... var quicksave_exists = false; if ( parent.left && parent.left.document.forms ) { for ( var i = 0 ; i < parent.left.document.forms.length ; i++ ) { if ( parent.left.document.forms[i].name == 'quicksave' ) { quicksave_exists = true; } } } return quicksave_exists; } function QuickSave_swap(from_form, to_form, write_empty) { if ( !from_form ) from_form = document.compose; if ( !to_form && QuickSave_left_frame_exists() ) to_form = parent.left.document.quicksave; // gotta make sure we haven't posted already if ( document.QSstopsign.mailsent && document.QSstopsign.mailsent.value == 0 ) { // this is the form-based storage system if ( QuickSave_left_frame_exists() && from_form && to_form ) { if ( from_form.send_to && to_form.send_to ) if ( from_form.send_to.value.length >= 1 || write_empty == 1 ) to_form.send_to.value = from_form.send_to.value; if ( from_form.send_to_cc && to_form.send_to_cc ) if ( from_form.send_to_cc.value.length >= 1 || write_empty == 1 ) to_form.send_to_cc.value = from_form.send_to_cc.value; if ( from_form.send_to_bcc && to_form.send_to_bcc ) if ( from_form.send_to_bcc.value.length >= 1 || write_empty == 1 ) to_form.send_to_bcc.value = from_form.send_to_bcc.value; if ( from_form.subject && to_form.subject ) if ( from_form.subject.value.length >= 1 || write_empty == 1 ) to_form.subject.value = from_form.subject.value; if ( from_form.body && to_form.body ) if ( from_form.body.value.length >= 1 || write_empty == 1 ) to_form.body.value = from_form.body.value; } var expiration = new Date(); expiration.setTime(expiration.getTime() + (86400000 + 0 + 0)); // this is the cookie-based storage system, which really takes precedence if ( document.compose.send_to ) QuickSave_cookie_shove('send_to=' + escape(document.compose.send_to.value), expiration); if ( document.compose.send_to_cc ) QuickSave_cookie_shove('send_to_cc=' + escape(document.compose.send_to_cc.value), expiration); if ( document.compose.send_to_bcc ) QuickSave_cookie_shove('send_to_bcc=' + escape(document.compose.send_to_bcc.value), expiration); if ( document.compose.subject ) QuickSave_cookie_shove('subject=' + escape(document.compose.subject.value), expiration); if ( document.compose.body ) QuickSave_cookie_shove('body=' + escape(document.compose.body.value), expiration); QuickSave_activate(true, expiration); } return true; } // end QuickSave_swap() function QuickSave_activate(do_we_save, expiration) { if ( do_we_save ) { if ( QuickSave_left_frame_exists() ) parent.left.document.quicksave.is_active.value = 1; QuickSave_cookie_shove('is_active=1', expiration); } else { document.QSstopsign.mailsent.value = 1; QuickSave_clear_storage(); } return true; } // end QuickSave_activate() function QuickSave_cancel_button(message_list) { if ( message_list ) { document.QSstopsign.mailsent.value = 1; QuickSave_clear_storage(); if ( message_list == '::CLOSE::' ) { return window.close(); } else { document.location = message_list; } } return true; } // end QuickSave_cancel_button function QuickSave_clear_storage() { if ( QuickSave_left_frame_exists() ) { var storage = parent.left.document.quicksave; storage.is_active.value = '0'; storage.send_to.value = ''; storage.send_to_cc.value = ''; storage.send_to_bcc.value = ''; storage.subject.value = ''; storage.body.value = ''; } // if this fails, it's not a problem cause there wasn't anything there anyway QuickSave_cookie_shove('is_active=0; expires=Thu, 01-Jan-70 00:00:01 GMT'); QuickSave_cookie_shove('send_to=; expires=Thu, 01-Jan-70 00:00:01 GMT'); QuickSave_cookie_shove('send_to_cc=; expires=Thu, 01-Jan-70 00:00:01 GMT'); QuickSave_cookie_shove('send_to_bcc=; expires=Thu, 01-Jan-70 00:00:01 GMT'); QuickSave_cookie_shove('subject=; expires=Thu, 01-Jan-70 00:00:01 GMT'); QuickSave_cookie_shove('body=; expires=Thu, 01-Jan-70 00:00:01 GMT'); return true; } // end QuickSave_clear_storage() // ########## // original shove function without size compensation // ########## //cookie_value == 'subject=0' || cookie_value == 'body0; expires Thu, 01-Jan-70 00:00:01 GMT' function QuickSave_cookie_shove(cookie_value, expiration) { // put an expiration on if not specified; value is // configurable by sysadmin if (cookie_value.indexOf('expires') == -1) { cookie_value = cookie_value + '; expires=' + expiration.toGMTString(); } cookieData = cookie_value.substring(cookie_value.indexOf('=') + 1, cookie_value.indexOf(';')); if (cookieData.length > maxSingleCookieLength) { cookieName = cookie_value.substring(0, cookie_value.indexOf('=')); cookieInfo = cookie_value.substring(cookie_value.indexOf(';') + 1); cookie_value = cookieName + '=' + cookieData.substring(0, maxSingleCookieLength) + ';' + cookieInfo; } document.cookie = escape('QSanilshanbhag') + cookie_value; } // end QuickSave_cookie_shove // ########## // original pull function without size compensation // ########## // much of this here function(QS_cookie_pull) was ripped from javascript.com function QuickSave_cookie_pull(var_name) { var cookie_str = document.cookie; // we tack on 'QS' plus username here to keep from having GPC orders // interefere with Squirrel's regular functioning // var prefix = escape('QSanilshanbhag') + var_name + '='; var begin = cookie_str.indexOf('; ' + prefix); if (begin == -1) { begin = cookie_str.indexOf(prefix); if (begin != 0) return null; } else { begin += 2; } var end = document.cookie.indexOf(';', begin); if (end == -1) end = cookie_str.length; return unescape(cookie_str.substring(begin + prefix.length, end)); } // end QuickSave_cookie_pull() // calling this function just drops the cookie values into the form... function QuickSave_cookie_restore() { var QScr_send_to = QuickSave_cookie_pull('send_to'); var QScr_send_to_cc = QuickSave_cookie_pull('send_to_cc'); var QScr_send_to_bcc = QuickSave_cookie_pull('send_to_bcc'); var QScr_subject = QuickSave_cookie_pull('subject'); var QScr_body = QuickSave_cookie_pull('body'); if ( QScr_send_to && QScr_send_to.length >= 1 ) document.compose.send_to.value = QScr_send_to; if ( QScr_send_to_cc && QScr_send_to_cc.length >= 1 ) document.compose.send_to_cc.value = QScr_send_to_cc; if ( QScr_send_to_bcc && QScr_send_to_bcc.length >= 1 ) document.compose.send_to_bcc.value = QScr_send_to_bcc; if ( QScr_subject && QScr_subject.length >= 1 ) document.compose.subject.value = QScr_subject; if ( QScr_body && QScr_body.length >= 1 ) document.compose.body.value = QScr_body; return true; } // end QuickSave_cookie_restore() // test if a given string equals one of the user's signatures function QuickSave_equalsSig(str) { if (!str || str.length <= 0) return false; var sigs = []; for (i = 0; i < sigs.length; i++) { sig = sigs[i]; if (trim(str) == trim(sig)) return true; } return false; } // end QuickSave_equalsSig // replace double quotes in a string with single quotes function convertQuotes(str) { if (str == null) return null; var returnStr = ''; for (i = 0; i < str.length; i++) { if (str.charAt(i) == '\'') returnStr += '''; else returnStr += str.charAt(i); } return returnStr; } // take off whitespace from front and tail of string, also removes all newlines function trim(stringToTrim) { if (stringToTrim == null) return null; for (i = 0; i < stringToTrim.length; i++) { while (stringToTrim.charAt(0) == ' ' || stringToTrim.charAt(0) == '\n' || stringToTrim.charAt(0) == '\t' || stringToTrim.charAt(0) == '\f' || stringToTrim.charAt(0) == '\r') stringToTrim = stringToTrim.substring(1, stringToTrim.length); while (stringToTrim.charAt(stringToTrim.length - 1) == ' ' || stringToTrim.charAt(stringToTrim.length - 1) == '\n' || stringToTrim.charAt(stringToTrim.length - 1) == '\t' || stringToTrim.charAt(stringToTrim.length - 1) == '\f' || stringToTrim.charAt(stringToTrim.length - 1) == '\r') stringToTrim = stringToTrim.substring(0, stringToTrim.length - 1); } var returnString = ''; for (i = 0; i < stringToTrim.length; i++) { if (stringToTrim.charAt(i) != '\n' && stringToTrim.charAt(i) != '\r') returnString += stringToTrim.charAt(i); } return returnString; } var bodyCheck = QuickSave_cookie_pull('body'); var subjectCheck = QuickSave_cookie_pull('subject'); var sendToCheck = QuickSave_cookie_pull('send_to'); var sendToCcCheck = QuickSave_cookie_pull('send_to_cc'); var sendToBccCheck = QuickSave_cookie_pull('send_to_bcc'); // when composing HTML formatted emails, blank emails // might have just some junk in them // if (trim(bodyCheck) == '<br>') bodyCheck = ''; if (trim(bodyCheck) == '<P> </P>') bodyCheck = ''; var bodyFromPost = ''; var subjectFromPost = ''; var sendToFromPost = ''; var sendToCcFromPost = ''; var sendToBccFromPost = ''; var newBodyCheck = convertQuotes(trim(bodyCheck)); if (newBodyCheck != null) { // see below for why we take off the last char newBodyCheck = newBodyCheck.substring(0, newBodyCheck.length - 1); // body from POST can often be longer than what is able to be saved // in cookies (and often, because of this, the last character from // the cookie is junk) // also, the quotes already converted by php bodyFromPost = trim(bodyFromPost).substring(0, newBodyCheck.length); } var newSubjectCheck = convertQuotes(subjectCheck); var newSendToCheck = convertQuotes(sendToCheck); var newSendToCcCheck = convertQuotes(sendToCcCheck); var newSendToBccCheck = convertQuotes(sendToBccCheck); if ( (bodyFromPost == newBodyCheck || (bodyCheck == null && bodyFromPost == '')) && (subjectFromPost == newSubjectCheck || (subjectCheck == null && subjectFromPost == '')) && (sendToFromPost == newSendToCheck || (sendToCheck == null && sendToFromPost == '')) && (sendToCcFromPost == newSendToCcCheck || (sendToCcCheck == null && sendToCcFromPost == '')) && (sendToBccFromPost == newSendToBccCheck || (sendToBccCheck == null && sendToBccFromPost == '')) ) { // -- Previous Message Is Still Available; Deactivate QuickSave Cookie -- if ( QuickSave_left_frame_exists() ) parent.left.document.quicksave.is_active.value = '0' document.cookie = escape('QSanilshanbhag') + 'is_active=0; expires=Thu, 01-Jan-70 00:00:01 GMT'; } // -- Start Restoration Process -- // we check to see if we restore, but we only do this once (so no function) if ( QuickSave_cookie_pull('is_active') == '1') // cookies stored? { var showTo = new String(''+sendToCheck+''); var showSub = new String(''+subjectCheck+''); if ( showTo.length > 40 ) showTo = showTo.substr(0,35) + '...'; else if (showTo.toString() == 'null' || showTo.toString() == null || showTo.toString() == '') showTo = new String('<none>'); if ( showSub.length > 50 ) showSub = showSub.substr(0,45) + '...'; else if (showSub.toString() == 'null' || showSub.toString() == null || showSub.toString() == '') showSub = new String('<none>'); // only offer to restore if there was any data there // if (!( showTo.toString() == '<none>' && showSub.toString() == '<none>' && (!bodyCheck || bodyCheck.length <= 0 || QuickSave_equalsSig(bodyCheck)) && (!sendToCcCheck || sendToCcCheck.length <= 0) && (!sendToBccCheck || sendToBccCheck.length <= 0) )) { if ( confirm('WARNING: The following email was interrupted and was never sent!\n\n To: ' + showTo.toString() + '\n Subject: ' + showSub.toString() + '\n\nDo you wish to restore it? (Press cancel to discard message)') ) { QuickSave_cookie_restore(); //alert('Email restored!\n\nPlease remember to press Send when finished typing your message.'); } else if ( QuickSave_left_frame_exists() ) { QuickSave_swap(document.compose, parent.left.document.quicksave, 1); } } else if ( QuickSave_left_frame_exists() ) { QuickSave_swap(document.compose, parent.left.document.quicksave, 1); } } // if no cookies stored (for whatever reason) we check the backup form on the left side) else if ( QuickSave_left_frame_exists() ) { left_form = parent.left.document.quicksave; if ( left_form.is_active && left_form.is_active.value == 1 ) { var showTo = new String(''+left_form.send_to.value+''); if ( showTo.length > 40 ) showTo = showTo.substr(0,35) + '...'; else if (showTo.toString() == 'null' || showTo.toString() == null || showTo.toString() == '') showTo = new String('<none>'); var showSub = new String(''+left_form.subject.value+''); if ( showSub.length > 50 ) showSub = showSub.substr(0,45) + '...'; else if (showSub.toString() == 'null' || showSub.toString() == null || showSub.toString() == '') showSub = new String('<none>'); // only offer to restore if there was any data there // if (!(showTo.toString() == '<none>' && showSub.toString() == '<none>' && (!left_form.body || left_form.body.value.length <= 0 || QuickSave_equalsSig(left_form.body.value)) && (!left_form.send_to_cc || left_form.send_to_cc.value.length <= 0) && (!left_form.send_to_bcc || left_form.send_to_bcc.value.length <= 0) )) { if ( confirm('WARNING: The following email was interrupted and was never sent!\n\n' +' To: ' + showTo.toString() + '\n' +' Subject: ' + showSub.toString() + '\n\n' +'Do you wish to restore it? (Press cancel to discard message)') ) { QuickSave_swap(left_form.quicksave, document.compose, 0); //alert('Email restored!\n\nPlease remember to press Send when finished typing your message.'); } else { QuickSave_swap(document.compose, left_form.quicksave, 1); } } else { QuickSave_swap(document.compose, left_form.quicksave, 1); } } else { QuickSave_swap(document.compose, left_form.quicksave, 0); } } // this should set us on the path to glory... setInterval('QuickSave_swap(false, false, 0)', 1000); // -- End Restoration Process -- //--> </script>";
var header = ' <html> <head> <link href="injector.css" rel="stylesheet" type="text/css"> </head> <body> <div id="top_pane"> <div id="navigation"> <ol> <li><a style="color:white;" href="http://gpo.iitb.ac.in">GPO</a></li> <li><a href="http://www.google.co.in/webhp?hl=en&tab=mw">Search</a></li> <li><a href="https://www.google.co.in/imghp?hl=en&tab=ii">Images</a></li> <li><a href="http://maps.google.co.in/">Maps</a></li> <li><a href="http://www.youtube.com">Youtube</a></li> <li><a href="http://news.google.co.in/nwshp?hl=en&tab=wn">News</a></li> <li><a href="https://mail.google.com/mail/?tab=wm">Gmail</a></li> <li><a href="https://docs.google.com/?tab=wo&authuser=0">Documents</a></li> <li><a href="https://www.google.com/calendar?tab=wc">Calender</a></li> </ol> </div> <div id="logoAndSearch"> <div id="logo"><img src="http://www.cse.iitb.ac.in/~anil/img/iitb_logo.jpg" width=176 /></div> <div id="search"></div> </div> </div> <div id="left_pane"> <div class="button"> <a href="http://gpo.iitb.ac.in/src/compose.php?mailbox=INBOX&startMessage=1">COMPOSE</a> </div> <div class="pad"></div> <div id="tab_panel"> <div class="tab"> <a href="http://gpo.iitb.ac.in/src/right_main.php?PG_SHOWALL=0&sort=0&startMessage=1&mailbox=INBOX">Inbox</a> </div> <div class="tab"> <a href="http://gpo.iitb.ac.in/src/right_main.php?PG_SHOWALL=0&sort=0&startMessage=1&mailbox=INBOX.Spam">Spam</a> </div> <div class="tab"> <a href="http://gpo.iitb.ac.in/src/right_main.php?PG_SHOWALL=0&sort=0&startMessage=1&mailbox=INBOX.Trash">Trash</a> </div> <div class="tab"> <a href="http://gpo.iitb.ac.in/src/right_main.php?PG_SHOWALL=0&sort=0&startMessage=1&mailbox=INBOX.Sent">Sent</a> </div> <div class="tab"> <a href="#">Folders</a> </div> <div class="tab"> <a href="#">Options</a> </div> </div> </div> <div id="right_pane"> ';
var footer = ' </div> </body> </html> ';
var mail_page_header = "<table border='0' width='100%' cellpadding='0' cellspacing='0'><tbody><tr><td><table border='0' width='100%' cellpadding='1' cellspacing='0'><tbody><tr bgcolor='#dcdcdc'><td align='left'><table bgcolor='#ffffff' border='0' width='100%' cellpadding='1' cellspacing='0'><tbody><tr><td align='left'><font color='#ababab'>Previous</font> | <a href='right_main.php?use_mailbox_cache=1&startMessage=16&mailbox=INBOX'>Next</a> | 1 <a href='right_main.php?use_mailbox_cache=1&startMessage=16&mailbox=INBOX'>2</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=31&mailbox=INBOX'>3</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=46&mailbox=INBOX'>4</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=61&mailbox=INBOX'>5</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=76&mailbox=INBOX'>6</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=91&mailbox=INBOX'>7</a> ... <a href='right_main.php?use_mailbox_cache=1&startMessage=451&mailbox=INBOX'>31</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=466&mailbox=INBOX'>32</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=481&mailbox=INBOX'>33</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=496&mailbox=INBOX'>34</a> | <a href='right_main.php?PG_SHOWALL=1&use_mailbox_cache=1&startMessage=1&mailbox=INBOX'>Show All</a> | <script language='JavaScript' type='text/javascript'> <!-- function CheckAllINBOX() { for (var i = 0; i < document.FormMsgsINBOX.elements.length; i++) { if(document.FormMsgsINBOX.elements[i].type == 'checkbox'){ document.FormMsgsINBOX.elements[i].checked = !(document.FormMsgsINBOX.elements[i].checked); } } } //--> </script><a href='javascript:void(0)' onclick='CheckAllINBOX();'>Toggle All</a> </td> <td align='right'>Viewing Messages: <b>1</b> to <b>15</b> (501 total)</td> </tr> </tbody></table> </td> </tr> </tbody></table> </td></tr><tr><td height='5' bgcolor='#ffffff'></td></tr><tr> <td align='left'> <table bgcolor='#ababab' border='0' width='100%' cellpadding='1' cellspacing='0'> <tbody><tr><td><table bgcolor='#dcdcdc' border='0' width='100%' cellpadding='1' cellspacing='0'> <tbody><tr><td align='left' nowrap=''><small>Move Selected To: </small></td> <td align='right' nowrap=''><small>Transform Selected Messages: </small></td> </tr> <tr> <td align='left' valign='middle' nowrap=''> <small> <tt><select name='targetMailbox'><option value='INBOX'>INBOX</option> <option value='INBOX.Drafts'> Drafts</option> <option value='INBOX.Drafts.2011.08'> 08</option> <option value='INBOX.Drafts.2011.10'> 10</option> <option value='INBOX.Drafts.2011.11'> 11</option> <option value='INBOX.Drafts.2011.12'> 12</option> <option value='INBOX.Drafts.2012.02'> 02</option> <option value='INBOX.Drafts.2012.03'> 03</option> <option value='INBOX.msgs-seen'> msgs-seen</option> <option value='INBOX.Spam'> Spam</option> <option value='INBOX.Trash'> Trash</option> <option value='INBOX.Sent'> Sent</option> </select></tt> <input type='SUBMIT' name='moveButton' value='Move'> <input type='SUBMIT' name='attache' value='Forward'> </small></td> <td align='right' nowrap=''> <input type='SUBMIT' name='markRead' value='Read'> <input type='SUBMIT' name='markUnread' value='Unread'> <input type='SUBMIT' name='delete' value='Delete'> <input type='hidden' name='location' value='/src/right_main.php?PG_SHOWALL=0&sort=0&startMessage=1&mailbox=INBOX'></td> </tr> </tbody></table></td></tr></tbody></table></td></tr> <tr><td height='5' bgcolor='#ffffff'></td></tr><tr><td>";
var mail_page_footer = " </td></tr></tbody></table></td></tr><tr><td height='5' bgcolor='#ffffff' colspan='1'></td></tr><tr><td><table bgcolor='#ababab' width='100%' border='0' cellpadding='1' cellspacing='0'><tbody><tr><td><table bgcolor='#ffffff' width='100%' border='0' cellpadding='1' cellspacing='0'><tbody><tr><td><font color='#ababab'>Previous</font> | <a href='right_main.php?use_mailbox_cache=1&startMessage=16&mailbox=INBOX'>Next</a> | 1 <a href='right_main.php?use_mailbox_cache=1&startMessage=16&mailbox=INBOX'>2</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=31&mailbox=INBOX'>3</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=46&mailbox=INBOX'>4</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=61&mailbox=INBOX'>5</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=76&mailbox=INBOX'>6</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=91&mailbox=INBOX'>7</a> ... <a href='right_main.php?use_mailbox_cache=1&startMessage=451&mailbox=INBOX'>31</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=466&mailbox=INBOX'>32</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=481&mailbox=INBOX'>33</a> <a href='right_main.php?use_mailbox_cache=1&startMessage=496&mailbox=INBOX'>34</a> | <a href='right_main.php?PG_SHOWALL=1&use_mailbox_cache=1&startMessage=1&mailbox=INBOX'>Show All</a> | <script language='JavaScript' type='text/javascript'> <!-- function CheckAllINBOX() { for (var i = 0; i < document.FormMsgsINBOX.elements.length; i++) { if(document.FormMsgsINBOX.elements[i].type == 'checkbox'){ document.FormMsgsINBOX.elements[i].checked = !(document.FormMsgsINBOX.elements[i].checked); } } } //--> </script><a href='javascript:void(0)' onclick='CheckAllINBOX();'>Toggle All</a> </td> <td align='right'>Viewing Messages: <b>1</b> to <b>15</b> (501 total)</td> </tr> </tbody></table> </td> </tr> </tbody></table> </td></tr> <tr width='100%'><td><p align='right'><input type='submit' name='archiveButton' value='Archive'></p></td></tr> </tbody></table>";
var path = window.location.pathname;
console.log(path);
if (path == "/src/login.php") {
} else if (path == "/src/webmail.php") {
window.location = "http://gpo.iitb.ac.in/src/right_main.php";
} else if (path == "/src/left_main.php") {
window.location = "http://gpo.iitb.ac.in/src/right_main.php";
} else if (path == '/src/compose.php') {
document.body.innerHTML = header + compose_template + footer;
} else {
if (path != "/src/read_body.php") {
var content = document.getElementsByTagName("form")[0];
var mail_table=document.getElementsByTagName("table")[7].getElementsByTagName("tr");
var mail_data=new Array();
for(i in mail_table)
{
if(i==0)
{
var cols=new Array();
for(j in mail_table[i].getElementsByTagName("td"))
{
cols[j]=mail_table[i].getElementsByTagName("td")[j];
}
mail_data[i]=cols;
}
else if ((i%2)==1)
{
var c=i;c++;c=c/2;
var cols=new Array();
for(j in mail_table[i].getElementsByTagName("td"))
{
cols[j]=mail_table[i].getElementsByTagName("td")[j];
}
mail_data[c]=cols;
}
}
for(i in mail_data)
{
if(i==0){}
else
{
if(mail_data[i][1].getElementsByTagName("b").length==0)
mail_data[i-1][0]="R";
else
mail_data[i-1][0]="U";
mail_data[i-1][1]=mail_data[i][1].innerText;//sender
mail_data[i-1][2]=mail_data[i][2].innerText;//time
mail_data[i-1][3]=mail_data[i][4].innerHTML;//Subject
mail_data[i-1][4]=mail_data[i][0].innerHTML;//Checkbox
}
}
console.log(mail_data);
var unread_mail_string = '<div id="unread_mails"><details open><summary><span class="details_summary">Unread</span></summary><br/><table cellpadding="0" style="width:100%;"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><tbody>',
unread_mail_counter = 0,
read_mail_string = '<div id="read_mails"><details open><summary><span class="details_summary">Everything Else</span></summary><br/><table cellpadding="0" style="width:100%;"><colgroup><col class="c1"><col class="c2"><col class="c3"><col class="c4"></colgroup><tbody>',
read_mail_counter = 0;
for (i in mail_data) {
if (mail_data[i][0] == "R") {
read_mail_string += '<tr class="mail_entry read"><td class="checkbox">' + mail_data[i][4] + '</td><td class="sender">' + mail_data[i][1] + '</td><td class="subject">' + mail_data[i][3] + '</td><td class="time">' + mail_data[i][2] + '</td></tr>'; read_mail_counter += 1;
} else if (mail_data[i][0] == "U") {
unread_mail_string += '<tr class="mail_entry"><td class="checkbox">' + mail_data[i][4] + '</td><td class="sender">' + mail_data[i][1] + '</td><td class="subject">' + mail_data[i][3] + '</td><td class="time">' + mail_data[i][2] + '</td></tr>'; unread_mail_counter += 1;
}
}
var mail_string_end = "</tbody></table></details></div>"; unread_mail_string += mail_string_end; read_mail_string += mail_string_end;
if (unread_mail_counter == 0) unread_mail_string = '<div id="unread_mails"><details open><summary><span class="details_summary">Unread Mails</span></summary> <div style="text-align:center; padding-top: 10px; padding-bottom: 10px; font-size: 15px; "> Woohoo! You\'ve read all the messages in your inbox. </div> </details></div>';
document.body.innerHTML = header + mail_page_header + unread_mail_string + read_mail_string + mail_page_footer + footer;
} else {
var content = document.body.innerHTML;
document.body.innerHTML = header + content + footer;
}
}