•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the JavaScript / DHTML / AJAX section within the Web Development category of DaniWeb, a massive community of 374,194 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 3,550 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our JavaScript / DHTML / AJAX advertiser: Lunarpages Web Hosting
Views: 828 | Replies: 3
![]() |
I want to know if its possible to over-ride a setting that is part of an included js that i dont have direct access to.
below is the js in question. the only part i want to change is in bold. can I wite a new function to switch back to 'unchecked' onload? I want it unchecked by default.
below is the js in question. the only part i want to change is in bold. can I wite a new function to switch back to 'unchecked' onload? I want it unchecked by default.
var useTabKey = 1; // 1 = enable tab-key feature / 0 = no tab-key
var tabbedMode = 1; // Default TabMode in editbox: 1 = On; 0 = Off (This option has no effect if useTabKey is != 1!)
var tspace = " "; // Convert tab to value of tspace (default is 4 spaces)
var B_open = 0;
var I_open = 0;
var U_open = 0;
var QUOTE_open = 0;
var PHP_open = 0;
var CODE_open = 0;
var SQL_open = 0;
var HTML_open = 0;
var bbtags = new Array();
// Determine browser type and stuff.
// Borrowed from http://www.mozilla.org/docs/web-developer/sniffer/browser_type.html
var myAgent = navigator.userAgent.toLowerCase();
var myVersion = parseInt(navigator.appVersion);
var is_ie = ((myAgent.indexOf("msie") != -1) && (myAgent.indexOf("opera") == -1));
var is_nav = ((myAgent.indexOf('mozilla')!=-1) && (myAgent.indexOf('spoofer')==-1)
&& (myAgent.indexOf('compatible') == -1) && (myAgent.indexOf('opera')==-1)
&& (myAgent.indexOf('webtv') ==-1) && (myAgent.indexOf('hotjava')==-1));
var is_win = ((myAgent.indexOf("win")!=-1) || (myAgent.indexOf("16bit")!=-1));
var is_mac = (myAgent.indexOf("mac")!=-1);
var dom = (document.getElementById && !document.all);
// Tab-key feature
if(useTabKey){
document.onkeypress = handleKeyEvent;
if(is_ie)
document.onkeydown = handleKeyEvent;
tabbedMode = (tabbedMode)? 2: false;
document.REPLIER.onsubmit = function() {
var rv = ValidateForm();
if(!rv) return false;
// nts = tspace.replace(/ /g, " &nsbp;");
document.REPLIER.Post.value = document.REPLIER.Post.value.replace(new RegExp(tspace, 'g'), nts);
return true;
};
// Insert mode switch box if possible
if(document.write){
var chck = (tabbedMode)? " checked='checked'": "";
document.open();
document.write("<br /><input type='checkbox' class='radiobutton' name='bbtabmode' value='1' onclick='toggleTabMode()'" + chck + " /> <b>Tab-Key Mode</b>");
document.close();
}
}
// Set the initial radio button status based on cookies
var allcookies = document.cookie;
var pos = allcookies.indexOf("bbmode=");
prep_mode();
function prep_mode()
{
if (pos != 1) {
var cstart = pos + 7;
var cend = allcookies.indexOf(";", cstart);
if (cend == -1) { cend = allcookies.length; }
cvalue = allcookies.substring(cstart, cend);
if (cvalue == 'ezmode') {
document.REPLIER.bbmode[0].checked = true;
} else {
document.REPLIER.bbmode[1].checked = true;
}
}
else {
// default to normal mode.
document.REPLIER.bbmode[1].checked = true;
}
}
function setmode(mVal)
{
document.cookie = "bbmode="+mVal+"; path=/; expires=Wed, 1 Jan 2020 00:00:00 GMT;";
}
function get_easy_mode_state()
{
// Returns true if we've chosen easy mode
return (document.REPLIER.bbmode[0].checked);
}
//--------------------------------------------
// Set the help bar status
//--------------------------------------------
function hstat(msg)
{
document.REPLIER.helpbox.value = eval( "help_" + msg );
}
// Set the number of tags open box
function cstat()
{
var c = stacksize(bbtags);
if ( (c < 1) || (c == null) ) {
c = 0;
}
if ( ! bbtags[0] ) {
c = 0;
}
document.REPLIER.tagcount.value = c;
}
//--------------------------------------------
// Get stack size
//--------------------------------------------
function stacksize(thearray)
{
for (i = 0 ; i < thearray.length; i++ ) {
if ( (thearray[i] == "") || (thearray[i] == null) || (thearray == 'undefined') ) {
return i;
}
}
return thearray.length;
}
//--------------------------------------------
// Push stack
//--------------------------------------------
function pushstack(thearray, newval)
{
arraysize = stacksize(thearray);
thearray[arraysize] = newval;
}
//--------------------------------------------
// Pop stack
//--------------------------------------------
function popstack(thearray)
{
arraysize = stacksize(thearray);
theval = thearray[arraysize - 1];
delete thearray[arraysize - 1];
return theval;
}
//--------------------------------------------
// Close all tags
//--------------------------------------------
function closeall()
{
if (bbtags[0]) {
while (bbtags[0]) {
tagRemove = popstack(bbtags)
document.REPLIER.Post.value += "[/" + tagRemove + "]";
// Change the button status
// Ensure we're not looking for FONT, SIZE or COLOR as these
// buttons don't exist, they are select lists instead.
//edited
if ( (tagRemove != 'YOUTUBE') && (tagRemove != 'GOOGLEVIDEO')&& (tagRemove != 'METACAFE') && (tagRemove != 'FONT') && (tagRemove != 'SIZE') && (tagRemove != 'COLOR') && (tagRemove != 'ALT') && (tagRemove != 'ALERT') && (tagRemove != 'ALLCAPS') && (tagRemove != 'BACKWARDS') && (tagRemove != 'BLOCKQUOTE') && (tagRemove != 'BLUR') && (tagRemove != 'BR') && (tagRemove != 'CAPITALIZE') && (tagRemove != 'CENTER') && (tagRemove != 'CITATION') && (tagRemove != 'DATE') && (tagRemove != 'DEFINITION') && (tagRemove != 'DROPSHADOW') && (tagRemove != 'FADE') && (tagRemove != 'FLIPH') && (tagRemove != 'FLIPV') && (tagRemove != 'GLOW') && (tagRemove != 'HR') && (tagRemove != 'INVERT') && (tagRemove != 'JUSTIFY') && (tagRemove != 'KEYBOARD') && (tagRemove != 'LEFT') && (tagRemove != 'MASK') && (tagRemove != 'MARQUEE') && (tagRemove != 'OVERLINE') && (tagRemove != 'P') && (tagRemove != 'RIGHT') && (tagRemove != 'SAMPLE') && (tagRemove != 'SHADOW') && (tagRemove != 'SMALLCAPS') && (tagRemove != 'SPOILER') && (tagRemove != 'SUB') && (tagRemove != 'SUP') && (tagRemove != 'TIME') && (tagRemove != 'VARIBLE') && (tagRemove != 'WAVE') && (tagRemove != 'XRAY') )
{
eval("document.REPLIER." + tagRemove + ".value = ' " + tagRemove + " '");
eval(tagRemove + "_open = 0");
}
}
}
// Ensure we got them all
document.REPLIER.tagcount.value = 0;
bbtags = new Array();
document.REPLIER.Post.focus();
}
//--------------------------------------------
// EMOTICONS
//--------------------------------------------
function emoticon(theSmilie)
{
doInsert(" " + theSmilie + " ", "", false);
}
//--------------------------------------------
// ADD CODE
//--------------------------------------------
function add_code(NewCode)
{
document.REPLIER.Post.value += NewCode;
document.REPLIER.Post.focus();
}
//--------------------------------------------
// ALTER FONT
//--------------------------------------------
function alterfont(theval, thetag)
{
if (theval == 0)
return;
if(doInsert("[" + thetag + "=" + theval + "]", "[/" + thetag + "]", true))
pushstack(bbtags, thetag);
if(document.REPLIER.ffont)
document.REPLIER.ffont.selectedIndex = 0;
if(document.REPLIER.fsize)
document.REPLIER.fsize.selectedIndex = 0;
if(document.REPLIER.fcolor)
document.REPLIER.fcolor.selectedIndex = 0;
cstat();
}
//--------------------------------------------
// Misc BBcodes -- Edited
//--------------------------------------------
function miscbbcodes(bbc)
{
if (bbc == 0)
return;
if (bbc == 'DROPSHADOW' || bbc == 'GLOW' || bbc == 'MASK' || bbc == 'SHADOW' || bbc == 'HR') {
var FoundErrors = '';
var enterCOLOR = prompt(text_enter_color, "");
if (!enterCOLOR) {
alert("Error! Please enter a color!");
document.REPLIER.fmiscbbcodes.selectedIndex = 0;
return;
}
doInsert("[" + bbc + "=" + enterCOLOR + "]", "[/" + bbc + "]", true)
pushstack(bbtags, bbc);
}
else if (bbc == 'ALIGN' || bbc == 'MARQUEE') {
var FoundErrors = '';
var enterDIR = prompt(text_enter_align, "");
if (!enterDIR) {
alert("Error! Please enter a direction!");
document.REPLIER.fmiscbbcodes.selectedIndex = 0;
return;
}
doInsert("[" + bbc + "=" + enterDIR + "]", "[/" + bbc + "]", true)
pushstack(bbtags, bbc);
}
else if (bbc == 'ALT') {
var FoundErrors = '';
var enterTXT = prompt(text_enter_text, "");
if (!enterTXT) {
alert("Error! Please enter some text!");
document.REPLIER.fmiscbbcodes.selectedIndex = 0;
return;
}
doInsert("[" + bbc + "=" + enterTXT + "]", "[/" + bbc + "]", true)
pushstack(bbtags, bbc);
}
else if (bbc == 'MEN')
{
doInsert("[ME=NAME]", "", true)
}
else if (bbc == 'MEI')
{
doInsert("[ME=ID]", "", true)
}
else if (bbc == 'MEE')
{
doInsert("[ME=EMAIL]", "", true)
}
else
{
if(doInsert("[" + bbc + "]", "[/" + bbc + "]", true))
pushstack(bbtags, bbc);
}
document.REPLIER.fmiscbbcodes.selectedIndex = 0;
cstat();
}
function do_datentime_tag(bbc) {
if (bbc == 0)
return;
if (bbc == 'DATE1')
{
doInsert("[DATE=1]", "", false)
}
else if (bbc == 'DATE2')
{
doInsert("[DATE=2]", "", false)
}
else if (bbc == 'DATE3')
{
doInsert("[DATE=3]", "", false)
}
else if (bbc == 'DATE4')
{
doInsert("[DATE=4]", "", false)
}
else if (bbc == 'TIME1')
{
doInsert("[TIME=1]", "", false)
}
else if (bbc == 'TIME2')
{
doInsert("[TIME=2]", "", false)
}
else if (bbc == 'TIME3')
{
doInsert("[TIME=3]", "", false)
}
document.REPLIER.fdatentime.selectedIndex = 0;
}
function do_search_tag(stag) {
if (stag == 0)
return;
if (stag == 'SEARCH') {
var stag = 'SEARCH.COM';
}
if (stag == 'ABOUT') {
var stag = 'ABOUT.COM';
}
if (stag == 'ASK') {
var stag = 'ASK JEEVES';
}
if (stag == 'DEFINITIONS') {
var stag = 'DEFINITION';
}
if (stag == 'GOOGLEDEFINE') {
var stag = 'GOOGLE DEFINITION';
}
if (stag == 'GOOGLEIMG') {
var stag = 'GOOGLE IMAGE';
}
if (stag == 'YAHOOIMG') {
var stag = 'YAHOO IMAGE';
}
var FoundErrors = '';
var enterURL = prompt(text_enter_url, stag+" SEARCH");
if (!enterURL) var enterURL = '';
var enterTITLE = prompt(text_enter_url_name, stag+" SEARCH: "+enterURL);
if (!enterURL) {
FoundErrors += " " + error_no_url;
}
if (!enterTITLE) {
FoundErrors += " " + error_no_title;
}
if (FoundErrors) {
alert("Error!"+FoundErrors);
return;
}
if (stag == 'SEARCH.COM') {
var stag = 'SEARCH';
}
if (stag == 'ABOUT.COM') {
var stag = 'ABOUT';
}
if (stag == 'ASK JEEVES') {
var stag = 'ASK';
}
if (stag == 'DEFINITION') {
var stag = 'DEFINITIONS';
}
if (stag == 'GOOGLE DEFINITION') {
var stag = 'GOOGLEDEFINE';
}
if (stag == 'GOOGLE IMAGE') {
var stag = 'GOOGLEIMG';
}
if (stag == 'YAHOO IMAGE') {
var stag = 'YAHOOIMG';
}
doInsert("["+stag+"="+enterURL+"]"+enterTITLE+"[/"+stag+"]", "", false);
document.REPLIER.fsearch.selectedIndex = 0;
}
//--------------------------------------------
// SIMPLE TAGS (such as B, I U, etc)
//--------------------------------------------
function simpletag(thetag)
{
var tagOpen = eval(thetag + "_open");
if ( get_easy_mode_state() )
{
inserttext = prompt(prompt_start + "\n[" + thetag + "]xxx[/" + thetag + "]");
if ( (inserttext != null) && (inserttext != "") )
{
doInsert("[" + thetag + "]" + inserttext + "[/" + thetag + "] ", "", false);
}
}
else {
if (tagOpen == 0)
{
if(doInsert("[" + thetag + "]", "[/" + thetag + "]", true))
{
eval(thetag + "_open = 1");
// Change the button status
eval("document.REPLIER." + thetag + ".value += '*'");
pushstack(bbtags, thetag);
cstat();
hstat('click_close');
}
}
else {
// Find the last occurance of the opened tag
lastindex = 0;
for (i = 0 ; i < bbtags.length; i++ )
{
if ( bbtags[i] == thetag )
{
lastindex = i;
}
}
// Close all tags opened up to that tag was opened
while (bbtags[lastindex])
{
tagRemove = popstack(bbtags);
doInsert("[/" + tagRemove + "]", "", false)
// Change the button status
if ( (tagRemove != 'FONT') && (tagRemove != 'SIZE') && (tagRemove != 'COLOR') )
{
eval("document.REPLIER." + tagRemove + ".value = '" + tagRemove + "'");
eval(tagRemove + "_open = 0");
}
}
cstat();
}
}
}
function tag_list()
{
var listvalue = "init";
var thelist = "";
while ( (listvalue != "") && (listvalue != null) )
{
listvalue = prompt(list_prompt, "");
if ( (listvalue != "") && (listvalue != null) )
{
thelist = thelist+"[*]"+listvalue+"\n";
}
}
if ( thelist != "" )
{
doInsert( "- \n" + thelist + "
\n", "", false);
}
}
function tag_url()
{
var FoundErrors = '';
var enterURL = prompt(text_enter_url, "http://");
var enterTITLE = prompt(text_enter_url_name, "My Webpage");
if (!enterURL) {
FoundErrors += " " + error_no_url;
}
if (!enterTITLE) {
FoundErrors += " " + error_no_title;
}
if (FoundErrors) {
alert("Error!"+FoundErrors);
return;
}
doInsert(""+enterTITLE+"", "", false);
}
function tag_image()
{
var FoundErrors = '';
var enterURL = prompt(text_enter_image, "http://");
if (!enterURL) {
FoundErrors += " " + error_no_url;
}
if (FoundErrors) {
alert("Error!"+FoundErrors);
return;
}
doInsert("[IMG]"+enterURL+"[/IMG]", "", false);
}
function tag_email()
{
var emailAddress = prompt(text_enter_email, "");
if (!emailAddress) {
alert(error_no_email);
return;
}
doInsert(""+emailAddress+"", "", false);
}
//--------------------------------------------
// TAG INSERT FUNCTION
//--------------------------------------------
// ibTag: opening tag
// ibClsTag: closing tag, used if we have selected text
// isSingle: true if we do not close the tag right now
// return value: true if the tag needs to be closed later
function doInsert(ibTag, ibClsTag, isSingle)
{
var isClose = false;
var sel = _getTASelection();
if(!sel)
sel = new Array('');
if(ibClsTag && sel[0].length)
ibTag += sel[0] + ibClsTag;
else if(isSingle)
isClose = true;
_insertAtSelection(sel, ibTag)
return isClose;
}
//--------------------------------------------
// KEYBOARD EVENTS
//--------------------------------------------
function handleKeyEvent(e)
{
if(!document.getElementById) return;
if(!(e = (window.event)? window.event: e)) return;
var obj_ta = document.getElementsByName('Post')[0];
if((e.target && e.target != obj_ta) || (e.srcElement && e.srcElement != obj_ta))
return;
var aK = (e.modifiers)? e.modifiers & Event.ALT_MASK: e.altKey;
var cK = (e.modifiers)? e.modifiers & Event.CONTROL_MASK: e.ctrlKey;
var sK = (e.modifiers)? e.modifiers & Event.SHIFT_MASK: e.shiftKey;
var c = (e.which)? e.which: e.keyCode;
if(c == 9){
if(tabbedMode == 2){
var rv = confirm("Do you want to indent text or move the input focus?\n"
+"You can toggle this mode later with Alt+M or the checkbox to the left.\n\n"
+"Hit 'OK' to indent or 'Cancel' to move the focus...");
tabbedMode = (rv)? false: true;
toggleTabMode();
}
if(!tabbedMode) return;
var sel = _getTASelection();
var val = _prepareTabs(sel, sK);
_insertAtSelection(sel, val);
if(dom && e.stopPropagation){
if(e.cancelable)
e.preventDefault();
e.stopPropagation();
}
else if(is_ie){
e.returnValue = false;
e.cancelBubble = true;
}
}
else if(((is_nav && c == 109) || (is_ie && c == 77)) && aK){
toggleTabMode();
}
else if(((is_nav && c == 118) || (is_ie && c == 86)) && cK){
if(!tabbedMode) return;
onTabbedBeforePaste(e);
}
}
function _prepareTabs(sel, sK)
{
var tmp;
if(!sel[0] && !sK)
return tspace;
sel[0] = sel[0].replace(/\r\n/g, "\n");
sel[0] = sel[0].replace(/\r/g, "\n");
tmp = sel[0].split("\n");
// Outdent
if(sK){
for(var i = 0; i < tmp.length; i++){
var n = 0;
while(tmp[i].charAt(0) == ' ' && n < 4){
tmp[i] = tmp[i].substring(1, tmp[i].length);
n++;
}
}
}
// Fix up
if(!tmp[tmp.length - 1]){
tmp.pop();
tmp[tmp.length - 1] += "\n";
}
else if(is_ie){
tmp[tmp.length - 1] += "\n";
}
// Return re-formatted string
return (!sK)? tspace + tmp.join("\n" + tspace): tmp.join("\n");
}
function toggleTabMode()
{
tabbedMode = (tabbedMode)? false: true;
document.REPLIER.bbtabmode.checked = (tabbedMode);
}
//--------------------------------------------
// onPaste-handler
//--------------------------------------------
function onTabbedBeforePaste(e)
{
if(!e) return;
var obj_ta = (dom)? document.getElementsByName('Post')[0]: document.all.Post;
var obj = (e.srcElement)? e.srcElement: e.target;
if(!obj || obj != obj_ta) return;
setTimeout("onTabbedAfterPaste()", 100);
}
function onTabbedAfterPaste()
{
var sel = _getTASelection();
var obj_ta = (dom)? document.getElementsByName('Post')[0]: document.all.Post;
obj_ta.value = obj_ta.value.replace(/\t/g, tspace);
obj_ta.focus();
}
//--------------------------------------------
// GENERAL INSERT FUNCTIONS
//--------------------------------------------
// sel: selection
// Gecko: Array(selected text, selection start, selection end)
// IE: Array(selected text, TextRange object)
// Other: false
// val: text to insert
function _insertAtSelection(sel, val)
{
var obj_ta = (dom)? document.getElementsByName('Post')[0]: document.all.Post;
obj_ta.focus();
if(sel.length > 2){
var txt = obj_ta.value.substring(0, sel[1]);
txt += val;
txt += obj_ta.value.substring(sel[2], obj_ta.value.length);
obj_ta.value = txt;
if(obj_ta.setSelectionRange){
sel[2] = sel[1] + val.length;
if(insertMode == 1 || !sel[0].length)
obj_ta.setSelectionRange(sel[2], sel[2]);
else
obj_ta.setSelectionRange(sel[1], sel[2]);
}
}
else if(sel.length == 2){
var len = sel[1].text.length;
sel[1].text = val;
if(insertMode != 1 && len)
sel[1].moveStart('character', -val.length);
sel[1].select();
}
else {
obj_ta.value = val;
}
obj_ta.focus();
}
// Returns a selection as described above
function _getTASelection()
{
var sel;
var obj_ta = (dom)? document.getElementsByName('Post')[0]: document.all.Post;
obj_ta.focus();
if(obj_ta.setSelectionRange){
var s = obj_ta.selectionStart;
var e = obj_ta.selectionEnd;
sel = obj_ta.value.substring(s, e);
// Cut off blank at end
if(s < e && sel.charAt(sel.length - 1) == ' '){
sel = sel.substring(0, sel.length - 1);
e--;
}
return new Array(sel, s, e);
}
else if(!dom && !window.opera && !is_mac){
sel = document.selection;
var rng = sel.createRange();
if((sel.type == "Text" || sel.type == "None") && rng != null){
rng.collapse;
// Cut off blank at end
if(rng.text.length > 1 && rng.text.charAt(rng.text.length - 1) == ' ')
rng.moveEnd('character', -1);
rng.select();
return new Array(rng.text, rng);
}
}
return new Array('');
}
Last edited by Inny : Apr 28th, 2008 at 11:24 am.
Always carry a flagon of whiskey in case of snakebite and furthermore always carry a small snake.
W. C. Fields
W. C. Fields
•
•
Join Date: Aug 2006
Location: Noida, India
Posts: 151
Reputation:
Rep Power: 2
Solved Threads: 16
![]() |
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
•
•
•
•
•
•
•
•
DaniWeb JavaScript / DHTML / AJAX Marketplace
Other Threads in the JavaScript / DHTML / AJAX Forum
- Previous Thread: .src undefined error
- Next Thread: Can Javascript Lower Search Engine Rankings?


Linear Mode