-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathplugin.php
87 lines (71 loc) · 2.22 KB
/
plugin.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<?php
// Das Plugin exportiert den gesamten Inhalt in das Verzeichnis EXPORT
// als MD-File für den Einsatz im PICO CMS. Empfehlenswert ist zudem die
// Erhöhung des Wertes in:
//
// bl-kernel/boot/variables.php
//
// auf
//
// define('NOTIFICATIONS_AMOUNT', 120);
//
// 120 statt nur 10, damit die Arbeit des Plugins im Dashboard besser
// geprüft werden kann.
class pluginBludit2Pico extends Plugin {
public function init()
{
$this->formButtons = false;
}
public function post()
{
if (isset($_POST['createBackup'])) {
return $this->createPages();
return $this->createIndex();
}
return false;
}
public function form()
{
global $L;
$html = '<div class="alert alert-primary" role="alert">';
$html .= $this->description();
$html .= '</div>';
$html .= '<button name="createBackup" value="true" class="btn btn-primary" type="submit">Export</button>';
return $html;
}
public function createPages() {
global $pages;
global $syslog;
global $L;
$pageNumber = 1;
$numberOfItems = -1;
$onlyPublished = true;
$items = $pages->getList($pageNumber, $numberOfItems, $onlyPublished);
foreach ($items as $key) {
$page = buildPage($key);
$content = '---' ."\n";
$content .= 'Title: ' .$page->title() ."\n";
$content .= 'Author: ' .$page->user('nickname') ."\n";
$content .= 'Date: ' .$page->date() ."\n";
$content .= 'Robots: ' .'noindex,nofollow' ."\n";
$content .= 'Template: ' .'index' ."\n";
$content .= 'logo: ' .$page->coverimage() ."\n";
$content .= 'Featured: ' .'true' ."\n";
$content .= 'Description: ' .$page->description() ."\n";
$content .= '---' ."\n";
$content .= $page->content();
$category = str_replace(' ','-',$page->category());
$category = str_replace('.','-',$category);
$category = strtolower($category);
if (!mkdir('export/'.$category, 0777, true)) {
//$syslog->add(array('dictionaryKey'=>'Ordner','notes'=>$category.' nicht erstellt' ));
}
file_put_contents('export/'.$category.'/'.$page->slug().'.md', $content);
$syslog->add(array('dictionaryKey'=>'Out','notes'=>$page->slug().'.md' ));
}
}
public function createIndex()
{
// nothing
}
}