aboutsummaryrefslogtreecommitdiff
path: root/h-source/Application/Controllers
diff options
context:
space:
mode:
Diffstat (limited to 'h-source/Application/Controllers')
-rw-r--r--h-source/Application/Controllers/MeetController.php40
-rw-r--r--h-source/Application/Controllers/WikiController.php65
2 files changed, 88 insertions, 17 deletions
diff --git a/h-source/Application/Controllers/MeetController.php b/h-source/Application/Controllers/MeetController.php
index 72e9006..5395a21 100644
--- a/h-source/Application/Controllers/MeetController.php
+++ b/h-source/Application/Controllers/MeetController.php
@@ -37,6 +37,7 @@ class MeetController extends BaseController
$this->model('IssuesModel');
$this->model('MessagesModel');
$this->model('TalkModel');
+ $this->model('WikiModel');
$argKeys = array(
'page:forceNat' => 1,
@@ -120,11 +121,14 @@ class MeetController extends BaseController
$messNumb = $this->m['MessagesModel']->select('id_mes,messages.id_issue,messages.creation_date')->where(array('created_by'=>$clean['id_user'],'deleted'=>'no'))->rowNumber();
$talkNumb = $this->m['TalkModel']->select('talk.title')->where(array('created_by'=>$clean['id_user'],'deleted'=>'no'))->rowNumber();
+
+ $wikiNumb = $this->m['WikiModel']->select()->where($this->whereArray)->rowNumber();
$data['hasHardware'] = $hardNumb > 0 ? true : false;
$data['hasIssues'] = $issuesNumb > 0 ? true : false;
$data['hasMessages'] = $messNumb > 0 ? true : false;
$data['hasTalk'] = $talkNumb > 0 ? true : false;
+ $data['hasWiki'] = $wikiNumb > 0 ? true : false;
$this->append($data);
$this->load('contributions');
@@ -258,4 +262,40 @@ class MeetController extends BaseController
$this->right();
}
}
+
+ //hardware contributions
+ public function wiki($lang = 'en', $user = '')
+ {
+ $clean['user'] = ctype_alnum($user) ? sanitizeAll($user) : '';
+ $data['title'] = "wiki contributions - ".Website::$generalName;
+
+ $this->shift(2);
+
+ if ($this->userExists($clean['user']))
+ {
+ //load the Pages helper
+ $this->helper('Pages','meet/wiki/'.$this->lang.'/'.$clean['user'],'page');
+
+ $this->whereArray['username'] = $clean['user'];
+
+ $data['table'] = $this->m['WikiModel']->select('wiki.*,regusers.username')->where($this->whereArray)->orderBy('wiki.id_wiki desc');
+
+ $recordNumber = $this->m['WikiModel']->rowNumber();
+ $page = $this->viewArgs['page'];
+
+ $this->m['WikiModel']->limit = $this->h['Pages']->getLimit($page,$recordNumber,30);
+
+ $data['table'] = $this->m['WikiModel']->send();
+
+ $data['meet_username'] = $clean['user'];
+
+ $data['pageList'] = $this->h['Pages']->render($page-5,11);
+
+ $this->append($data);
+ $this->load('wiki');
+ $this->right();
+ }
+
+ }
+
} \ No newline at end of file
diff --git a/h-source/Application/Controllers/WikiController.php b/h-source/Application/Controllers/WikiController.php
index 8e26454..a1b39ce 100644
--- a/h-source/Application/Controllers/WikiController.php
+++ b/h-source/Application/Controllers/WikiController.php
@@ -58,7 +58,10 @@ class WikiController extends BaseController
//insert the new wiki page
$this->m['WikiModel']->updateTable('insert');
- $this->viewRedirect($this->m['WikiModel']->lastTitleClean);
+ if ($this->m['WikiModel']->queryResult)
+ {
+ header('Location: http://'.DOMAIN_NAME.'/wiki/page/'.$this->lang.'/'.$this->m['WikiModel']->lastTitleClean);
+ }
}
$data['notice'] = $this->m['WikiModel']->notice;
@@ -114,7 +117,10 @@ class WikiController extends BaseController
//carry out the update database action
$this->m['WikiModel']->updateTable('update');
- $this->viewRedirect($this->m['WikiModel']->lastTitleClean);
+ if ($this->m['WikiModel']->queryResult)
+ {
+ header('Location: http://'.DOMAIN_NAME.'/wiki/page/'.$this->lang.'/'.$this->m['WikiModel']->lastTitleClean);
+ }
}
$data['notice'] = $this->m['WikiModel']->notice;
@@ -142,13 +148,13 @@ class WikiController extends BaseController
}
}
- protected function viewRedirect($titleClean)
- {
- if ($this->m['WikiModel']->queryResult)
- {
- $this->redirect($this->controller.'/page/'.$this->lang.'/'.$titleClean);
- }
- }
+// protected function viewRedirect($titleClean)
+// {
+// if ($this->m['WikiModel']->queryResult)
+// {
+// $this->redirect($this->controller.'/page/'.$this->lang.'/'.$titleClean);
+// }
+// }
public function page($lang = 'en', $title_clean = null)
{
@@ -313,10 +319,11 @@ class WikiController extends BaseController
$clean['id_rev'] = (int)$id_rev;
$data['id_wiki'] = $clean['id_wiki'];
- $tree_name = $this->m['WikiModel']->getTheModelName((int)$data['id_wiki']);
+ $tree_name = $this->m['WikiModel']->getTheModelName((int)$clean['id_wiki']);
$data['tree_name'] = $tree_name;
$data['tree'] = $this->getSpecPageLink() . " » " . $this->getViewLink($data['tree_name'])." » " . $this->getHistoryLink($data['id_wiki']) . " » ".gtext('Differences');
-
+
+ $data['isDeleted'] = $this->m['WikiModel']->isDeleted($clean['id_wiki']);
$data['showDiff'] = false;
$diffArray = array();
@@ -414,7 +421,10 @@ class WikiController extends BaseController
{
$this->m['WikiModel']->makeCurrent($clean['id_rev']);
- $this->viewRedirect($this->m['WikiModel']->lastTitleClean);
+ if ($this->m['WikiModel']->queryResult)
+ {
+ header('Location: http://'.DOMAIN_NAME.'/wiki/page/'.$this->lang.'/'.$this->m['WikiModel']->lastTitleClean);
+ }
$data['notice'] = $this->m['WikiModel']->notice;
}
@@ -512,20 +522,31 @@ class WikiController extends BaseController
$this->right();
}
- public function deleted($lang = 'en')
+ protected function see($lang = 'en', $status = 'blocked')
{
$this->s['registered']->check('admin');
- $data['topString'] = 'list of deleted pages';
- $data['title'] = gtext('list of deleted pages').' - '.Website::$generalName;
+ switch ($status)
+ {
+ case 'deleted':
+ $data['topString'] = 'list of deleted pages';
+ $data['title'] = gtext('list of deleted pages').' - '.Website::$generalName;
+ $whereClause = '-deleted';
+ break;
+ case 'blocked':
+ $data['topString'] = 'list of blocked pages';
+ $data['title'] = gtext('list of blocked pages').' - '.Website::$generalName;
+ $whereClause = 'blocked';
+ break;
+ }
$this->setArgKeys(array('page:forceNat'=>1));
$this->shift(1);
- $this->helper('Pages','wiki/deleted/'.$this->lang,'page');
+ $this->helper('Pages','wiki/'.$status.'/'.$this->lang,'page');
- $this->m['WikiModel']->clear()->select()->where(array('-deleted'=>'yes'))->orderBy('id_wiki desc');
+ $this->m['WikiModel']->clear()->select()->where(array($whereClause=>'yes'))->orderBy('id_wiki desc');
$recordNumber = $this->m['WikiModel']->rowNumber();
$page = $this->viewArgs['page'];
@@ -541,6 +562,16 @@ class WikiController extends BaseController
$this->right();
}
+ public function deleted($lang = 'en')
+ {
+ $this->see($lang,'deleted');
+ }
+
+ public function blocked($lang = 'en')
+ {
+ $this->see($lang,'blocked');
+ }
+
//print all the modifications to the wiki
public function modifications($lang = 'en')
{