====== New Page Dialog Plugin ====== ---- plugin ---- description: A dialog which helps people creating new pages. author : christian studer email : cstuder@existenz.ch type : action lastupdate : 2015-11-05 compatible : weatherwax, binky, ponder stibbons depends : conflicts : similar : addnewpage tags : button, form, create downloadurl: https://github.com/meteotest/npd/archive/master.zip bugtracker : https://github.com/meteotest/npd/issues sourcerepo :https://github.com/meteotest/npd donationurl: screenshot_img : http://hymnos.existenz.ch/wp-content/uploads/2014/01/npd.png ---- ===== Installation ===== Search and install the plugin using the [[plugin:extension|Extension Manager]]. Refer to [[:Plugins]] on how to install plugins manually. ==== Add Button to Template ==== Decide where you want to insert the "Create New Page" button in your template and insert the following code: if (!plugin_isdisabled('npd') && ($npd =& plugin_load('helper', 'npd'))) { $npd->html_new_page_button(); } Most likely you want to do that in the ''/lib/tpl/default/main.php'' inside the ''%%
%%'' as follows:
html_new_page_button(); ?>  
Note that the button will only be shown if the browser is JavaScript enabled. Exception: The template [[template:dokubook|DokuBook]] has the New Page Dialog-button automatically added. ===== Examples/Usage ===== {{http://hymnos.existenz.ch/wp-content/uploads/2014/01/npd.png|Screenshot}} This plugin solves a pain point for many newcomers to wikis: How to create a new page. It focuses on the way people are used to storing files and aims to resemble a regular "Save As" dialog with "Add Folder" functionality. Clicking on the button opens this pop-up which allows to create new folders and pages in existing folders. ===== Configuration and Settings ===== Note: Configuration settings of plugins can be controlled by the [[plugin:config|Configuration Manager plugin]]. ==== Plugin NTP Link Type ==== This setting controls the appearance of the page creation action: * The value ''link'' will cause it to appear as an HTML link element, similar to this: \\ Create New Page * The value ''button'' (default) will cause it to appear as an HTML form element with a button, approximately like this: \\
Choose this setting according to your template. ===== Development ===== This plugin has been adopted from [[plugin:new_page_dialog|new page dialog plugin]] by Pierre Spring. === Change Log === * **2015-11-05** * Fixes an issue with adding a page below two levels, by thylacine222 * Updates spanish localization by Patricio Parraguez * Updates korean localization by Myeongjin * Adds bulgarian localization by Neli Dimitrova * **2014-06-16** * Adds japanese localization by Hideaki SAWADA * Adds informal german localization * **2014-01-23** * Initial release * Compatible with DokuWiki version after Angua * Removes confirmation dialog ===== FAQ ===== ===== Known issues ===== Adding this button to a template is rather cumbersome and breaks when a template is updated. There must be a better way to do this. ===== Discussion ===== ==== No-name behaviour and integration ==== Dear author of this plugin, thanks for the plugin and some feedback: I like the general idea and I tried it for our local wiki, because I see the same problem for new users as you. However, two points finally stopped me using it, and I would like to inform you about them : * **Plugin accepts "no name" creation**: The more important point. In the dialog box, creation of a page is possible without typing the name. A default name is then assumed (I think it was "page title"). This will lead to many pages with this standard name all over the namespaces, because people tend to forget. It should IMHO rather refuse to create a page if no name was typed (silently or infobox). * The integration into the template proved to be a bit difficult, although I got more or less there in the end. ((Using the default "Dokuwiki" template (the old "default" template as assumed in the description here is not the default any more), I wanted to put it into the page actions menu floating on the right. With the button it is not possible, but with the settings of the plugin set to "link" and putting ''
  • '' around it, it shows up. Drawback: the icon is the standard "edit" pencil, and I did not see how to change it.)) Obviously, this is primarily a template question, but on the plugin side, a more flexible integration might be possible: Now, the plugin provides only a whole block of html code (either button or link with stuff around), but providing the pure url (maybe via another function like html_new_page_url) would be more flexible for integration. Best, Nøk (@2014-03-12) Hi @all, my simple complete solution of adding new pages is to show a little text-input field to give a name. The value will be sent by jQ to DW. See the simple script to put in the main.php of your theme: // 2 lines of php (of course in a php area ;-) $uriinput = ($_SERVER['REQUEST_URI']); $urioutput = basename($uriinput); // and the following inside a html area
    Onload value of field will be actual site and if you type something in and press go, the script will send you to the page or if its not existing, to a blank. Cheers ==== Adjusting the action appearance to the toolbar of the dokuwiki template ==== The ''dokuwiki'' template of the current DokuWiki version (Hrun) has a nice toolbar to the right of each page, with icons that pop out a menu when hovering over them. While the ''link'' appearance of this plugin matches that better than the ''button'' appearance, it still looks inconsistent. Changing the ''link'' case in the file ''dokuwiki/lib/plugins/npd/helper.php'' as follows lets the "Create New Page" action have the same appearance as the actions in that toolbar: case 'link': $ret .= '
  • '; break;
    Using ''class=″action create″'' selects the page creation icon from the pagetools icons of the ''dokuwiki'' template, it looks like the pen of the edit icon, with a plus-sign in the lower right corner. Happy adjusting!