|
From: OryNider <ory...@us...> - 2007-12-17 06:36:49
|
Update of /cvsroot/mxbb/core/templates/prosilver In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv5757 Modified Files: overall_header.html overall_header_navigation.html overall_header_navigation_phpbb.html prosilver.css Added Files: editor.js forum_fn.js styleswitcher.js Log Message: more fixes for prosilver Index: overall_header_navigation.html =================================================================== RCS file: /cvsroot/mxbb/core/templates/prosilver/overall_header_navigation.html,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** overall_header_navigation.html 17 Dec 2007 04:26:18 -0000 1.6 --- overall_header_navigation.html 17 Dec 2007 06:36:43 -0000 1.7 *************** *** 1,4 **** --- 1,5 ---- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}"> + <html> <head> <meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" /> *************** *** 57,61 **** --- 58,64 ---- <script language="javascript" type="text/javascript" src="{U_PORTAL_ROOT_PATH}modules/mx_shared/lib/Toggle.js"></script> + <!-- This force template reloading in ie7 like CTRL+F5 does and is not very nice <script type="text/javascript" src="{U_PORTAL_ROOT_PATH}{TEMPLATE_ROOT_PATH}styleswitcher.js"></script> + --> <script type="text/javascript" src="{U_PORTAL_ROOT_PATH}{TEMPLATE_ROOT_PATH}forum_fn.js"></script> --- NEW FILE: forum_fn.js --- /** * phpBB3 forum functions */ /** * Window popup */ function popup(url, width, height, name) { if (!name) { name = '_popup'; } window.open(url.replace(/&/g, '&'), name, 'height=' + height + ',resizable=yes,scrollbars=yes, width=' + width); return false; } /** * Jump to page */ function jumpto() { var page = prompt(jump_page, on_page); if (page !== null && !isNaN(page) && page > 0) { document.location.href = base_url.replace(/&/g, '&') + '&start=' + ((page - 1) * per_page); } } /** * Mark/unmark checklist * id = ID of parent container, name = name prefix, state = state [true/false] */ function marklist(id, name, state) { var parent = document.getElementById(id); if (!parent) { eval('parent = document.' + id); } if (!parent) { return; } var rb = parent.getElementsByTagName('input'); for (var r = 0; r < rb.length; r++) { if (rb[r].name.substr(0, name.length) == name) { rb[r].checked = state; } } } /** * Resize viewable area for attached image or topic review panel (possibly others to come) * e = element */ function viewableArea(e, itself) { if (!e) return; if (!itself) { e = e.parentNode; } if (!e.vaHeight) { // Store viewable area height before changing style to auto e.vaHeight = e.offsetHeight; e.vaMaxHeight = e.style.maxHeight; e.style.height = 'auto'; e.style.maxHeight = 'none'; e.style.overflow = 'visible'; } else { // Restore viewable area height to the default e.style.height = e.vaHeight + 'px'; e.style.overflow = 'auto'; e.style.maxHeight = e.vaMaxHeight; e.vaHeight = false; } } /** * Set display of page element * s[-1,0,1] = hide,toggle display,show */ function dE(n, s) { var e = document.getElementById(n); if (!s) { s = (e.style.display == '' || e.style.display == 'block') ? -1 : 1; } e.style.display = (s == 1) ? 'block' : 'none'; } /** * Alternate display of subPanels */ function subPanels(p) { var i, e, t; if (typeof(p) == 'string') { show_panel = p; } for (i = 0; i < panels.length; i++) { e = document.getElementById(panels[i]); t = document.getElementById(panels[i] + '-tab'); if (e) { if (panels[i] == show_panel) { e.style.display = 'block'; if (t) { t.className = 'activetab'; } } else { e.style.display = 'none'; if (t) { t.className = ''; } } } } } /** * Call print preview */ function printPage() { if (is_ie) { printPreview(); } else { window.print(); } } /** * Show/hide groups of blocks * c = CSS style name * e = checkbox element * t = toggle dispay state (used to show 'grip-show' image in the profile block when hiding the profiles) */ function displayBlocks(c, e, t) { var s = (e.checked == true) ? 1 : -1; if (t) { s *= -1; } var divs = document.getElementsByTagName("DIV"); for (var d = 0; d < divs.length; d++) { if (divs[d].className.indexOf(c) == 0) { divs[d].style.display = (s == 1) ? 'none' : 'block'; } } } function selectCode(a) { // Get ID of code block var e = a.parentNode.parentNode.getElementsByTagName('CODE')[0]; // Not IE if (window.getSelection) { var s = window.getSelection(); // Safari if (s.setBaseAndExtent) { s.setBaseAndExtent(e, 0, e, e.innerText.length - 1); } // Firefox and Opera else { var r = document.createRange(); r.selectNodeContents(e); s.removeAllRanges(); s.addRange(r); } } // Some older browsers else if (document.getSelection) { var s = document.getSelection(); var r = document.createRange(); r.selectNodeContents(e); s.removeAllRanges(); s.addRange(r); } // IE else if (document.selection) { var r = document.body.createTextRange(); r.moveToElementText(e); r.select(); } } /** * Play quicktime file by determining it's width/height * from the displayed rectangle area */ function play_qt_file(obj) { var rectangle = obj.GetRectangle(); if (rectangle) { rectangle = rectangle.split(','); var x1 = parseInt(rectangle[0]); var x2 = parseInt(rectangle[2]); var y1 = parseInt(rectangle[1]); var y2 = parseInt(rectangle[3]); var width = (x1 < 0) ? (x1 * -1) + x2 : x2 - x1; var height = (y1 < 0) ? (y1 * -1) + y2 : y2 - y1; } else { var width = 200; var height = 0; } obj.width = width; obj.height = height + 16; obj.SetControllerVisible(true); obj.Play(); } --- NEW FILE: styleswitcher.js --- function fontsizeup() { var active = getActiveStyleSheet(); switch (active) { case 'A--': setActiveStyleSheet('A-'); break; case 'A-': setActiveStyleSheet('A'); break; case 'A': setActiveStyleSheet('A+'); break; case 'A+': setActiveStyleSheet('A++'); break; case 'A++': setActiveStyleSheet('A'); break; default: setActiveStyleSheet('A'); break; } } function fontsizedown() { active = getActiveStyleSheet(); switch (active) { case 'A++' : setActiveStyleSheet('A+'); break; case 'A+' : setActiveStyleSheet('A'); break; case 'A' : setActiveStyleSheet('A-'); break; case 'A-' : setActiveStyleSheet('A--'); break; case 'A--' : break; default : setActiveStyleSheet('A--'); break; } } function setActiveStyleSheet(title) { var i, a, main; for (i = 0; (a = document.getElementsByTagName('link')[i]); i++) { if (a.getAttribute('rel').indexOf('style') != -1 && a.getAttribute('title')) { a.disabled = true; if (a.getAttribute('title') == title) { a.disabled = false; } } } } function getActiveStyleSheet() { var i, a; for (i = 0; (a = document.getElementsByTagName('link')[i]); i++) { if (a.getAttribute('rel').indexOf('style') != -1 && a.getAttribute('title') && !a.disabled) { return a.getAttribute('title'); } } return null; } function getPreferredStyleSheet() { return ('A-'); } function createCookie(name, value, days) { if (days) { var date = new Date(); date.setTime(date.getTime() + (days*24*60*60*1000)); var expires = '; expires=' + date.toGMTString(); } else { expires = ''; } document.cookie = name + '=' + value + expires + '; path=/'; } function readCookie(name) { var nameEQ = name + '='; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1, c.length); } if (c.indexOf(nameEQ) == 0) { return c.substring(nameEQ.length, c.length); } } return null; } function load_cookie() { var cookie = readCookie('style_cookie'); var title = cookie ? cookie : getPreferredStyleSheet(); setActiveStyleSheet(title); } function unload_cookie() { var title = getActiveStyleSheet(); createCookie('style_cookie', title, 365); } onload_functions.push('load_cookie()'); onunload_functions.push('unload_cookie()'); /* var cookie = readCookie("style"); var title = cookie ? cookie : getPreferredStyleSheet(); setActiveStyleSheet(title); */ Index: prosilver.css =================================================================== RCS file: /cvsroot/mxbb/core/templates/prosilver/prosilver.css,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** prosilver.css 17 Dec 2007 04:26:18 -0000 1.4 --- prosilver.css 17 Dec 2007 06:36:43 -0000 1.5 *************** *** 28,30 **** background-repeat: no-repeat; background-position: 100% 0; ! } \ No newline at end of file --- 28,64 ---- background-repeat: no-repeat; background-position: 100% 0; ! } ! .textbody { ! padding: 0; ! line-height: 1.48em; ! color: #333333; ! clear: both; ! } ! ! .textbody .ignore { ! font-size: 1.1em; ! } ! ! .textbody .content { ! font-size: 1.2em; ! } ! .textbody h3.first { ! /* The first post on the page uses this */ ! font-size: 1.5em; ! } ! ! .textbody h3 { ! /* Postbody requires a different h3 format - so change it here */ ! font-size: 1.4em; ! padding: 2px 0 0 0; ! margin: 0 0 0.3em 0 !important; ! text-transform: none; ! border: none; ! font-family: "Trebuchet MS", Verdana, Helvetica, Arial, sans-serif; ! line-height: 125%; ! } ! ! .textbody h3 img { ! /* Also see tweaks.css */ ! vertical-align: bottom; ! } \ No newline at end of file --- NEW FILE: editor.js --- /** * bbCode control by subBlue design [ www.subBlue.com ] * Includes unixsafe colour palette selector by SHS` */ // Startup variables var imageTag = false; var theSelection = false; // Check for Browser & Platform for PC & IE specific bits // More details from: http://www.mozilla.org/docs/web-developer/sniffer/browser_type.html var clientPC = navigator.userAgent.toLowerCase(); // Get client info var clientVer = parseInt(navigator.appVersion); // Get browser version var is_ie = ((clientPC.indexOf('msie') != -1) && (clientPC.indexOf('opera') == -1)); var is_win = ((clientPC.indexOf('win') != -1) || (clientPC.indexOf('16bit') != -1)); var baseHeight; onload_functions.push('initInsertions()'); /** * Shows the help messages in the helpline window */ function helpline(help) { document.forms[form_name].helpbox.value = help_line[help]; } /** * Fix a bug involving the TextRange object. From * http://www.frostjedi.com/terra/scripts/demo/caretBug.html */ function initInsertions() { var doc; if (document.forms[form_name]) { doc = document; } else { doc = opener.document; } var textarea = doc.forms[form_name].elements[text_name]; if (is_ie && typeof(baseHeight) != 'number') { textarea.focus(); baseHeight = doc.selection.createRange().duplicate().boundingHeight; if (!document.forms[form_name]) { document.body.focus(); } } } /** * bbstyle */ function bbstyle(bbnumber) { if (bbnumber != -1) { bbfontstyle(bbtags[bbnumber], bbtags[bbnumber+1]); } else { insert_text('[*]'); document.forms[form_name].elements[text_name].focus(); } } /** * Apply bbcodes */ function bbfontstyle(bbopen, bbclose) { theSelection = false; var textarea = document.forms[form_name].elements[text_name]; textarea.focus(); if ((clientVer >= 4) && is_ie && is_win) { // Get text selection theSelection = document.selection.createRange().text; if (theSelection) { // Add tags around selection document.selection.createRange().text = bbopen + theSelection + bbclose; document.forms[form_name].elements[text_name].focus(); theSelection = ''; return; } } else if (document.forms[form_name].elements[text_name].selectionEnd && (document.forms[form_name].elements[text_name].selectionEnd - document.forms[form_name].elements[text_name].selectionStart > 0)) { mozWrap(document.forms[form_name].elements[text_name], bbopen, bbclose); document.forms[form_name].elements[text_name].focus(); theSelection = ''; return; } //The new position for the cursor after adding the bbcode var caret_pos = getCaretPosition(textarea).start; var new_pos = caret_pos + bbopen.length; // Open tag insert_text(bbopen + bbclose); // Center the cursor when we don't have a selection // Gecko and proper browsers if (!isNaN(textarea.selectionStart)) { textarea.selectionStart = new_pos; textarea.selectionEnd = new_pos; } // IE else if (document.selection) { var range = textarea.createTextRange(); range.move("character", new_pos); range.select(); storeCaret(textarea); } textarea.focus(); return; } /** * Insert text at position */ function insert_text(text, spaces, popup) { var textarea; if (!popup) { textarea = document.forms[form_name].elements[text_name]; } else { textarea = opener.document.forms[form_name].elements[text_name]; } if (spaces) { text = ' ' + text + ' '; } if (!isNaN(textarea.selectionStart)) { var sel_start = textarea.selectionStart; var sel_end = textarea.selectionEnd; mozWrap(textarea, text, '') textarea.selectionStart = sel_start + text.length; textarea.selectionEnd = sel_end + text.length; } else if (textarea.createTextRange && textarea.caretPos) { if (baseHeight != textarea.caretPos.boundingHeight) { textarea.focus(); storeCaret(textarea); } var caret_pos = textarea.caretPos; caret_pos.text = caret_pos.text.charAt(caret_pos.text.length - 1) == ' ' ? caret_pos.text + text + ' ' : caret_pos.text + text; } else { textarea.value = textarea.value + text; } if (!popup) { textarea.focus(); } } /** * Add inline attachment at position */ function attach_inline(index, filename) { insert_text('[attachment=' + index + ']' + filename + '[/attachment]'); document.forms[form_name].elements[text_name].focus(); } /** * Add quote text to message */ function addquote(post_id, username) { var message_name = 'message_' + post_id; var theSelection = ''; var divarea = false; if (document.all) { divarea = document.all[message_name]; } else { divarea = document.getElementById(message_name); } // Get text selection - not only the post content :( if (window.getSelection) { theSelection = window.getSelection().toString(); } else if (document.getSelection) { theSelection = document.getSelection(); } else if (document.selection) { theSelection = document.selection.createRange().text; } if (theSelection == '' || typeof theSelection == 'undefined' || theSelection == null) { if (divarea.innerHTML) { theSelection = divarea.innerHTML.replace(/<br>/ig, '\n'); theSelection = theSelection.replace(/<br\/>/ig, '\n'); theSelection = theSelection.replace(/<\;/ig, '<'); theSelection = theSelection.replace(/>\;/ig, '>'); theSelection = theSelection.replace(/&\;/ig, '&'); theSelection = theSelection.replace(/ \;/ig, ' '); } else if (document.all) { theSelection = divarea.innerText; } else if (divarea.textContent) { theSelection = divarea.textContent; } else if (divarea.firstChild.nodeValue) { theSelection = divarea.firstChild.nodeValue; } } if (theSelection) { insert_text('[quote="' + username + '"]' + theSelection + '[/quote]'); } return; } /** * From http://www.massless.org/mozedit/ */ function mozWrap(txtarea, open, close) { var selLength = txtarea.textLength; var selStart = txtarea.selectionStart; var selEnd = txtarea.selectionEnd; var scrollTop = txtarea.scrollTop; if (selEnd == 1 || selEnd == 2) { selEnd = selLength; } var s1 = (txtarea.value).substring(0,selStart); var s2 = (txtarea.value).substring(selStart, selEnd) var s3 = (txtarea.value).substring(selEnd, selLength); txtarea.value = s1 + open + s2 + close + s3; txtarea.selectionStart = selEnd + open.length + close.length; txtarea.selectionEnd = txtarea.selectionStart; txtarea.focus(); txtarea.scrollTop = scrollTop; return; } /** * Insert at Caret position. Code from * http://www.faqts.com/knowledge_base/view.phtml/aid/1052/fid/130 */ function storeCaret(textEl) { if (textEl.createTextRange) { textEl.caretPos = document.selection.createRange().duplicate(); } } /** * Color pallette */ function colorPalette(dir, width, height) { var r = 0, g = 0, b = 0; var numberList = new Array(6); var color = ''; numberList[0] = '00'; numberList[1] = '40'; numberList[2] = '80'; numberList[3] = 'BF'; numberList[4] = 'FF'; document.writeln('<table cellspacing="1" cellpadding="0" border="0">'); for (r = 0; r < 5; r++) { if (dir == 'h') { document.writeln('<tr>'); } for (g = 0; g < 5; g++) { if (dir == 'v') { document.writeln('<tr>'); } for (b = 0; b < 5; b++) { color = String(numberList[r]) + String(numberList[g]) + String(numberList[b]); document.write('<td bgcolor="#' + color + '" style="width: ' + width + 'px; height: ' + height + 'px;">'); document.write('<a href="#" onclick="bbfontstyle(\'[color=#' + color + ']\', \'[/color]\'); return false;"><img src="images/spacer.gif" width="' + width + '" height="' + height + '" alt="#' + color + '" title="#' + color + '" /></a>'); document.writeln('</td>'); } if (dir == 'v') { document.writeln('</tr>'); } } if (dir == 'h') { document.writeln('</tr>'); } } document.writeln('</table>'); } /** * Caret Position object */ function caretPosition() { var start = null; var end = null; } /** * Get the caret position in an textarea */ function getCaretPosition(txtarea) { var caretPos = new caretPosition(); // simple Gecko/Opera way if(txtarea.selectionStart || txtarea.selectionStart == 0) { caretPos.start = txtarea.selectionStart; caretPos.end = txtarea.selectionEnd; } // dirty and slow IE way else if(document.selection) { // get current selection var range = document.selection.createRange(); // a new selection of the whole textarea var range_all = document.body.createTextRange(); range_all.moveToElementText(txtarea); // calculate selection start point by moving beginning of range_all to beginning of range var sel_start; for (sel_start = 0; range_all.compareEndPoints('StartToStart', range) < 0; sel_start++) { range_all.moveStart('character', 1); } txtarea.sel_start = sel_start; // we ignore the end value for IE, this is already dirty enough and we don't need it caretPos.start = txtarea.sel_start; caretPos.end = txtarea.sel_start; } return caretPos; } Index: overall_header_navigation_phpbb.html =================================================================== RCS file: /cvsroot/mxbb/core/templates/prosilver/overall_header_navigation_phpbb.html,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** overall_header_navigation_phpbb.html 17 Dec 2007 04:26:18 -0000 1.5 --- overall_header_navigation_phpbb.html 17 Dec 2007 06:36:43 -0000 1.6 *************** *** 1,4 **** --- 1,5 ---- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}"> + <html> <head> <meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" /> *************** *** 57,61 **** --- 58,64 ---- <script language="javascript" type="text/javascript" src="{U_PORTAL_ROOT_PATH}modules/mx_shared/lib/Toggle.js"></script> + <!-- This force template reloading in ie7 like CTRL+F5 does and is not very nice <script type="text/javascript" src="{U_PORTAL_ROOT_PATH}{TEMPLATE_ROOT_PATH}styleswitcher.js"></script> + --> <script type="text/javascript" src="{U_PORTAL_ROOT_PATH}{TEMPLATE_ROOT_PATH}forum_fn.js"></script> Index: overall_header.html =================================================================== RCS file: /cvsroot/mxbb/core/templates/prosilver/overall_header.html,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** overall_header.html 17 Dec 2007 04:26:18 -0000 1.4 --- overall_header.html 17 Dec 2007 06:36:43 -0000 1.5 *************** *** 1,4 **** --- 1,5 ---- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}"> + <html> <head> <meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" /> *************** *** 57,61 **** --- 58,64 ---- <script language="javascript" type="text/javascript" src="{U_PORTAL_ROOT_PATH}modules/mx_shared/lib/Toggle.js"></script> + <!-- This force template reloading in ie7 like CTRL+F5 does and is not very nice <script type="text/javascript" src="{U_PORTAL_ROOT_PATH}{TEMPLATE_ROOT_PATH}styleswitcher.js"></script> + --> <script type="text/javascript" src="{U_PORTAL_ROOT_PATH}{TEMPLATE_ROOT_PATH}forum_fn.js"></script> |