[rt-users] RTFM WikiText Format Toolbar
Miguel A. Rivera Rivera
migrivera at centennialpr.com
Tue Dec 18 23:57:09 EST 2007
Wanted to integrate a simple way to format the "WikiText" Custom field in RTFM.
------------------------------------------------------------------------
Copy: /opt/rt3/share/html/Elements/EditCustomFieldWikitext to
/opt/rt3/local/html/Elements/EditCustomFieldWikitext
Edit: /opt/rt3/local/html/Elements/EditCustomFieldWikitext
Add before "% while":
% my $wiki_textarea_value = $NamePrefix .$CustomField->id .'-Values';
% my $wiki_format_toolbar = qq(
% <div>
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','bold');" style="font-weight: bold;" value="B">
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','italic');" style="font-weight: bold;" value="I">
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','bold_italic');" style="font-weight: bold;font-style: italic;" value="BI">
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','heading');" value="H1">
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','subheading');" value="H2">
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','subsubheading');" value="H3">
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','list');" value="List">
% <input type=button onclick="javascript:lbc(event,'$wiki_textarea_value','link');" value="Link">
% </div>
% );
% print $wiki_format_toolbar;
Add in both "textarea" tags:
<textarea ... id="<%$NamePrefix%><%$CustomField->Id%>-Values">...</textarea>
------------------------------------------------------------------------
Copy: /opt/rt3/share/html/RTFM/Article/Edit.html to
/opt/rt3/local/html/RTFM/Article/Edit.html
Add before "form":
<script type="text/javascript">
function lbc(e, objname, theTag) {
var el = document.getElementById(objname);
var enclosingTag;
var spaceTag = '\ ';
if(theTag == 'bold'){
startTag = '\'\'\'';
endTag = '\'\'\'';
spaceTag = '';
}
if(theTag == 'italic'){
startTag = '\'\'';
endTag = '\'\'';
spaceTag = '';
}
if(theTag == 'bold_italic'){
startTag = '\'\'\'\'\'';
endTag = '\'\'\'\'\'';
spaceTag = '';
}
if(theTag == 'heading'){
startTag = '=';
endTag = '=';
}
if(theTag == 'subheading'){
startTag = '==';
endTag = '==';
}
if(theTag == 'subsubheading'){
startTag = '=====';
endTag = '=====';
}
if(theTag == 'link'){
startTag = '[';
endTag = ']';
}
if(theTag == 'list'){
startTag = '\ \ \ \ *\ ';
endTag = '';
}
if (el.setSelectionRange) {
//Mozilla or FireFox Code
var st = el.scrollTop;
var ss = el.selectionStart;
var se = e.selectionEnd;
el.value = el.value.substring(0,el.selectionStart) + startTag + spaceTag + el.value.substring(el.selectionStart,el.selectionEnd) + spaceTag + endTag + el.value.substring(el.selectionEnd,el.value.length);
el.selectionStart = ss;
el.selectionEnd = ss;
el.scrollTop = st;
}
else if (document.selection && document.selection.createRange) {
//Internet Explorer Code
el.focus(); //Makes sure tags are being added to the textarea
var range = document.selection.createRange();
range.text = startTag + spaceTag + range.text + spaceTag + endTag; //Adds beginning and end tags.
}
el.focus();
}
</script>
------------------------------------------------------------------------
Miguel Rivera
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20071219/ca55531b/attachment.htm>
More information about the rt-users
mailing list