manageHelp.php
4.86 KB
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?php
//require_once("../../../../../config/dmsDefaults.php");
require_once(KT_LIB_DIR . "/templating/templating.inc.php");
require_once(KT_LIB_DIR . "/help/helpreplacement.inc.php");
require_once(KT_LIB_DIR . "/help/helpentity.inc.php");
require_once(KT_LIB_DIR . "/help/help.inc.php");
require_once(KT_LIB_DIR . "/dispatcher.inc.php");
require_once(KT_LIB_DIR . "/templating/kt3template.inc.php");
class ManageHelpDispatcher extends KTAdminDispatcher {
function do_main() {
return $this->getData();
}
function getData() {
$this->aBreadcrumbs[] = array('action' => 'manageHelp', 'name' => _('Help Administration'));
$this->oPage->setBreadcrumbDetails(_('select a section'));
$this->oPage->setTitle(_('Help Administration'));
$oTemplating = new KTTemplating;
$aHelpReplacements =& KTHelpReplacement::getList();
//$aHelps =& KTHelpEntity::getList();
$oTemplate = $oTemplating->loadTemplate("ktcore/manage_help");
$aTemplateData = array(
"context" => &$this,
//"helps" => $aHelps,
"helpreplacements" => $aHelpReplacements,
);
return $oTemplate->render($aTemplateData);
}
function getReplacementItemData($oHelpReplacement) {
$this->aBreadcrumbs[] = array('action' => 'manageHelp', 'name' => _('Help Administration'));
$this->oPage->setTitle(_('Editing: ') . $oHelpReplacement->getTitle());
$oTemplating = new KTTemplating;
$oTemplate = $oTemplating->loadTemplate("ktcore/manage_help_item");
$aTemplateData = array(
"context" => &$this,
"help" => $oHelpReplacement,
);
$this->aBreadcrumbs[] = array(
'name' => _('Edit help item'),
);
return $oTemplate->render($aTemplateData);
}
function do_editReplacement() {
$id = KTUtil::arrayGet($_REQUEST, 'id');
$oHelpReplacement = KTHelpReplacement::get($id);
if (PEAR::isError($oHelpReplacement)) {
return $this->errorRedirectToMain(_("Could not find specified item"));
}
return $this->getReplacementItemData($oHelpReplacement);
}
function do_deleteReplacement() {
$id = KTUtil::arrayGet($_REQUEST, 'id');
$oHelpReplacement = KTHelpReplacement::get($id);
if (PEAR::isError($oHelpReplacement)) {
return $this->errorRedirectToMain(_("Could not find specified item"));
}
$res = $oHelpReplacement->delete();
if (PEAR::isError($res)) {
return $this->errorRedirectToMain(_("Could not delete specified item"));
}
return $this->successRedirectToMain(_("Item deleted"));
}
function do_updateReplacement() {
$id = KTUtil::arrayGet($_REQUEST, 'id');
$oHelpReplacement = KTHelpReplacement::get($id);
if (PEAR::isError($oHelpReplacement)) {
return $this->errorRedirectToMain(_("Could not find specified item"));
}
$description = KTUtil::arrayGet($_REQUEST, 'description');
if (empty($description)) {
return $this->errorRedirectToMain(_("No description given"));
}
$oHelpReplacement->setDescription($description);
$title = KTUtil::arrayGet($_REQUEST, 'title');
if (empty($title)) {
return $this->errorRedirectToMain(_("No title given"));
}
$oHelpReplacement->setTitle($title);
$res = $oHelpReplacement->update();
if (PEAR::isError($res)) {
return $this->errorRedirectToMain(_("Error updating item"));
}
return $this->successRedirectToMain(_("Item updated"));
}
function do_customise() {
$name = KTUtil::arrayGet($_REQUEST, 'name');
$name = KTHelp::getHelpSubPath($name);
$oHelpReplacement = KTHelpReplacement::getByName($name);
// XXX: Check against "already exists"
if (!PEAR::isError($oHelpReplacement)) {
// Already exists...
return $this->errorRedirectTo('editReplacement', _('Replacement already exists.'),'id=' . $oHelpReplacement->getId());
}
$info = KTHelp::getHelpFromFile($name);
if ($info === false) {
$info = array('name' => $name);
$info['title'] = _('New Help File');
$info['body'] = _('New Help File');
}
$oHelpReplacement = KTHelpReplacement::createFromArray(array(
'name' => $info['name'],
'description' => $info['body'],
'title' => $info['title'],
));
if (PEAR::isError($oHelpReplacement)) {
return $this->errorRedirectToMain(_("Unable to create replacement"));
}
return $this->successRedirectTo('editReplacement', _('Created replacement.'), 'id=' . $oHelpReplacement->getId());
}
}
//$oDispatcher = new ManageHelpDispatcher();
//$oDispatcher->dispatch();
?>