From 8c8c29780a00701a4714497c66cf8f38f88fcc9a Mon Sep 17 00:00:00 2001 From: Ulf Gebhardt Date: Sat, 10 Oct 2015 18:32:41 +0200 Subject: [PATCH] working platform missing design --- yeminy/files/content/favicon.ico | Bin 1406 -> 0 bytes yeminy/files/content/gemini.jpg | Bin 0 -> 29438 bytes yeminy/page/article/article.php | 15 +++++++++++ yeminy/page/article/autoload.inc | 2 ++ yeminy/page/article/tpl/article.tpl | 23 +++++++++++++++++ yeminy/page/article/tpl/preview.tpl | 14 ++++++++++ yeminy/page/autoload.inc | 9 ++++--- yeminy/page/default_article/autoload.inc | 2 ++ .../page/default_article/default_article.php | 11 ++++++++ .../default_article/js/default_article.js | 2 ++ yeminy/page/default_impressum/autoload.inc | 2 ++ .../default_impressum/default_impressum.php | 7 +++++ .../page/default_impressum/tpl/impressum.tpl | 3 +++ yeminy/page/default_list/autoload.inc | 2 ++ yeminy/page/default_list/default_list.php | 19 ++++++++++++++ yeminy/page/default_list/js/default_list.js | 2 ++ yeminy/page/default_list/tpl/default_list.tpl | 3 +++ yeminy/page/default_page/css/default_page.css | 3 +++ yeminy/page/default_page/default_page.php | 6 ++++- yeminy/page/default_page/js/default_page.js | 24 +++++++++++++++++- yeminy/page/default_page/tpl/content.tpl | 7 +++++ .../page/default_page/tpl/content_footer.tpl | 7 +++++ .../page/default_page/tpl/content_header.tpl | 5 ++++ yeminy/page/default_page/tpl/content_menu.tpl | 14 ++++++++++ yeminy/page/default_page/tpl/default_page.tpl | 7 +++-- yeminy/page/default_search/autoload.inc | 2 ++ yeminy/page/default_search/default_search.php | 17 +++++++++++++ yeminy/page/default_search/tpl/search.tpl | 5 ++++ yeminy/page/page_yeminy.php | 12 +++++++++ yeminy/sql/DATA_YEMINY.php | 3 ++- yeminy/sql/mysql/system_api.sql | 3 +++ yeminy/sql/mysql/system_page.sql | 4 +++ yeminy/sql/mysql/system_text.sql | 6 +++++ 33 files changed, 232 insertions(+), 9 deletions(-) delete mode 100644 yeminy/files/content/favicon.ico create mode 100644 yeminy/files/content/gemini.jpg create mode 100644 yeminy/page/article/article.php create mode 100644 yeminy/page/article/autoload.inc create mode 100644 yeminy/page/article/tpl/article.tpl create mode 100644 yeminy/page/article/tpl/preview.tpl create mode 100644 yeminy/page/default_article/autoload.inc create mode 100644 yeminy/page/default_article/default_article.php create mode 100644 yeminy/page/default_article/js/default_article.js create mode 100644 yeminy/page/default_impressum/autoload.inc create mode 100644 yeminy/page/default_impressum/default_impressum.php create mode 100644 yeminy/page/default_impressum/tpl/impressum.tpl create mode 100644 yeminy/page/default_list/autoload.inc create mode 100644 yeminy/page/default_list/default_list.php create mode 100644 yeminy/page/default_list/js/default_list.js create mode 100644 yeminy/page/default_list/tpl/default_list.tpl create mode 100644 yeminy/page/default_page/tpl/content.tpl create mode 100644 yeminy/page/default_page/tpl/content_footer.tpl create mode 100644 yeminy/page/default_page/tpl/content_header.tpl create mode 100644 yeminy/page/default_page/tpl/content_menu.tpl create mode 100644 yeminy/page/default_search/autoload.inc create mode 100644 yeminy/page/default_search/default_search.php create mode 100644 yeminy/page/default_search/tpl/search.tpl create mode 100644 yeminy/sql/mysql/system_api.sql create mode 100644 yeminy/sql/mysql/system_page.sql create mode 100644 yeminy/sql/mysql/system_text.sql diff --git a/yeminy/files/content/favicon.ico b/yeminy/files/content/favicon.ico deleted file mode 100644 index ac11a39656df6e6e74a87e0c1b6a91b830303530..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1406 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 Z?XOUUe+7y7|G)XCnwkGs<4pV9^lu@YkRSj6 literal 0 HcmV?d00001 diff --git a/yeminy/page/article/article.php b/yeminy/page/article/article.php new file mode 100644 index 0000000..27be76d --- /dev/null +++ b/yeminy/page/article/article.php @@ -0,0 +1,15 @@ + + +
+
+
+

