Changeset 1819


Ignore:
Timestamp:
01/07/09 18:51:40 (4 years ago)
Author:
MichaelDaum
Message:

Item71:Item5159:Item5160:Item5599:Item77:

  • support for TinyMCEPlugin wysiwyg editor
  • removed non-maintained "word" style
  • fixes for foswiki/compat
  • added settings template
  • distinguishing _restore revision_ from a normal _edit_
  • made <nop>DBCachePlugin's topic title feature optional
  • added "Show on screen" settings to easily switch off form, attachment or meta:comments (forthcoming)
  • fixed action=text
  • removing <nop>TopicTitle formfield from the "Form" tab if it is already on the "Text" tab
Location:
trunk/NatEditPlugin
Files:
3 added
2 deleted
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/NatEditPlugin/data/TWiki/NatEditPlugin.txt

    r1340 r1819  
    7777 
    7878---++ Plugin Info 
    79 Sponsored by [[http://www.trivadis.com][Trivadis AG]] & [[http://twiki.net][TWIKI.NET]] 
     79Sponsored by [[http://www.trivadis.com][Trivadis AG]]  
    8080 
    8181|  Author: | Michael Daum | 
    82 |  Copyright &copy;: | 2007-2008 Michael Daum http://michaeldaumconsulting.com | 
     82|  Copyright &copy;: | 2007-2009 Michael Daum http://michaeldaumconsulting.com | 
    8383|  License: | GPL ([[http://www.gnu.org/copyleft/gpl.html][GNU General Public License]]) | 
    84 |  Version: | v3.20 | 
     84|  Version: | v3.30 | 
    8585|  Change History: | | 
     86|  07 Jan 2009 | support for <nop>TinyMCEPlugin wysiwyg editor; \ 
     87                 removed non-maintained "word" style; \ 
     88                 fixes for foswiki/compat; \ 
     89                 added settings template; \ 
     90                 distinguishing _restore revision_ from a normal _edit_; \ 
     91                 made <nop>DBCachePlugin's topic title feature optional; \ 
     92                 added "Show on screen" settings to easily switch off form, attachment or meta:comments (forthcoming); \ 
     93                 fixed action=text; \ 
     94                 removing <nop>TopicTitle formfield from the "Form" tab if it is already on the "Text" tab | 
    8695|  18 Nov 2008 | fixing form data being nulled on preview; \ 
    8796                 using jquery to submit the data | 
     
    108117                 added bullet and numbered lists buttons & Javascript \ 
    109118                 added create Table button and Javascript \ 
    110                  work done by Sveni Dowideit [[http://DistributedINFORMATION.com][DistributedINFORMATION]] for [[http://twiki.net][TWIKI.NET]]  | 
     119                 work done by Sven Dowideit [[http://DistributedINFORMATION.com][DistributedINFORMATION]]  | 
    111120|  21 May 2007 | fixed display of toolbar buttons | 
    112121|  01 May 2007 | made natedit themable | 
     
    129138|  Perl Version: | - | 
    130139|  Plugin Home: | http://foswiki.org/Extensions/%TOPIC% | 
    131 |  Feedback: | http://foswiki.org/Extensions/%TOPIC%Dev | 
    132140 
    133141%META:FILEATTACHMENT{name="wikiringlogo40x40.png" attr="h" autoattached="1" comment="" date="1207667571" path="wikiringlogo40x40.png" size="2571" user="ProjectContributor" version="1"}% 
  • trunk/NatEditPlugin/lib/TWiki/Plugins/NatEditPlugin.pm

    r1340 r1819  
    1 # Copyright (C) 2007-2008 Michael Daum http://michaeldaumconsulting.com 
    2 # 
    3 # based on NatEditPlugin: 
    4 # Copyright (C) 2003-2008 MichaelDaum http://michaeldaumconsulting.com 
     1# Copyright (C) 2007-2009 Michael Daum http://michaeldaumconsulting.com 
    52# 
    63# This program is free software; you can redistribute it and/or 
     
    6461  unless ($skin =~ /\b(natedit)\b/) { 
    6562    $skin = "natedit,$skin"; 
    66     $TWiki::Plugins::SESSION->{prefs}->pushPreferenceValues('SESSION', { SKIN => $skin } );              
     63    my $prefs = $TWiki::Plugins::SESSION->{prefs} || $Foswiki::Plugins::SESSION->{prefs}; 
     64    $prefs->pushPreferenceValues('SESSION', { SKIN => $skin } );         
    6765  } 
    6866 
     
    289287} 
    290288 
    291  
    2922891; 
  • trunk/NatEditPlugin/lib/TWiki/Plugins/NatEditPlugin/MANIFEST

    r427 r1819  
     1data/TWiki/NatEditPlugin.txt 0644 
     2data/TWiki/NatEditPluginJSUnitTests.txt 0644 
    13data/TWiki/NatEditHelpText.txt 0644 
    2 data/TWiki/NatEditPluginJSUnitTests.txt 0644 
    3 data/TWiki/NatEditPlugin.txt 0644 
    44data/TWiki/NatEditWordHelpText.txt 0644 
    55lib/TWiki/Plugins/NatEditPlugin.pm 0644 
     
    3131templates/preview.natedit.tmpl 0644 
    3232templates/previewtoolbar.natedit.tmpl 0644 
     33templates/settings.natedit.tmpl 0644 
     34templates/edittext.natedit.tmpl 0644 
     35templates/settingstoolbar.natedit.tmpl 0644 
  • trunk/NatEditPlugin/lib/TWiki/Plugins/NatEditPlugin/build.pl

    r1065 r1819  
    66} 
    77 
    8 use TWiki::Contrib::Build; 
    9 $build = new TWiki::Contrib::Build( 'NatEditPlugin' ); 
     8use Foswiki::Contrib::Build; 
     9$build = new Foswiki::Contrib::Build( 'NatEditPlugin' ); 
    1010$build->build($build->{target}); 
    1111 
  • trunk/NatEditPlugin/pub/TWiki/NatEditPlugin/edit.js

    r776 r1819  
    44 
    55function submitEditForm(script, action) { 
    6   $("#savearea").val($("#topic").val()); 
    7   $(".natEditBottomBar a").each(function () { 
    8     this.blur(); 
    9   }); 
     6  var topicText = $("#topic").val(); 
     7  $("#savearea").val(topicText); 
    108  if (typeof(beforeSubmitHandler) != 'undefined') { 
    119    beforeSubmitHandler(script, action); 
     
    2624 
    2725$(function() { 
    28   window.setTimeout(function() { 
    29     var foundMce = $(".mceEditor").length; 
    30     if (foundMce) { 
    31       $(".natEditToolBar").hide(); 
    32     } 
    33     /* 
    34     if (TWikiTiny) { 
    35       TWikiTiny['switchToRaw'] = function (inst) { 
    36         alert("switch to raw"); 
    37         TWikiTiny.switchToRaw(inst); 
    38         $(".natEditToolBar").show(); 
    39       }; 
    40       alert("switchtoraw="+TWikiTiny['switchToRaw']); 
    41     } 
    42     */ 
    43   }, 1); 
     26    window.setTimeout(function() { 
     27      if (typeof(TWikiTiny) != 'undefined' || typeof(FoswikiTiny) != 'undefined') { 
     28        $(".natEditToolBar").hide(); /* switch off natedit toolbar */ 
     29 
     30        /* 
     31        var oldSwitchToRaw = TWikiTiny.switchToRaw; 
     32        TWikiTiny.switchToRaw = function(inst) { 
     33          $(".natEditToolBar").show(); 
     34          oldSwitchToRaw(inst); 
     35        }; 
     36 
     37        TWikiTiny['switchToRaw'] = function (inst) { 
     38          alert("switch to raw"); 
     39          TWikiTiny.switchToRaw(inst); 
     40          $(".natEditToolBar").show(); 
     41        }; 
     42        */ 
     43      } 
     44    }, 1); 
    4445}); 
  • trunk/NatEditPlugin/pub/TWiki/NatEditPlugin/jquery.natedit.js

    r582 r1819  
    11/* 
    2  * jQuery NatEdit plugin 1.1 
     2 * jQuery NatEdit plugin 1.2 
    33 * 
    4  * Copyright (c) 2008 Michael Daum http://michaeldaumconsulting.com 
     4 * Copyright (c) 2008-2009 Michael Daum http://michaeldaumconsulting.com 
    55 * 
    66 * Dual licensed under the MIT and GPL licenses: 
     
    642642  if (foundNatEdit) { 
    643643    var savetext = $("#savearea").val(); 
    644     if (savetext) { 
     644    if (savetext.length) { 
    645645      $("#topic").val(savetext); 
    646646    } 
  • trunk/NatEditPlugin/pub/TWiki/NatEditPlugin/styles.css

    r1194 r1819  
    1515.natEditTextArea { 
    1616  _width:99% !important; /* bloddy IE */ 
    17   font-family:"Bitstream Vera Sans Mono", "Andale Mono", Courier, monospace; 
     17  font-family:"Bitstream Vera Sans Mono", "Andale Mono", monospace; 
    1818  font-size:12px; 
    1919} 
     
    7373} 
    7474 
     75.foswikiForm, 
    7576.twikiForm { 
    7677  clear:both; 
     
    9394 
    9495/* pattern skin tweaks */ 
     96.patternPreviewPage .patternTopic, 
    9597.patternPreviewPage .foswikiTopic, 
     98.patternEditPage .patternTopic, 
    9699.patternEditPage .foswikiTopic { 
    97100  margin:0px; 
    98101} 
     102.patternEditPage .foswikiForm, 
    99103.patternEditPage .twikiForm { 
    100104  margin:0px; 
  • trunk/NatEditPlugin/templates/edit.natedit.tmpl

    r1340 r1819  
    44%TMPL:INCLUDE{"edithelp"}%<!-- edithelp// --> 
    55 
    6 %TMPL:DEF{"titleaction"}%%MAKETEXT{"(edit)"}% %TMPL:END% 
     6%TMPL:DEF{"titleaction"}%(%IF{"defined 'rev'" then="%MAKETEXT{"restore"}%" else="%MAKETEXT{"edit"}%"}%)%TMPL:END% 
    77%TMPL:DEF{"pagetitlestylewrapper"}%<!-- backwards compatibility -->%TMPL:END% 
    8 %TMPL:DEF{"contenttitle"}%<h1 class="patternTemplateTitle">%TMPL:P{"pagetitle"}%</h1>%TMPL:END% 
     8%TMPL:DEF{"contenttitle"}%<h1 class="patternTemplateTitle">[[%WEB%.%TOPIC%][%TOPIC%]] (%IF{"defined 'rev'" then="%MAKETEXT{"restore"}%" else="%IF{"istopic '%WEB%.%TOPIC%'" then="%MAKETEXT{"edit"}%" else="%MAKETEXT{"new"}%"}%"}%)</h1>%TMPL:END% 
     9 
     10%TMPL:DEF{"gettopictitle"}%%TMPL:P{context="DBCachePluginEnabled" then="gettopictitle_dbcache" else="gettopictitle_default"}%%TMPL:END% 
     11%TMPL:DEF{"gettopictitle_default"}%%IF{"defined 'TOPICTITLE'" then="%TOPICTITLE%" else=""}%%TMPL:END% 
     12%TMPL:DEF{"gettopictitle_dbcache"}%%GETTOPICTITLE{encode="entity" default=""}%%TMPL:END% 
    913 
    1014%TMPL:DEF{"content"}%<!-- content --> 
     
    4448 
    4549%TMPL:DEF{"textarea"}%<!-- textarea --> 
    46 <textarea id="topic" class="foswikiTextarea natEditTextArea natedit" name="text" style="width:99%" rows="22" cols="70">%TEXT%</textarea> 
     50<textarea id="topic" class="twikiTextarea foswikiTextarea foswikiWysiwygEdit natEditTextArea natedit" name="text" style="width:99%" rows="22" cols="70">%TEXT%</textarea> 
    4751<!-- //textarea -->%TMPL:END% 
    4852 
     
    7175  <tr class="natEditTopicTitle"> 
    7276    <th>Title:</th> 
    73     <td><input class="twikiInputField" type="text" name="TopicTitle" size="80" value="%URLPARAM{"TopicTitle" default="%GETTOPICTITLE{encode="entity" default=""}%"}%" /></td> 
     77    <td><input class="twikiInputField" type="text" name="TopicTitle" size="80" value="%URLPARAM{"TopicTitle" default="%TMPL:P{"gettopictitle"}%"}%" /></td> 
    7478  </tr> 
    7579  </table> 
     
    9599 
    96100%TMPL:DEF{"settings"}%<!-- settings --> 
    97 <b><label for="parent">%MAKETEXT{"Parent topic"}%:</b></label> 
    98 <input class="twikiInputField" type="text" id="parent" name="topicparent" size="40" value="%TOPICPARENT%" /> 
     101<div class="twikiFormSteps foswikiFormSteps"> 
     102  <h2>Topic preferences:</h2> 
     103  <div class="twikiFormStep foswikiFormStep twikiFormLast"> 
     104    <h3>%MAKETEXT{"Parent topic"}%:</h3> 
     105    <input class="twikiInputField" type="text" name="topicparent" size="40" value="%TOPICPARENT%" /> 
     106  </div> 
     107</div> 
     108<div class="twikiFormSteps foswikiFormSteps"> 
     109  <h2>Show on screen:</h2> 
     110  <div class="twikiFormStep foswikiFormStep twikiFormLast"> 
     111    <label><input type="checkbox" class="twikiRadio foswikiRadio" name="Local+DISPLAYFORM" value="%IF{"'%VAR{"DISPLAYFORM"}%'='off'" then="on"}%" %IF{"$'DISPLAYFORM'='on' OR NOT defined 'DISPLAYFORM'" then="checked"}% />%MAKETEXT{"Data form"}%</label> 
     112    <input type="hidden" name="Local+DISPLAYFORM" value="%IF{"'%VAR{"DISPLAYFORM"}%'='off'" else="off"}%" /> 
     113 
     114    <label><input type="checkbox" class="twikiRadio foswikiRadio" name="Local+DISPLAYATTACHMENTS" value="%IF{"'%VAR{"DISPLAYATTACHMENTS"}%'='off'" then="on"}%" %IF{"$'DISPLAYATTACHMENTS'='on' OR NOT defined 'DISPLAYATTACHMENTS'" then="checked"}% />%MAKETEXT{"Attachments"}%</label> 
     115    <input type="hidden" name="Local+DISPLAYATTACHMENTS" value="%IF{"'%VAR{"DISPLAYATTACHMENTS"}%'='off'" else="off"}%" /> 
     116 
     117    <label><input type="checkbox" class="twikiRadio foswikiRadio" name="Local+DISPLAYCOMMENTS" value="%IF{"'%VAR{"DISPLAYCOMMENTS"}%'='off'" then="on"}%" %IF{"$'DISPLAYCOMMENTS'='on' OR NOT defined 'DISPLAYCOMMENTS'" then="checked"}% />%MAKETEXT{"Comments"}%</label> 
     118    <input type="hidden" name="Local+DISPLAYCOMMENTS" value="%IF{"'%VAR{"DISPLAYCOMMENTS"}%'='off'" else="off"}%" /> 
     119  </div> 
     120</div> 
     121 
    99122<!-- //settings -->%TMPL:END% 
    100123 
  • trunk/NatEditPlugin/templates/editjavascript.natedit.tmpl

    r1340 r1819  
     1%TMPL:INCLUDE{"editjavascript"}%<!-- template: editjavascript.natedit.tmpl --> 
     2%TMPL:DEF{"editjavascript"}%<!-- editjavascript --> 
     3<script type="text/javascript"> 
     4$(function() { 
     5  /* remove the second TopicTitle */ 
     6  $("[name='TopicTitle']:eq(1)").parents(".twikiFormStep").remove(); 
     7}); 
     8</script> 
     9<!-- //editjavascript -->%TMPL:END% 
     10%TMPL:DEF{"javascript"}%%TMPL:P{"defaultjavascript"}%%TMPL:P{"editjavascript"}%%TMPL:END% 
  • trunk/NatEditPlugin/templates/edittoolbar.natedit.tmpl

    r1340 r1819  
    1313</div> 
    1414<!-- //bottomtopicactions -->%TMPL:END% 
    15 %TMPL:DEF{"savebutton"}%<li class="natEditSaveButton">%BUTTON{"%MAKETEXT{"Save"}%" title="%MAKETEXT{"Save and exit"}%" icon="tick" id="save" accesskey="s" onclick="submitEditForm('save', 'save')"}%</li>%TMPL:END% 
    16 %TMPL:DEF{"checkpointbutton"}%<li class="natEditCheckpointButton">%BUTTON{"%MAKETEXT{"Save and Continue"}%" title="%MAKETEXT{"Save and continue editing"}%" icon="disk" id="checkpoint" accesskey="w" onclick="submitEditForm('save', 'checkpoint')"}%</li>%TMPL:END% 
     15%TMPL:DEF{"savebutton"}%<li class="natEditSaveButton">%IF{"defined 'rev'"  
     16  then="$percntBUTTON{\"%MAKETEXT{"Restore"}%\" title=\"%MAKETEXT{"Restore and exit"}%\" icon=\"arrow_undo\" id=\"save\" accesskey=\"r\" onclick=\"submitEditForm('save', 'save')\"}$percnt" 
     17  else="$percntBUTTON{\"%MAKETEXT{"Save"}%\" title=\"%MAKETEXT{"Save and exit"}%\" icon=\"tick\" id=\"save\" accesskey=\"s\" onclick=\"submitEditForm('save', 'save')\"}$percnt" 
     18}%</li>%TMPL:END% 
     19%TMPL:DEF{"checkpointbutton"}%<li class="natEditCheckpointButton">%IF{"defined 'rev'" 
     20  then="$percntBUTTON{\"%MAKETEXT{"Restore and Continue"}%\" title=\"%MAKETEXT{"Restore and continue editing"}%\" icon=\"disk\" id=\"checkpoint\" accesskey=\"w\" onclick=\"submitEditForm('save', 'checkpoint')\"}$percnt" 
     21  else="$percntBUTTON{\"%MAKETEXT{"Save and Continue"}%\" title=\"%MAKETEXT{"Save and continue editing"}%\" icon=\"disk\" id=\"checkpoint\" accesskey=\"w\" onclick=\"submitEditForm('save', 'checkpoint')\"}$percnt" 
     22}%</li>%TMPL:END% 
    1723%TMPL:DEF{"previewbutton"}%<li class="natEditPreviewButton">%BUTTON{"%MAKETEXT{"Preview"}%" title="%MAKETEXT{"Preview your changes"}%" icon="eye" id="preview" accesskey="p" onclick="submitEditForm('preview', 'preview')"}%</li>%TMPL:END% 
    1824%TMPL:DEF{"cancelbutton"}%<li class="natEditCancelButton">%BUTTON{"%MAKETEXT{"Cancel"}%" title="%MAKETEXT{"Abandon changes and exit"}%" icon="cross" id="cancel" accesskey="c" onclick="submitEditForm('save', 'cancel')"}% </li>%TMPL:END% 
  • trunk/NatEditPlugin/templates/form.natedit.tmpl

    r1340 r1819  
    22%TMPL:DEF{"titleaction"}%%MAKETEXT{"(edit)"}% %TMPL:END% 
    33 
    4 %TMPL:DEF{"mandatory"}%<div class='twikiFormLegend' id="twikiFormMandatory"><span class="twikiAlert">*</span> %MAKETEXT{"indicates mandatory fields"}% </div>%TMPL:END% 
     4%TMPL:DEF{"mandatory"}%<div class='twikiFormLegend' id="twikiFormMandatory"><span class="foswikiAlert twikiAlert">*</span> %MAKETEXT{"indicates mandatory fields"}% </div>%TMPL:END% 
    55 
    66%TMPL:DEF{"repeatedformrows"}% %REPEAT% 
  • trunk/NatEditPlugin/templates/preview.natedit.tmpl

    r1340 r1819  
    88<div class="patternPreviewArea"> 
    99<div class="patternContent"> 
    10 <div class="foswikiTopic"> 
     10<div class="patternTopic foswikiTopic"> 
    1111%TEXT% 
    1212</div> 
  • trunk/NatEditPlugin/templates/previewtoolbar.natedit.tmpl

    r1340 r1819  
    99</ul> 
    1010</div>%TMPL:END% 
    11 %TMPL:DEF{"editbutton"}%<li class="natEditEditButton">%BUTTON{"%MAKETEXT{"Edit"}%" accesskey="e" icon="pencil" onclick="history.back()" title="%MAKETEXT{"Continue editing"}%"}%</li>%TMPL:END% 
     11%TMPL:DEF{"editbutton"}%<li class="natEditEditButton">%BUTTON{"%MAKETEXT{"Edit"}%" accesskey="e" icon="pencil" href="javascript:history.back()" title="%MAKETEXT{"Continue editing"}%"}%</li>%TMPL:END% 
    1212 
Note: See TracChangeset for help on using the changeset viewer.