diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 0000000..86d36cf
Binary files /dev/null and b/.DS_Store differ
diff --git a/.gitignore b/.gitignore
index c64b096..0351d89 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
config/admin.ini
config/database.config.ini
public/img/header
+public/img/page
diff --git a/application/controller/AdminPageController.php b/application/controller/AdminPageController.php
index ce1923a..4c37b28 100644
--- a/application/controller/AdminPageController.php
+++ b/application/controller/AdminPageController.php
@@ -26,19 +26,22 @@ class AdminPageController extends Katharsis_Controller_Abstract
$type = 'page';
}
- $path = getcwd().'/img/' . $type . '/';
+ $path = getcwd().'/public/img/' . $type . '/';
if(isset($_FILES['myfile']))
{
$upload = new Upload();
if($type == 'header') {
- $upload->header($_FILES['myfile']);
+ $imagePath = $upload->header($_FILES['myfile']);
} else {
- $upload->page($_FILES['myfile']);
+ $imagePath = $upload->page($_FILES['myfile']);
}
- echo 'Das Hochladen war erfolgreich.
';
+ $this->_view->imagePath = $imagePath;
+
+ echo $this->_view->render('AdminPage/uploadsuccess');
+ die();
}
@@ -51,7 +54,7 @@ class AdminPageController extends Katharsis_Controller_Abstract
}
$ar = array();
- if (is_readable($path) && $handle = opendir())
+ if (is_readable($path) && $handle = opendir($path))
{
while (false !== ($file = readdir($handle))) {
if(is_dir($file)) continue;
@@ -60,6 +63,7 @@ class AdminPageController extends Katharsis_Controller_Abstract
closedir($handle);
}
+ $this->_view->type = $type;
$this->_view->files = $ar;
echo $this->_view->render('AdminPage/image');
diff --git a/application/controller/PageController.php b/application/controller/PageController.php
index d844d41..946894b 100644
--- a/application/controller/PageController.php
+++ b/application/controller/PageController.php
@@ -18,7 +18,7 @@ class PageController extends Katharsis_Controller_Abstract
$url = substr($method, 0, -6); // remove Action from urlAction
- $pageId = $this->_page->getIdByUrl($url);
+ $pageId = $this->_page->getIdByUrl($url, $preview);
if(!$pageId) {
throw new DidgeridooArtwork_Exception('Page konnte nicht geladen werden.');
diff --git a/application/model/Upload.php b/application/model/Upload.php
index 2b1091e..296a629 100644
--- a/application/model/Upload.php
+++ b/application/model/Upload.php
@@ -8,13 +8,13 @@ class Upload extends Katharsis_Model_Abstract
public function header($file)
{
- $dir = getcwd() . '/img/header';
+ $dir = getcwd() . '/public/img/header';
return $this->_uploadFile(null, $file, $dir);
}
public function page($file)
{
- $dir = getcwd() . '/img/page';
+ $dir = getcwd() . '/public/img/page';
return $this->_uploadFile(null, $file, $dir, $file['name'] . '-' . time());
}
@@ -22,7 +22,7 @@ class Upload extends Katharsis_Model_Abstract
{
if($name === null)
{
- $name = $id . '-' . time();
+ $name = time();
}
else
{
@@ -31,25 +31,35 @@ class Upload extends Katharsis_Model_Abstract
$name = $nameparts[0];
}
}
-
- $handle = new Verot_Upload($file);
- return;
- $handle->file_new_name_body = $name;
-
- if ($handle->uploaded)
- {
- $handle->Process($dir);
- if (!$handle->processed)
- {
- throw new DidgeridooArtwork_Exception('Datei konnte nicht verschoben werden (' . $handle->error . ').');
- }
- $handle->Clean();
+
+ if (!is_dir($dir)) {
+ mkdir($dir);
}
- else
+
+ $typeAccepted = array("image/jpeg", "image/gif", "image/png");
+ if(!in_array($file['type'], $typeAccepted)) {
+ throw new DidgeridooArtwork_Exception('Hochladen fehlgeschlagen. Dateityp nicht akzeptiert. Nur jpeg, gif und png möglich');
+ return false;
+ }
+
+ $ext = '';
+ switch($file['type']) {
+ case "image/jpeg":
+ $ext = '.jpg';
+ break;
+ case "image/gif":
+ $ext = '.gif';
+ break;
+ case "image/png":
+ $ext = '.png';
+ break;
+ }
+
+ if (!move_uploaded_file($file['tmp_name'], $dir . '/' . $name . $ext))
{
- throw new DidgeridooArtwork_Exception('Datei konnte nicht hochgeladen werden (' . $handle->error . ').');
+ throw new DidgeridooArtwork_Exception('Hochladen fehlgeschlagen. (move_uploaded_file: false)');
+ return false;
}
- $returnName = $handle->file_dst_name;
- return $returnName;
+ return $name . $ext;
}
}
\ No newline at end of file
diff --git a/application/view/AdminPage/image.phtml b/application/view/AdminPage/image.phtml
index 29efa22..a834ffa 100644
--- a/application/view/AdminPage/image.phtml
+++ b/application/view/AdminPage/image.phtml
@@ -1,9 +1,8 @@
- Swiss Didgeridoo Artwork
+ Seinheit
-
@@ -18,8 +17,8 @@
files as $file): ?>
-
-
- Einfügen
+
+ Einfügen
Löschen
diff --git a/application/view/AdminPage/uploadsuccess.phtml b/application/view/AdminPage/uploadsuccess.phtml
new file mode 100644
index 0000000..f42e23e
--- /dev/null
+++ b/application/view/AdminPage/uploadsuccess.phtml
@@ -0,0 +1,10 @@
+Das Hochladen war erfolgreich.
+
+
\ No newline at end of file
diff --git a/library/DidgeridooArtwork/Controller/Plugin/Navigation.php b/library/DidgeridooArtwork/Controller/Plugin/Navigation.php
index 1d685b7..1baaea4 100644
--- a/library/DidgeridooArtwork/Controller/Plugin/Navigation.php
+++ b/library/DidgeridooArtwork/Controller/Plugin/Navigation.php
@@ -4,7 +4,7 @@ class DidgeridooArtwork_Controller_Plugin_Navigation extends Katharsis_Controlle
public function preController()
{
$view = Katharsis_View::getInstance();
- $sql = "SELECT id, name, controller, action, link FROM navigation WHERE parent_id IS NULL ORDER BY sorting";
+ $sql = "SELECT id, name, controller, action, link FROM navigation WHERE parent_id IS NULL AND active = 1 ORDER BY sorting";
$view->mainNavigationItems = $this->_con->fetchAll($sql);
$sql = "SELECT id, parent_id, controller, action FROM navigation WHERE (action = :action AND controller = :controller) OR (action IS NULL AND controller = :controller)";
diff --git a/library/Katharsis/Controller/Plugin/Autorender.php b/library/Katharsis/Controller/Plugin/Autorender.php
index 4b72b9a..de70c8a 100644
--- a/library/Katharsis/Controller/Plugin/Autorender.php
+++ b/library/Katharsis/Controller/Plugin/Autorender.php
@@ -1,20 +1,19 @@
-stageContent = false;
-
- $templateName = ucfirst(Katharsis_Request::getControllerName()) . DIRECTORY_SEPARATOR . strtolower(Katharsis_Request::getActionName());
-
- if(file_exists(getcwd() . '/application/view' . DIRECTORY_SEPARATOR . $templateName . '.phtml'))
- {
- $view->stageContent = $view->render($templateName);
- }
-
- echo $view->render('main');
- }
-}
-?>
\ No newline at end of file
+stageContent = false;
+
+ $templateName = ucfirst(Katharsis_Request::getControllerName()) . DIRECTORY_SEPARATOR . strtolower(Katharsis_Request::getActionName());
+
+ if(file_exists(getcwd() . '/application/view' . DIRECTORY_SEPARATOR . $templateName . '.phtml'))
+ {
+ $view->stageContent = $view->render($templateName);
+ }
+
+ echo $view->render('main');
+ }
+}
diff --git a/library/Katharsis/View.php b/library/Katharsis/View.php
index 6fe506e..643253f 100644
--- a/library/Katharsis/View.php
+++ b/library/Katharsis/View.php
@@ -1,73 +1,72 @@
-_items['base'] = $base != $_SERVER['SCRIPT_NAME'] ? $base : '';
- }
-
- public function __get($name)
- {
- if(array_key_exists($name, $this->_items))
- {
- if(is_array($this->_items[$name]))
- {
- return (array) $this->_items[$name];
- }
- return $this->_items[$name];
- }
- return null;
- }
-
- public function __set($name, $value)
- {
- $this->_items[$name] = $value;
- }
-
- public function render($template)
- {
- ob_start();
- if(file_exists('application/view/' . $template . '.phtml'))
- {
- include('application/view/' . $template . '.phtml');
- }
- $output = ob_get_contents();
- ob_end_clean();
-
- return $output;
- }
-
- public function requestHook()
- {
- }
-
- public function _getParam($key)
- {
- $params = Katharsis_Request::getParams();
- if(array_key_exists($key,$params))
- {
- return $params[$key];
- }
- return null;
- }
-
- public function formatDate($date)
- {
- $date = explode("-", $date);
- return $date[2] . '.' . $date[1] . '.' . $date[0];
- }
-}
-?>
\ No newline at end of file
+_items['base'] = $base != $_SERVER['SCRIPT_NAME'] ? $base : '';
+ }
+
+ public function __get($name)
+ {
+ if(array_key_exists($name, $this->_items))
+ {
+ if(is_array($this->_items[$name]))
+ {
+ return (array) $this->_items[$name];
+ }
+ return $this->_items[$name];
+ }
+ return null;
+ }
+
+ public function __set($name, $value)
+ {
+ $this->_items[$name] = $value;
+ }
+
+ public function render($template)
+ {
+ ob_start();
+ if(file_exists('application/view/' . $template . '.phtml'))
+ {
+ include('application/view/' . $template . '.phtml');
+ }
+ $output = ob_get_contents();
+ ob_end_clean();
+
+ return $output;
+ }
+
+ public function requestHook()
+ {
+ }
+
+ public function _getParam($key)
+ {
+ $params = Katharsis_Request::getParams();
+ if(array_key_exists($key,$params))
+ {
+ return $params[$key];
+ }
+ return null;
+ }
+
+ public function formatDate($date)
+ {
+ $date = explode("-", $date);
+ return $date[2] . '.' . $date[1] . '.' . $date[0];
+ }
+}
diff --git a/public/index.php b/public/index.php
index 469fe40..de542d2 100644
--- a/public/index.php
+++ b/public/index.php
@@ -12,7 +12,6 @@ chdir('..');
require_once('library/Katharsis/Bootstrap.php');
Katharsis_Autoload::init();
-
Katharsis_Controller_Plugin::registerPlugin(new DidgeridooArtwork_Controller_Plugin_SetNames());
Katharsis_Controller_Plugin::registerPlugin(new Katharsis_Controller_Plugin_StartSession());
Katharsis_Controller_Plugin::registerPlugin(new DidgeridooArtwork_Controller_Plugin_Notice());
@@ -22,7 +21,6 @@ Katharsis_Controller_Plugin::registerPlugin(new Katharsis_Controller_Plugin_Auto
Katharsis_Controller_Plugin::registerPlugin(new DidgeridooArtwork_Controller_Plugin_Access());
Katharsis_Controller_Plugin::registerPlugin(new DidgeridooArtwork_Controller_Plugin_Navigation());
-
try {
Katharsis_Bootstrap::init();
Katharsis_Bootstrap::run();