codes****@googl*****
codes****@googl*****
2009年 4月 6日 (月) 11:10:30 JST
Author: tacahi Date: Sun Apr 5 18:53:02 2009 New Revision: 1439 Added: externals/geeklog-1.5.2sr2/public_html/javascript/ externals/geeklog-1.5.2sr2/public_html/javascript/advanced_editor.js externals/geeklog-1.5.2sr2/public_html/javascript/common.js externals/geeklog-1.5.2sr2/public_html/javascript/configmanager.js externals/geeklog-1.5.2sr2/public_html/javascript/moveusers.js externals/geeklog-1.5.2sr2/public_html/javascript/profile_editor.js externals/geeklog-1.5.2sr2/public_html/javascript/staticpages_fckeditor.js externals/geeklog-1.5.2sr2/public_html/javascript/storyeditor_fckeditor.js externals/geeklog-1.5.2sr2/public_html/javascript/submitcomment_fckeditor.js externals/geeklog-1.5.2sr2/public_html/javascript/submitstory_fckeditor.js Log: Geeklog 1.5.2sr1を externals/geeklog-1.5.2sr2 に取り込みます。 Added: externals/geeklog-1.5.2sr2/public_html/javascript/advanced_editor.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/advanced_editor.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,107 @@ +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2003,2004,2005,2006 by the following authors: | +// | Version 1.1 Date: Jun 4, 2006 | +// | Authors: Blaine Lang - blain****@porta***** | +// | | +// | Javascript functions for Geeklog Advanced Editor | +// | | +// +---------------------------------------------------------------------------+ + + + function enablearchive(obj) { + var f = obj.form; // all elements have their parent form in "form" + var disable = obj.checked; // Disable when checked + if (f.elements["archiveflag"].checked==true && f.elements["storycode11"].checked==false) { + f.elements["storycode10"].checked=true; + } + f.elements["storycode10"].disabled=!disable; + f.elements["storycode11"].disabled=!disable; + f.elements["expire_month"].disabled=!disable; + f.elements["expire_day"].disabled=!disable; + f.elements["expire_year"].disabled=!disable; + f.elements["expire_hour"].disabled=!disable; + f.elements["expire_minute"].disabled=!disable; + f.elements["expire_ampm"].disabled=!disable; + } + + function showhideEditorDiv(option,selindex) { + var obj = document.getElementById('adveditor'); + var divarray = new Array('publish','images','archive','perms','options','bottom'); + + // Reset the current selected navbar tab + var navbar = document.getElementById('current'); + if (navbar) navbar.id = ''; + // Cycle thru the navlist child elements - buiding an array of just the link items + var navbar = document.getElementById('navlist'); + var menuitems = new Array(8); + var item = 0; + for (var i=0 ;i < navbar.childNodes.length ; i++ ) { + if (navbar.childNodes[i].nodeName.toLowerCase() == 'li') { + menuitems[item] = navbar.childNodes[i]; + item++; + } + } + // Now that I have just the link items I can set the selected tab using the passed selected Item number + // Set the <a tag to have an id called 'current' + var menuitem = menuitems[selindex]; + for (var j=0 ;j < menuitem.childNodes.length ; j++ ) { + if (menuitem.childNodes[j].nodeName.toLowerCase() == 'a') menuitem.childNodes[j].id = 'current'; + } + + // Reset or show all the main divs - editor tab sections + for (i=0; i < divarray.length; i++) { + div = 'se_' + divarray[i]; + if (option != 'all' && option != divarray[i]) { + document.getElementById(div).style.display = 'none'; + } else { + document.getElementById(div).style.display = ''; + } + } + document.getElementById('text_editor').style.display = 'none'; + document.getElementById('html_editor').style.display = 'none'; + document.getElementById('preview').style.display = 'none'; + + if (option == 'editor' || option == 'all') { + document.getElementById('editor_mode').style.display = ''; + document.getElementById('se_bottom').style.display = ''; + if (document.getElementById('sel_editmode').value == 'adveditor') { + document.getElementById('text_editor').style.display = 'none'; + document.getElementById('html_editor').style.display = ''; + } else { + document.getElementById('text_editor').style.display = ''; + document.getElementById('html_editor').style.display = 'none'; + } + if (option == 'all') { + document.getElementById('se_options').style.display = ''; + document.getElementById('preview').style.display = ''; + } + + } else if (option == 'preview') { + document.getElementById('preview').style.display = ''; + document.getElementById('editor_mode').style.display = 'none'; + } else { + document.getElementById('se_options').style.display = ''; + document.getElementById('se_bottom').style.display = ''; + document.getElementById('text_editor').style.display = 'none'; + document.getElementById('html_editor').style.display = 'none'; + document.getElementById('editor_mode').style.display = 'none'; + document.getElementById('preview').style.display = 'none'; + } + + } + + /* Enable if you want to have toolbar only auto-collapse when not editing in field */ + /* + function FCKeditor_OnComplete( editorInstance ) { + editorInstance.Events.AttachEvent( 'OnBlur' , FCKeditor_OnBlur ) ; + editorInstance.Events.AttachEvent( 'OnFocus', FCKeditor_OnFocus ) ; + } + + function FCKeditor_OnBlur( editorInstance ) { + editorInstance.ToolbarSet.Collapse() ; + } + + function FCKeditor_OnFocus( editorInstance ) { + editorInstance.ToolbarSet.Expand() ; + } + */ Added: externals/geeklog-1.5.2sr2/public_html/javascript/common.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/common.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,73 @@ +/* Reminder: always indent with 4 spaces (no tabs). */ +// +---------------------------------------------------------------------------+ +// | Geeklog 1.3 | +// +---------------------------------------------------------------------------+ +// | Commmon javascript functions | +// | | +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2005,2006 by the following authors: | +// | | +// | Blaine Lang - blain****@porta***** | +// +---------------------------------------------------------------------------+ +// | | +// | This program 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. | +// | | +// | This program is distributed in the hope that it will be useful, | +// | but WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | +// | GNU General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software Foundation, | +// | Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | +// | | +// +---------------------------------------------------------------------------+ + +// ------------------------------------------------------------------- +// caItems(form object) +// Check All Items - generic function that can be used to check and un-check all items in a list +// Used in the Admin Lists - like on the moderation page +// ------------------------------------------------------------------- + function caItems(f) { + var n=f.elements.length; + for (i=0;i<n; i++) { + var field=f.elements[i]; + if (field.type == 'checkbox' && field.name.match("delitem")) { + if (f.chk_selectall.checked) { + field.checked=true; + } else { + field.checked=false; + } + } + + } + } + + + + +// Basic function to show/hide (toggle) an element - pass in the elment id + function elementToggle(id) { + var obj = document.getElementById(id); + if (obj.style.display == 'none') { + obj.style.display = ''; + } else { + obj.style.display = 'none'; + } + } + +// Basic function to show/hide an element - pass in the elment id and option. +// Where option can be: show or hide or toggle + function elementShowHide(id,option) { + var obj = document.getElementById(id); + if (option == 'hide') { + obj.style.display = 'none'; + } else if (option == 'show') { + obj.style.display = ''; + } else if (option == 'toggle') { + elementToggle(id); + } + } \ No newline at end of file Added: externals/geeklog-1.5.2sr2/public_html/javascript/configmanager.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/configmanager.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,194 @@ +/* Reminder: always indent with 4 spaces (no tabs). */ +// +---------------------------------------------------------------------------+ +// | Geeklog 1.5 | +// +---------------------------------------------------------------------------+ +// | javascript functions to support the online configuration manager | +// | | +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2005,2006 by the following authors: | +// | | +// | Authors: Aaron Blankstein - kantai AT gmail DOT com | +// +---------------------------------------------------------------------------+ +// | | +// | This program 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. | +// | | +// | This program is distributed in the hope that it will be useful, | +// | but WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | +// | GNU General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software Foundation, | +// | Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | +// | | +// +---------------------------------------------------------------------------+ + +function handleAdd(self, array_type, array_name){ + if(array_type.charAt(0) == "*"){ + handleAddWithName(self, array_type, array_name, self.nextSibling.value); + }else{ + handleAddWithName(self, array_type, array_name, self.parentNode.parentNode.parentNode.rows.length - 1); + } +} + +function handleAddWithName(self, array_type, array_name, name){ + array_type = array_type.substring(1); + if(array_type.charAt(0) == "*" || array_type.charAt(0) == "%"){ + add_array(self.parentNode.parentNode.parentNode, array_name, name, (array_type.charAt(0) == "*"), array_type, '1'); + }else if(array_type == "text"){ + add_element(self.parentNode.parentNode.parentNode, array_name, name, 'text', '', '1'); + }else if(array_type == "placeholder"){ + add_element(self.parentNode.parentNode.parentNode, array_name, name, 'hidden', '1', '1'); + } +} + +function add_element(tbl, arr_name, index, disp_type, def_val, deletable){ + var newRow = tbl.insertRow(tbl.rows.length - 1); + titleCell = newRow.insertCell(0); + paramCell = newRow.insertCell(1); + titleCell.className = "alignright"; + titleCell.appendChild(document.createTextNode(index)); + inputBox = document.createElement("input"); + inputBox.type = disp_type; + inputBox.name = arr_name + "[" + index + "]"; + inputBox.value = def_val; + paramCell.appendChild(inputBox); + if(deletable){ + deleteButton = document.createElement("input"); + deleteButton.type = "button"; + deleteButton.value = "x"; + deleteButton.onclick = + function(){ + remove(this) + }; + paramCell.appendChild(deleteButton); + } +} + +function gl_cfg_remove(self){ + cell = self.parentNode.parentNode; + cell.parentNode.removeChild(cell); +} + +function add_array(tbl, arr_name, arr_index, key_names, arr_type, deletable){ + var newRow = tbl.insertRow(tbl.rows.length - 1); + labelCell = newRow.insertCell(0); + arrayCell = newRow.insertCell(1); + + labelCell.appendChild(document.createTextNode(arr_index)); + labelCell.className = "alignright"; + + arrLink = document.createElement("input"); + arrLink.type = "button"; + arrLink.onclick = + function(){ + hide_show_tbl(selectChildByID(this.parentNode, 'arr_table'), this); + }; + arrLink.value = "+"; + arrayCell.appendChild(arrLink); + + ele_place_holder = document.createElement("input"); + ele_place_holder.type = "hidden"; + ele_place_holder.name = arr_name + "[" + arr_index + "][placeholder]"; + ele_place_holder.value = "true"; + arrayCell.appendChild(ele_place_holder); + + arrayCell.appendChild(document.createTextNode(" ")); + + if(deletable){ + deleteButton = document.createElement("input"); + deleteButton.type = "button"; + deleteButton.value = "x"; + deleteButton.onclick = function(){ + remove(this); + }; + arrayCell.appendChild(deleteButton); + } + + arrTable = document.createElement("table"); + arrTable.style.display = "none"; + arrTable.id = "arr_table"; + + + add_ele_cell = arrTable.insertRow(0).insertCell(0); + add_ele_cell.colspan = 2; + add_ele_press = document.createElement("input"); + add_ele_press.type = "button"; + add_ele_press.value = "Add Element"; + if(! key_names){ + add_ele_press.onclick=function(){ + handleAdd(this, arr_type, arr_name + "[" + arr_index + "]"); + }; + add_ele_cell.appendChild(add_ele_press); + }else{ + add_ele_press.onclick=function(){ + handleAdd(this, arr_type, arr_name + "[" + arr_index + "]"); + }; + add_ele_cell.appendChild(add_ele_press); + arr_index_box = document.createElement("input"); + arr_index_box.type = "text"; + arr_index_box.style.width = "65px"; + add_ele_cell.appendChild(arr_index_box); + } + + arrayCell.appendChild(arrTable); + +} + +function hide_show_tbl(tbl, button){ + tbl.style.display = (tbl.style.display != 'none' ? 'none' : '' ); + button.value = (button.value != '+' ? '+' : '-' ); +} + +function open_group(group_var){ + document.group.conf_group.value = group_var; + document.group.submit(); +} + +function open_subgroup(group_var,sg_var){ + document.group.conf_group.value = group_var; + document.group.subgroup.value = sg_var; + document.group.submit(); +} + +function selectChildByID(parent, ID){ + for(i=0; i < parent.childNodes.length; i++){ + child = parent.childNodes[i]; + if(child.id == ID){ + return child; + } + } +} + +function restore(param){ + document.group.subgroup.value = document.subgroup.sub_group.value; + action = document.createElement("INPUT"); + action.setAttribute("value", "restore"); + action.setAttribute("name", "set_action"); + action.setAttribute("type", "hidden"); + namev = document.createElement("INPUT"); + namev.setAttribute("value", param); + namev.setAttribute("type", "hidden"); + namev.setAttribute("name", "name"); + document.group.appendChild(namev); + document.group.appendChild(action); + document.group.submit(); +} + +function unset(param){ + document.group.subgroup.value = document.subgroup.sub_group.value; + action = document.createElement("INPUT"); + action.setAttribute("value", "unset"); + action.setAttribute("name", "set_action"); + action.setAttribute("type", "hidden"); + namev = document.createElement("INPUT"); + namev.setAttribute("value", param); + namev.setAttribute("type", "hidden"); + namev.setAttribute("name", "name"); + document.group.appendChild(namev); + document.group.appendChild(action); + document.group.submit(); +} \ No newline at end of file Added: externals/geeklog-1.5.2sr2/public_html/javascript/moveusers.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/moveusers.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,120 @@ +/* Reminder: always indent with 4 spaces (no tabs). */ +// +---------------------------------------------------------------------------+ +// | Geeklog 1.3 | +// +---------------------------------------------------------------------------+ +// | Set of javascript functions to support the user-move feature | +// | where two selectboxes are presented | +// | | +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2003,2004 by the following authors: | +// | | +// | Authors: Matt Kruse - matt****@mattk***** | +// | Blaine Lang - blain****@porta***** | +// +---------------------------------------------------------------------------+ +// | | +// | This program 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. | +// | | +// | This program is distributed in the hope that it will be useful, | +// | but WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | +// | GNU General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software Foundation, | +// | Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | +// | | +// +---------------------------------------------------------------------------+ + + +// ------------------------------------------------------------------- +// setUsers(select_form) +// Used in the Group Admin function to edit the list of included site members +// Used to set a hidden form variable to the result of all the values in the source selectbox +// ------------------------------------------------------------------- +function setUsers(f) { + var destVals = new Array(), opt = 0, separator = "|", d = f.fieldTo; + while (d[opt]) + destVals[opt] = d[opt++].value; + if(d[opt] > 1) { + f.groupmembers.value = separator + destVals.join(separator); + } else { + f.groupmembers.value = destVals.join(separator); + } + return true; +} + +// ------------------------------------------------------------------- +// sortSelect(select_object) +// Pass this function a SELECT object and the options will be sorted +// by their text (display) values +// ------------------------------------------------------------------- +function sortSelect(obj) { + var o = new Array(); + if (obj.options==null) { return; } + for (var i=0; i<obj.options.length; i++) { + o[o.length] = new Option( obj.options[i].text, obj.options[i].value, obj.options[i].defaultSelected, obj.options[i].selected) ; + } + if (o.length==0) { return; } + o = o.sort( + function(a,b) { + if ((a.text+"") < (b.text+"")) { return -1; } + if ((a.text+"") > (b.text+"")) { return 1; } + return 0; + } + ); + + for (var i=0; i<o.length; i++) { + obj.options[i] = new Option(o[i].text, o[i].value, o[i].defaultSelected, o[i].selected); + } + } + +// ------------------------------------------------------------------- +// moveSelectedOptions(select_object,select_object[,autosort(true/false)[,regex]]) +// This function moves options between select boxes. Works best with +// multi-select boxes to create the common Windows control effect. +// Passes all selected values from the first object to the second +// object and re-sorts each box. +// If a third argument of 'false' is passed, then the lists are not +// sorted after the move. +// If a fourth string argument is passed, this will function as a +// Regular Expression to match against the TEXT or the options. If +// the text of an option matches the pattern, it will NOT be moved. +// It will be treated as an unmoveable option. +// You can also put this into the <SELECT> object as follows: +// onDblClick="moveSelectedOptions(this,this.form.target) +// This way, when the user double-clicks on a value in one box, it +// will be transferred to the other (in browsers that support the +// onDblClick() event handler). +// ------------------------------------------------------------------- +function moveSelectedOptions(from,to) { + // Unselect matching options, if required + if (arguments.length>3) { + var regex = arguments[3]; + if (regex != "") { + unSelectMatchingOptions(from,regex); + } + } + // Move them over + for (var i=0; i<from.options.length; i++) { + var o = from.options[i]; + if (o.selected) { + to.options[to.options.length] = new Option( o.text, o.value, false, false); + } + } + // Delete them from original + for (var i=(from.options.length-1); i>=0; i--) { + var o = from.options[i]; + if (o.selected) { + from.options[i] = null; + } + } + if ((arguments.length<3) || (arguments[2]==true)) { + sortSelect(from); + sortSelect(to); + } + from.selectedIndex = -1; + to.selectedIndex = -1; + } \ No newline at end of file Added: externals/geeklog-1.5.2sr2/public_html/javascript/profile_editor.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/profile_editor.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,57 @@ +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2003,2004,2005,2006 by the following authors: | +// | Version 1.0 Date: Jun 24, 2006 | +// | Authors: Blaine Lang - blain****@porta***** | +// | | +// | Javascript functions for Account Profile Editor | +// | | +// +---------------------------------------------------------------------------+ + +// @param string selected Name of div that has been selected +// @param int selindex index id of the selected tab as in 1 - 7 used to set the selected tab +function showhideProfileEditorDiv(selected, selindex) { + + // Reset the current selected navbar tab + var cnavbar = document.getElementById('current'); + if (cnavbar) cnavbar.id = ''; + + // Cycle thru the navlist child elements - buiding an array of just the link items + var navbar = document.getElementById('navlist'); + var menuitems = new Array(7); + var item = 0; + for (var i=0 ;i < navbar.childNodes.length ; i++ ) { + if (navbar.childNodes[i].nodeName.toLowerCase() == 'li') { + menuitems[item] = navbar.childNodes[i]; + item++; + } + } + // Now that I have just the link items I can set the selected tab using the passed selected Item number + // Set the <a tag to have an id called 'current' + var menuitem = menuitems[selindex]; + for (var j=0 ;j < menuitem.childNodes.length ; j++ ) { + if (menuitem.childNodes[j].nodeName.toLowerCase() == 'a') menuitem.childNodes[j].id = 'current'; + } + + // Reset or show all the main divs - editor tab sections + // Object profilepanels defined in profile.thtml after page is generated + for( var divid in profilepanels){ + if (selected != divid) { + document.getElementById(divid).style.display = 'none'; + } else { + document.getElementById(divid).style.display = ''; + } + } + + document.getElementById('pe_preview').style.display = 'none'; + + if (selected != 'pe_preview') { + document.getElementById('save_button').style.display = ''; + } else if (selected == 'pe_preview') { + document.getElementById('pe_preview').style.display = ''; + document.getElementById('save_button').style.display = 'none'; + } else { + document.getElementById('pe_preview').style.display = ''; + document.getElementById('save_button').style.display = 'none'; + } + +} Added: externals/geeklog-1.5.2sr2/public_html/javascript/staticpages_fckeditor.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/staticpages_fckeditor.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,58 @@ +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2003,2004 by the following authors: | +// | Version 1.0 Date: Jun 4, 2005 | +// | Authors: Blaine Lang - blain****@porta***** | +// | | +// | Javascript functions for FCKEditor Integration into Geeklog | +// | | +// +---------------------------------------------------------------------------+ + + + window.onload = function() { + var oFCKeditor1 = new FCKeditor( 'sp_content' ) ; + oFCKeditor1.BasePath = geeklogEditorBasePath; + oFCKeditor1.Config['CustomConfigurationsPath'] = geeklogEditorBaseUrl + '/fckeditor/myconfig.js'; + oFCKeditor1.ToolbarSet = 'editor-toolbar2' ; + oFCKeditor1.Height = 200 ; + oFCKeditor1.AutoGrowMax = 1200 + oFCKeditor1.ReplaceTextarea() ; + } + + function changeToolbar(toolbar) { + var oEditor1 = FCKeditorAPI.GetInstance('sp_content'); + oEditor1.ToolbarSet.Load( toolbar ) ; + } + + function change_editmode(obj) { + if (obj.value == 'adveditor') { + document.getElementById('advanced_editarea').style.display=''; + document.getElementById('sel_toolbar').style.display=''; + document.getElementById('html_editarea').style.display='none'; + swapEditorContent('advanced'); + } else { + document.getElementById('advanced_editarea').style.display='none'; + document.getElementById('sel_toolbar').style.display='none'; + document.getElementById('html_editarea').style.display=''; + swapEditorContent('html'); + } + } + + function swapEditorContent(curmode) { + var content = ''; + var oEditor = FCKeditorAPI.GetInstance('sp_content'); + if (curmode == 'advanced') { + content = document.getElementById('html_content').value; + oEditor.SetHTML(content); + } else { + content = oEditor.GetXHTML( true ); + document.getElementById('html_content').value = content; + } + } + + function set_postcontent() { + if (document.getElementById('sel_editmode').value == 'adveditor') { + var oEditor = FCKeditorAPI.GetInstance('sp_content'); + content = oEditor.GetXHTML( true ); + document.getElementById('html_content').value = content; + } + } Added: externals/geeklog-1.5.2sr2/public_html/javascript/storyeditor_fckeditor.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/storyeditor_fckeditor.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,114 @@ +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2003,2004,2005,2006 by the following authors: | +// | Version 1.1 Date: Jun 4, 2006 | +// | Authors: Blaine Lang - blain****@porta***** | +// | | +// | Javascript functions for FCKEditor Integration into Geeklog | +// | | +// +---------------------------------------------------------------------------+ + + window.onload = function() { + var oFCKeditor1 = new FCKeditor( 'introhtml' ) ; + oFCKeditor1.BasePath = geeklogEditorBasePath; + oFCKeditor1.Config['CustomConfigurationsPath'] = geeklogEditorBaseUrl + '/fckeditor/myconfig.js'; + oFCKeditor1.ToolbarSet = 'editor-toolbar2' ; + oFCKeditor1.Height = 200 ; + oFCKeditor1.ReplaceTextarea() ; + + var oFCKeditor2 = new FCKeditor( 'bodyhtml' ) ; + oFCKeditor2.BasePath = geeklogEditorBasePath ; + oFCKeditor2.Config['CustomConfigurationsPath'] = geeklogEditorBaseUrl + '/fckeditor/myconfig.js'; + oFCKeditor2.ToolbarSet = 'editor-toolbar2' ; + oFCKeditor2.Height = 200 ; + oFCKeditor2.ReplaceTextarea() ; + } + + function change_editmode(obj) { + if (obj.value == 'html') { + document.getElementById('html_editor').style.display='none'; + document.getElementById('text_editor').style.display=''; + swapEditorContent('html','introhtml'); + swapEditorContent('html','bodyhtml'); + } else if (obj.value == 'adveditor') { + document.getElementById('text_editor').style.display='none'; + document.getElementById('html_editor').style.display=''; + swapEditorContent('adveditor','introhtml'); + swapEditorContent('adveditor','bodyhtml'); + } else { + document.getElementById('html_editor').style.display='none'; + document.getElementById('text_editor').style.display=''; + swapEditorContent('text','introhtml'); + swapEditorContent('text','bodyhtml'); + } + } + + function changeHTMLTextAreaSize(element, option) { + var currentSize = parseInt(document.getElementById(element + '___Frame').style.height); + if (option == 'larger') { + var newsize = currentSize + 50; + } else if (option == 'smaller') { + var newsize = currentSize - 50; + } + document.getElementById(element + '___Frame').style.height = newsize + 'px'; + } + + function changeTextAreaSize(element, option) { + var size = document.getElementById(element).rows; + if (option == 'larger') { + document.getElementById(element).rows = +(size) + 3; + } else if (option == 'smaller') { + document.getElementById(element).rows = +(size) - 3; + } + } + + + function getEditorContent(instanceName) { + // Get the editor instance that we want to interact with. + var oEditor = FCKeditorAPI.GetInstance(instanceName) ; + // return the editor contents in XHTML. + var content = ''; + try { + content = oEditor.GetXHTML( true ); + } catch (e) {} + + return content; + } + + function swapEditorContent(curmode,instanceName) { + var content = ''; + var oEditor = FCKeditorAPI.GetInstance(instanceName) ; + + if (curmode == 'adveditor') { // Switching from Text to HTML mode + // Get the content from the textarea 'text' content and copy it to the editor + if (instanceName == 'introhtml' ) { + content = document.getElementById('introtext').value; + } else { + content = document.getElementById('bodytext').value; + } + try { + oEditor.SetHTML(content); + } catch (e) {} + + } else { + content = getEditorContent(instanceName); + if (instanceName == 'introhtml' ) { + document.getElementById('introtext').value = content; + } else { + document.getElementById('bodytext').value = content; + } + } + } + + function set_postcontent() { + if (document.getElementById('sel_editmode').value == 'adveditor') { + document.getElementById('introtext').value = getEditorContent('introhtml'); + document.getElementById('bodytext').value = getEditorContent('bodyhtml'); + } + } + + function changeToolbar(toolbar) { + var oEditor1 = FCKeditorAPI.GetInstance('introhtml'); + oEditor1.ToolbarSet.Load( toolbar ) ; + var oEditor2 = FCKeditorAPI.GetInstance('bodyhtml'); + oEditor2.ToolbarSet.Load( toolbar ) ; + } \ No newline at end of file Added: externals/geeklog-1.5.2sr2/public_html/javascript/submitcomment_fckeditor.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/submitcomment_fckeditor.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,54 @@ +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2003,2004 by the following authors: | +// | Version 1.0 Date: Jun 4, 2005 | +// | Authors: Blaine Lang - blain****@porta***** | +// | | +// | Javascript functions for FCKEditor Integration into Geeklog | +// | | +// +---------------------------------------------------------------------------+ + + window.onload = function() { + var oFCKeditor1 = new FCKeditor( 'comment_html' ) ; + oFCKeditor1.BasePath = geeklogEditorBasePath; + oFCKeditor1.Config['CustomConfigurationsPath'] = geeklogEditorBaseUrl + '/fckeditor/myconfig.js'; + oFCKeditor1.ToolbarSet = 'editor-toolbar1' ; + oFCKeditor1.Height = 200 ; + oFCKeditor1.ReplaceTextarea() ; + } + function change_editmode(obj) { + if (obj.value == 'html') { + document.getElementById('text_editor').style.display='none'; + document.getElementById('html_editor').style.display=''; + swapEditorContent('html'); + } else { + document.getElementById('text_editor').style.display=''; + document.getElementById('html_editor').style.display='none'; + swapEditorContent('text'); + } + } + + function getEditorContent() { + // Get the editor instance that we want to interact with. + var oEditor = FCKeditorAPI.GetInstance('comment_html') ; + // return the editor contents in XHTML. + return oEditor.GetXHTML( true ); + } + + function swapEditorContent(curmode) { + var content = ''; + var oEditor = FCKeditorAPI.GetInstance('comment_html') ; + if (curmode == 'html') { // Switching from Text to HTML mode + // Get the content from the textarea 'text' content and copy it to the editor + content = document.getElementById('comment_text').value; + oEditor.SetHTML(content); + } else { + content = getEditorContent(); + document.getElementById('comment_text').value = content; + } + } + + function set_postcontent() { + if (document.getElementById('sel_editmode').value == 'html') { + document.getElementById('comment_text').value = getEditorContent(); + } + } Added: externals/geeklog-1.5.2sr2/public_html/javascript/submitstory_fckeditor.js ============================================================================== --- (empty file) +++ externals/geeklog-1.5.2sr2/public_html/javascript/submitstory_fckeditor.js Sun Apr 5 18:53:02 2009 @@ -0,0 +1,56 @@ +// +---------------------------------------------------------------------------+ +// | Copyright (C) 2003,2004 by the following authors: | +// | Version 1.0 Date: Jun 4, 2005 | +// | Authors: Blaine Lang - blain****@porta***** | +// | | +// | Javascript functions for FCKEditor Integration into Geeklog | +// | | +// +---------------------------------------------------------------------------+ + + + window.onload = function() { + var oFCKeditor1 = new FCKeditor( 'introhtml' ) ; + oFCKeditor1.BasePath = geeklogEditorBasePath; + oFCKeditor1.Config['CustomConfigurationsPath'] = geeklogEditorBaseUrl + '/fckeditor/myconfig.js'; + oFCKeditor1.ToolbarSet = 'editor-toolbar1' ; + oFCKeditor1.Height = 200 ; + oFCKeditor1.ReplaceTextarea() ; + } + + function change_editmode(obj) { + if (obj.value == 'html') { + document.getElementById('text_editor').style.display='none'; + document.getElementById('html_editor').style.display=''; + swapEditorContent('html'); + } else { + document.getElementById('text_editor').style.display=''; + document.getElementById('html_editor').style.display='none'; + swapEditorContent('text'); + } + } + + function getEditorContent() { + // Get the editor instance that we want to interact with. + var oEditor = FCKeditorAPI.GetInstance('introhtml') ; + // return the editor contents in XHTML. + return oEditor.GetXHTML( true ); + } + + function swapEditorContent(curmode) { + var content = ''; + var oEditor = FCKeditorAPI.GetInstance('introhtml') ; + if (curmode == 'html') { // Switching from Text to HTML mode + // Get the content from the textarea 'text' content and copy it to the editor + content = document.getElementById('introtext').value; + oEditor.SetHTML(content); + } else { + content = getEditorContent(); + document.getElementById('introtext').value = content; + } + } + + function set_postcontent() { + if (document.getElementById('sel_editmode').value == 'html') { + document.getElementById('introtext').value = getEditorContent(); + } + }