Author: ${author_name}

+

${ago}

+
+
+

${id}

+
+ ${text} +

Veröffentlicht: ${published}

+
+
+
+
+
+
+
+ +
+
\ No newline at end of file diff --git a/yeminy/page/article/tpl/preview.tpl b/yeminy/page/article/tpl/preview.tpl new file mode 100644 index 0000000..6a55245 --- /dev/null +++ b/yeminy/page/article/tpl/preview.tpl @@ -0,0 +1,14 @@ +
+
+

Author: ${author_name}

+

${ago}

+
+
+

${id}

+
+ ${text} +

Veröffentlicht: ${published}

+
+
+
Weiterlesen...
+
\ No newline at end of file diff --git a/yeminy/page/autoload.inc b/yeminy/page/autoload.inc index 563abc2..2e38992 100644 --- a/yeminy/page/autoload.inc +++ b/yeminy/page/autoload.inc @@ -1,7 +1,8 @@ id = $id;} + + public function html(){ + $element = \SYSTEM\PAGE\text::get_adv($this->id); + return SYSTEM\PAGE\replace::replace(article::full($element), \SYSTEM\PAGE\text::tag('time')); + } +} \ No newline at end of file diff --git a/yeminy/page/default_article/js/default_article.js b/yeminy/page/default_article/js/default_article.js new file mode 100644 index 0000000..322c707 --- /dev/null +++ b/yeminy/page/default_article/js/default_article.js @@ -0,0 +1,2 @@ +function init_article(){ +} \ No newline at end of file diff --git a/yeminy/page/default_impressum/autoload.inc b/yeminy/page/default_impressum/autoload.inc new file mode 100644 index 0000000..8fd92c5 --- /dev/null +++ b/yeminy/page/default_impressum/autoload.inc @@ -0,0 +1,2 @@ + + ${impressum} + diff --git a/yeminy/page/default_list/autoload.inc b/yeminy/page/default_list/autoload.inc new file mode 100644 index 0000000..8fd92c5 --- /dev/null +++ b/yeminy/page/default_list/autoload.inc @@ -0,0 +1,2 @@ +tag = $tag;} + public static function js(){ + return array( \SYSTEM\WEBPATH(new PPAGE(),'default_list/js/default_list.js'));} + + public function html(){ + $vars = array(); + $vars['title'] = $this->tag ? ucfirst($this->tag) : 'Neuheiten'; + $elements = \SYSTEM\PAGE\text::tag_adv($this->tag ? $this->tag : 'yeminy'); + $vars['list'] = ''; + foreach($elements as $element){ + $vars['list'] .= article::preview($element);} + $vars = array_merge($vars, \SYSTEM\PAGE\text::tag('time')); + return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_list/tpl/default_list.tpl'), $vars); + } +} diff --git a/yeminy/page/default_list/js/default_list.js b/yeminy/page/default_list/js/default_list.js new file mode 100644 index 0000000..e7c1166 --- /dev/null +++ b/yeminy/page/default_list/js/default_list.js @@ -0,0 +1,2 @@ +function init_start(){ +} \ No newline at end of file diff --git a/yeminy/page/default_list/tpl/default_list.tpl b/yeminy/page/default_list/tpl/default_list.tpl new file mode 100644 index 0000000..7c5325a --- /dev/null +++ b/yeminy/page/default_list/tpl/default_list.tpl @@ -0,0 +1,3 @@ +

${title}

+
+${list} diff --git a/yeminy/page/default_page/css/default_page.css b/yeminy/page/default_page/css/default_page.css index e69de29..c235133 100644 --- a/yeminy/page/default_page/css/default_page.css +++ b/yeminy/page/default_page/css/default_page.css @@ -0,0 +1,3 @@ +#div_header{ + height: 250px; +} \ No newline at end of file diff --git a/yeminy/page/default_page/default_page.php b/yeminy/page/default_page/default_page.php index 80ab63d..deaab16 100644 --- a/yeminy/page/default_page/default_page.php +++ b/yeminy/page/default_page/default_page.php @@ -21,7 +21,11 @@ class default_page extends \SYSTEM\PAGE\Page { if(!$_escaped_fragment_){ $vars['js'] = $this->js();} $vars['css'] = $this->css(); - $vars = array_merge($vars, \SYSTEM\PAGE\text::tag('yeminy')); + $vars['content_header'] = \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/tpl/content_header.tpl')); + $vars['content_menu'] = \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/tpl/content_menu.tpl')); + $vars['content'] = \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/tpl/content.tpl')); + $vars['content_footer'] = \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/tpl/content_footer.tpl')); + $vars = array_merge($vars, \SYSTEM\PAGE\text::tag('meta')); return \SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/tpl/default_page.tpl'), $vars); } } diff --git a/yeminy/page/default_page/js/default_page.js b/yeminy/page/default_page/js/default_page.js index 710c3d1..4590b10 100644 --- a/yeminy/page/default_page/js/default_page.js +++ b/yeminy/page/default_page/js/default_page.js @@ -1,3 +1,25 @@ $(document).ready(function() { new SYSTEM('./api.php',1,'start'); -}); \ No newline at end of file + tabs(); + search(); +}); + +function search(){ + $("#nav_search_btn").click(function(){ + system.load('search;param.'+$('#nav_search').val()); + }); + $(document).keypress(function(e) { + var hasFocus = $('#nav_search').is(':focus'); + if(e.which === 13 && hasFocus) { + system.load('search;param.'+$('#nav_search').val()); + } + }); +} + +function tabs(){ + $("#tabs_user_list a").click(function(){ + $('#tabs_user_list li').each(function(){ + $(this).removeClass('active');}); + $(this).parent().addClass('active'); + }); +} \ No newline at end of file diff --git a/yeminy/page/default_page/tpl/content.tpl b/yeminy/page/default_page/tpl/content.tpl new file mode 100644 index 0000000..18ca9de --- /dev/null +++ b/yeminy/page/default_page/tpl/content.tpl @@ -0,0 +1,7 @@ +
+
+
+
+
+
+
\ No newline at end of file diff --git a/yeminy/page/default_page/tpl/content_footer.tpl b/yeminy/page/default_page/tpl/content_footer.tpl new file mode 100644 index 0000000..a818a7d --- /dev/null +++ b/yeminy/page/default_page/tpl/content_footer.tpl @@ -0,0 +1,7 @@ + \ No newline at end of file diff --git a/yeminy/page/default_page/tpl/content_header.tpl b/yeminy/page/default_page/tpl/content_header.tpl new file mode 100644 index 0000000..f1de1f7 --- /dev/null +++ b/yeminy/page/default_page/tpl/content_header.tpl @@ -0,0 +1,5 @@ +
+
+ Yeminy +
+
\ No newline at end of file diff --git a/yeminy/page/default_page/tpl/content_menu.tpl b/yeminy/page/default_page/tpl/content_menu.tpl new file mode 100644 index 0000000..851d486 --- /dev/null +++ b/yeminy/page/default_page/tpl/content_menu.tpl @@ -0,0 +1,14 @@ +
+
+ +
+
\ No newline at end of file diff --git a/yeminy/page/default_page/tpl/default_page.tpl b/yeminy/page/default_page/tpl/default_page.tpl index 84f0cf7..381cae8 100644 --- a/yeminy/page/default_page/tpl/default_page.tpl +++ b/yeminy/page/default_page/tpl/default_page.tpl @@ -6,7 +6,7 @@ ${meta_title} - + ${css} @@ -14,7 +14,10 @@
- show me this + ${content_header} + ${content_menu} + ${content} + ${content_footer}
\ No newline at end of file diff --git a/yeminy/page/default_search/autoload.inc b/yeminy/page/default_search/autoload.inc new file mode 100644 index 0000000..8fd92c5 --- /dev/null +++ b/yeminy/page/default_search/autoload.inc @@ -0,0 +1,2 @@ +param = $param;} + + public function html(){ + $vars = array(); + $vars['title'] = $this->param; + $vars['search'] = ''; + $elements = \SYSTEM\PAGE\text::search($this->param, 'yeminy'); + foreach($elements as $element){ + $vars['search'] .= article::preview($element);} + $vars = array_merge($vars, \SYSTEM\PAGE\text::tag('time')); + return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_search/tpl/search.tpl'), $vars); + } +} \ No newline at end of file diff --git a/yeminy/page/default_search/tpl/search.tpl b/yeminy/page/default_search/tpl/search.tpl new file mode 100644 index 0000000..f74d6a0 --- /dev/null +++ b/yeminy/page/default_search/tpl/search.tpl @@ -0,0 +1,5 @@ +
+

du hast gesucht nach: ${title}

+
+
+${search} \ No newline at end of file diff --git a/yeminy/page/page_yeminy.php b/yeminy/page/page_yeminy.php index f1f74b6..25c1171 100644 --- a/yeminy/page/page_yeminy.php +++ b/yeminy/page/page_yeminy.php @@ -7,4 +7,16 @@ class page_yeminy extends \SYSTEM\API\api_default { public static function default_page($_escaped_fragment_ = NULL){ return (new default_page())->html($_escaped_fragment_);} + + public static function page_list($tag = null){ + return (new default_list($tag))->html();} + + public static function page_article($id){ + return (new default_article($id))->html();} + + public static function page_search($param){ + return (new default_search($param))->html();} + + public static function page_impressum(){ + return (new default_impressum())->html();} } \ No newline at end of file diff --git a/yeminy/sql/DATA_YEMINY.php b/yeminy/sql/DATA_YEMINY.php index 1ee98d2..d53a0af 100644 --- a/yeminy/sql/DATA_YEMINY.php +++ b/yeminy/sql/DATA_YEMINY.php @@ -3,6 +3,7 @@ namespace SQL; class DATA_YEMINY extends \SYSTEM\DB\QI { public static function get_class(){return \get_class();} public static function files_mysql(){ - return array( ); + return array( \SYSTEM\SERVERPATH(new \PSQL(),'/mysql/system_api.sql'), + \SYSTEM\SERVERPATH(new \PSQL(),'/mysql/system_page.sql')); } } \ No newline at end of file diff --git a/yeminy/sql/mysql/system_api.sql b/yeminy/sql/mysql/system_api.sql new file mode 100644 index 0000000..a9ec590 --- /dev/null +++ b/yeminy/sql/mysql/system_api.sql @@ -0,0 +1,3 @@ +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (124, 1, 3, 1, 'list', 'tag', 'STRING'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (126, 1, 2, 1, 'search', 'param', 'STRING'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (125, 1, 2, 1, 'article', 'id', 'STRING'); diff --git a/yeminy/sql/mysql/system_page.sql b/yeminy/sql/mysql/system_page.sql new file mode 100644 index 0000000..a83e309 --- /dev/null +++ b/yeminy/sql/mysql/system_page.sql @@ -0,0 +1,4 @@ +INSERT INTO `system_page` (`id`, `group`, `name`, `state`, `parent_id`, `login`, `type`, `div`, `url`, `func`, `php_class`) VALUES (10, 1, '', 'article', -1, 0, 0, '#div_content', './?page=article&id=${article}', 'init_article', 'default_article'); +INSERT INTO `system_page` (`id`, `group`, `name`, `state`, `parent_id`, `login`, `type`, `div`, `url`, `func`, `php_class`) VALUES (20, 1, '', 'impressum', -1, 0, 0, '#div_content', './?page=impressum', 'init_impressum', 'default_impressum'); +INSERT INTO `system_page` (`id`, `group`, `name`, `state`, `parent_id`, `login`, `type`, `div`, `url`, `func`, `php_class`) VALUES (30, 1, '', 'search', -1, 0, 0, '#div_content', './?page=search¶m=${param}', 'init_search', 'default_search'); +INSERT INTO `system_page` (`id`, `group`, `name`, `state`, `parent_id`, `login`, `type`, `div`, `url`, `func`, `php_class`) VALUES (40, 1, '', 'start', -1, 0, 0, '#div_content', './?page=list&tag=${tag}', 'init_start', 'default_list'); \ No newline at end of file diff --git a/yeminy/sql/mysql/system_text.sql b/yeminy/sql/mysql/system_text.sql new file mode 100644 index 0000000..67ede88 --- /dev/null +++ b/yeminy/sql/mysql/system_text.sql @@ -0,0 +1,6 @@ +INSERT INTO `system_text` (`id`, `lang`, `text`, `author`, `author_edit`, `time_create`, `time_edit`) VALUES ('impressum', 'deDE', '

Vertretungsberechtigt

\r\n

Webcraft Media

\r\n

Verantwortliche

\r\n

Tobias Rechel

\r\n

Ulf Gebhardt

\r\n

Kontakt

\r\n

EMail: t.rechel@webcraft-media.de

\r\n

Rechtlicher Hinweis

\r\n

1.Inhalt des Onlineangebotes

\r\n

Der Autor übernimmt keinerlei Gewähr für die Aktualität, Korrektheit, Vollständigkeit oder Qualität der bereitgestellten Informationen. Haftungsansprüche gegen den Autor, welche sich auf Schäden materieller oder ideeller Art beziehen, die durch die Nutzung oder Nichtnutzung der dargebotenen Informationen bzw. durch die Nutzung fehlerhafter und unvollständiger Informationen verursacht wurden, sind grundsätzlich ausgeschlossen, sofern seitens des Autors kein nachweislich vorsätzliches oder grob fahrlässiges Verschulden vorliegt. Alle Angebote sind freibleibend und unverbindlich. Der Autor behält es sich ausdrücklich vor, Teile der Seiten oder das gesamte Angebot ohne gesonderte Ankündigung zu verändern, zu ergänzen, zu löschen oder die Veröffentlichung zeitweise oder endgültig einzustellen.

\r\n

2.Verweise und Links

\r\n

Bei direkten oder indirekten Verweisen auf fremde Internetseiten ("Links"), die außerhalb des Verantwortungsbereiches des Autors liegen, würde eine Haftungsverpflichtung ausschließlich in dem Fall in Kraft treten, in dem der Autor von den Inhalten Kenntnis hat und es ihm technisch möglich und zumutbar wäre, die Nutzung im Falle rechtswidriger Inhalte zu verhindern. Der Autor erklärt hiermit ausdrücklich, dass zum Zeitpunkt der Linksetzung keine illegalen Inhalte auf den zu verlinkenden Seiten erkennbar waren. Auf die aktuelle und zukünftige Gestaltung, die Inhalte oder die Urheberschaft der gelinkten/verknüpften Seiten hat der Autor keinerlei Einfluss. Deshalb distanziert er sich hiermit ausdrücklich von allen Inhalten aller gelinkten /verknüpften Seiten, die nach der Linksetzung verändert wurden. Diese Feststellung gilt für alle innerhalb des eigenen Internetangebotes gesetzten Links und Verweise sowie für Fremdeinträge in vom Autor eingerichteten Gästebüchern, Diskussionsforen und Mailinglisten. Für illegale, fehlerhafte oder unvollständige Inhalte und insbesondere für Schäden, die aus der Nutzung oder Nichtnutzung solcherart dargebotener Informationen entstehen, haftet allein der Anbieter der Seite, auf welche verwiesen wurde, nicht derjenige, der über Links auf die jeweilige Veröffentlichung lediglich verweist.

\r\n

3. Urheber- und Kennzeichenrecht

\r\n

Der Autor ist bestrebt, in allen Publikationen die Urheberrechte der verwendeten Grafiken, Tondokumente, Videosequenzen und Texte zu beachten, von ihm selbst erstellte Grafiken, Tondokumente, Videosequenzen und Texte zu nutzen oder auf lizenzfreie Grafiken, Tondokumente, Videosequenzen und Texte zurückzugreifen. Alle innerhalb des Internetangebotes genannten und ggf. durch Dritte geschützten Marken- und Warenzeichen unterliegen uneingeschränkt den Bestimmungen des jeweils gültigen Kennzeichenrechts und den Besitzrechten der jeweiligen eingetragenen Eigentümer. Allein aufgrund der bloßen Nennung ist nicht der Schluß zu ziehen, dass Markenzeichen nicht durch Rechte Dritter geschützt sind! Das Copyright für veröffentlichte, vom Autor selbst erstellte Objekte bleibt allein beim Autor der Seiten. Eine Vervielfältigung oder Verwendung solcher Grafiken, Tondokumente, Videosequenzen und Texte in anderen elektronischen oder gedruckten Publikationen ist ohne ausdrückliche Zustimmung des Autors nicht gestattet.

\r\n

4. Datenschutz

\r\n

Sofern innerhalb des Internetangebotes die Möglichkeit zur Eingabe persönlicher oder geschäftlicher Daten (Emailadressen, Namen, Anschriften) besteht, so erfolgt die Preisgabe dieser Daten seitens des Nutzers auf ausdrücklich freiwilliger Basis. Die Inanspruchnahme und Bezahlung aller angebotenen Dienste ist - soweit technisch möglich und zumutbar - auch ohne Angabe solcher Daten bzw. unter Angabe anonymisierter Daten oder eines Pseudonyms gestattet.

\r\n

5. Rechtswirksamkeit dieses Haftungsausschlusses

\r\n

Dieser Haftungsausschluss ist als Teil des Internetangebotes zu betrachten, von dem aus auf diese Seite verwiesen wurde. Sofern Teile oder einzelne Formulierungen dieses Textes der geltenden Rechtslage nicht, nicht mehr oder nicht vollständig entsprechen sollten, bleiben die übrigen Teile des Dokumentes in ihrem Inhalt und ihrer Gültigkeit davon unberührt.

', 2, 2, '2015-05-28 17:05:59', '0000-00-00 00:00:00'); +INSERT INTO `system_text` (`id`, `lang`, `text`, `author`, `author_edit`, `time_create`, `time_edit`) VALUES ('meta_description', 'deDE', 'Yeminy.org is a blog about cooking, poetry, conspiricy, science and programming', 1, 1, '2015-10-10 18:26:29', '2015-10-10 18:26:29'); +INSERT INTO `system_text` (`id`, `lang`, `text`, `author`, `author_edit`, `time_create`, `time_edit`) VALUES ('meta_title', 'deDE', 'Yeminy', 1, 1, '2015-10-10 18:23:38', '2015-10-10 18:23:38'); +INSERT INTO `system_text_tag` (`id`, `tag`) VALUES ('impressum', 'webcraft'); +INSERT INTO `system_text_tag` (`id`, `tag`) VALUES ('meta_description', 'meta'); +INSERT INTO `system_text_tag` (`id`, `tag`) VALUES ('meta_title', 'meta'); \ No newline at end of file