Hide last authors
Jan Rhebergen 1.1 1 {{include reference="Blog.BlogCode"/}}
2
3 {{velocity}}
4 ## In case this page is called from the blogPostCreate macro
5 #if ("$!targetBlogDoc" != '')
6 #set ($doc = $targetBlogDoc)
7 #end
8 {{html clean="false" wiki="true"}}
9 #set($name = "$!request.entryTitle")
10 #if($name == '')
11 ## If there's also a form_token passed it means the user has entered an empty blog post title, let the user know about it!
12 #if ("$!request.form_token" != '')
13 {{error}}$services.localization.render('blog.post.titleEmptyError'){{/error}}
14
15 #end
16 ## First step, display the create form
17 #if($hasEdit)
18 $xwiki.jsx.use($blogScriptsDocumentName)##
19 #set($space = "$!request.entrySpace")
20 #if($space == '')
21 #set($space = $doc.space)
22 #end
23 <form action='$doc.getURL()' method="post" class="xformInline newBlogPostForm">
24 <div>
25 <input type="hidden" name="form_token" value="$!{services.csrf.getToken()}" />
26 <input type="hidden" name="entrySpace" value="$!{escapetool.xml($services.rendering.escape($space,$doc.syntax))}"/>
27 #if($doc.getObject($blogCategoryClassname))
28 <input type="hidden" name="category" value="$services.rendering.escape(${escapetool.xml(${doc.fullName})}, $doc.syntax)"/>
29 #end
30 $services.icon.renderHTML('add')<label class="createPost" for="entryTitle">$services.localization.render('blog.post.createpost') </label>
31 <input type="text" id="entryTitle" name="entryTitle" size="30" placeholder="$services.localization.render('blog.post.title')"/> <span class="buttonwrapper">
32 <input type="submit" value="${escapetool.xml($services.localization.render('blog.post.create'))}" class="btn btn-success button"/></span>
33 </div>
34 </form>
35 #elseif("$!request.entryTitle" != '')## !hasEdit && form submitted
36 #template('accessdenied.vm')
37 #end## hasEdit
38 #else
39 ## Second step, form submitted, create the document
40 #set($space = "$!request.entrySpace")
41 #getBlogPostsLocation($space $blogPostsLocation)
42 #if($blogPostsLocation == '')
43 #set($blogPostsLocation = 'Main')
44 #end
45 ## Since XWiki 12.0RC1 it is possible to use a naming strategy at wiki level and the blog application should respect it.
46 #if("$!services.modelvalidation" != '' && $services.modelvalidation.configuration.useTransformation())
47 #set($name = $services.modelvalidation.transformName($name))
48 #else
49 ## Remove . and : from the document name, as they have a special meaning in XWiki document names
50 #set($name = $name.replaceAll('[.:]', ''))
51 #end
52 #set($postDocName = "${blogPostsLocation}.${name}")
53 #set($postDocName = $postDocName.trim())
54 ## Make sure blog name is new
55 #if($xwiki.exists($postDocName))
56 #set($postDocRef = $services.model.resolveDocument($postDocName, "currentmixed"))
57 #set($postDocPageName = $xwiki.getUniquePageName($blogPostsLocation, $postDocRef.getName()))
58 #set($postDocName = "${blogPostsLocation}.${postDocPageName}")
59 #end
60 ## Get the target blog document, to set it as the parent
61 #getBlogDocument($space $blogDoc)
62 #set($parent = "$!{escapetool.url($blogDoc.fullName)}")
63 #set($title = "$!{escapetool.url($name)}")
64 #set($category = "")
65 #if("$!request.category" != '')
66 #set($category = "&${blogPostClassname}_${blogPostObjectNumber}_category=${escapetool.url(${request.category})}")
67 #end
68 $response.sendRedirect($xwiki.getURL($postDocName, 'edit', "template=${blogPostTemplate}&parent=${parent}&title=${title}&${blogPostClassname}_0_title=${title}$!{category}&form_token=$!{request.getParameter('form_token')}"))
69 #end## name == ''
70 {{/html}}
71 {{/velocity}}

Child Pages

Page Tree