Merge branch 'master' of mojotrollz.eu:hosting

Conflicts:
	Neopolimatrix/neopolimatrix/page/default_page/tpl/default_page.tpl
This commit is contained in:
Naeltard 2015-01-23 17:21:11 +01:00
commit d1a8b74159
21 changed files with 172 additions and 113 deletions

View File

@ -1,3 +1,3 @@
RewriteEngine On RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. RewriteCond %{HTTP_HOST} !^www\.neopolimatrix\.eu [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}%{REQUEST_URI}$1 [R=301,L] RewriteRule ^(.*)$ http://www.neopolimatrix.eu/$1 [R=301,L]

View File

@ -9,5 +9,5 @@ require_once 'config.php';
\SYSTEM\system::register_errorhandler_dbwriter(); \SYSTEM\system::register_errorhandler_dbwriter();
\SYSTEM\system::register_errorhandler_jsonoutput(); \SYSTEM\system::register_errorhandler_jsonoutput();
echo \SYSTEM\API\api::run('\SYSTEM\API\verify', 'page_neopolimatrix', array_merge($_POST,$_GET), 1, false, true)->html(); echo \SYSTEM\API\api::run('\SYSTEM\API\verify', 'page_neopolimatrix', array_merge($_POST,$_GET), 1, true, true)->html();
new \SYSTEM\LOG\COUNTER("Page was called sucessfully."); new \SYSTEM\LOG\COUNTER("Page was called sucessfully.");

View File

@ -0,0 +1,75 @@
Die Dümmste Programmiersprache der Welt - Java.
===============================================
Into
----
Java lässt sich am besten an Minecraft erklären, um die Sprachfeatures zu
verstehen. Die elementaren Features von Minecraft sind:
- es ist langsam(performace)
- es stürzt ab(fehler zur laufzeit)
- es lässt sich gar nicht erst starten
Diese drei Freatures sind nicht Problem von Minecraft, sondern elementare
Sprachfeatures. Im folgenden soll das anhand von fundierteren Beispielen
erörtert und bestätigt werden.
Performace
----------
Wenn du mit einem Java-Jünger über die Performace sprichst, dann wird er dir
sagen: Java ist "prinzipiell" genauso schnell wie C - wenn nicht schneller.
Hier kannst du das Gespräch abbrechen, da dieser Satz dem Sprecher absolute
Ahnungslosigkeit nachweist. Prinziepiell gilt bezüglich der Performance:
Assembler > C > C++ > Alle anderen Sinnvollen Sprachen > Java
Dabei gilt allerdings nicht per se, dass Assembler schneller ist - es besteht
nur die Möglichkeit mit Assembler(lesbarer Maschinencode) die schnellsten
Programme zu schreiben. Die höheren Sprachen wie C und C++ erlauben für den
Menschen besser lesbaren Code zu schreiben. Dafür wird an möglicher Performance
eingebüßt. Assembler, C und C++ arbeiten dabei direkt auf unserer
Prozessorarchitektur und bilden diese ab. Das ist sinnvoll!
Java geht da ein etwas anderen Weg. Um den zu verstehen muss erstmal ein wenig
ausgeholt werden: Unsere Prozessorarchitektur ist vereinheitlicht unter dem
Standart x86 (und die Zahl steht dabei für das Jahr - lol) bzw x64 (doppelt so
großer Speicher, selbe Architektur). Nun hat sich leider aus monetären Gründen
drei verschiedene Betriebsysteme entwickelt, die nicht kompatibel untereinander
sind, aber alle auf der selben Hardware laufen. Genau hier setzt Java an.
Java ist ein Programm, dass es für diese drei Betriebsysteme jeweils gibt.
Dieses Programm erstellt dann eine virtuelle Maschiene, die mit den
Java-Befehlen umgehen kann. Ziel des ganzen ist es wieder Kompatibilität
zwischen den Betriebsystemen herzustellen (ein Programm kann auf allen drei
ausgeführt werden) - die per se vorhanden ist, da die Hardware ja die gleiche
ist. Schon hier ist die Retardedness von Java zu erkennen. Und jedem sollte klar
sein, dass wenn ich auf einer Maschine eine virtuelle Maschine ausführe, dass
das auf keinen Fall schnell(er) von statten gehen kann, als wenn ich es direkt
auf der Maschine ausführe.
OOP
---
OOP (Objekt orientiertes Programmieren) wird in Java groß geschrieben. Dabei
haben die Entwickler vergessen, dass das nur ein Hilfsmittel ist, dass in den
seltesten Fällen sinnvoll einsetzbar ist. Alles in Java ist ein Objekt
- das lustige dabei - alles erbt vom selben Objekt (genannt "Object").
Das führt aber zwangsläufig dazu, dass OOP in Java gar nicht mehr möglich ist -
betrachte folgendes Beispiel:
a type Apfel erbt von Object
b type Banane erbt von Object
Vergleiche a mit b -> Oh beides ist ein Object... lol
Mache a zu b -> Das geht - da beide Objects sind - und da haben wir den schönen
Äpfel = Bananen.
Warum sollte man zwei absolut unterschiedliche Objekte von einem gemeinsammen
erben lassen? Das ist dumm! Und das schöne - in Java wird das erzwungen ;-)
(Jeder der schonmal eine clone() oder copy() Funktion für ein Objekt geschrieben
hat wird schnell festgestellt haben, dass das keine Sprache ist die ein
denkender Mensch freiwillig einsetzen würde)
Neben den verirrungen innerhalb von OOP ist es generell nciht sonderlich
sinnvoll viele Objekte anzulegen - die kosten Speicherplatz - und wer Minecraft
gespielt hat kennt das Problem - Ram = Voll = Always. Selbiges für den Server;
warum sollte eine Klötzchenwelt 2-4gb ram auf dem Server verbrauchen?
Es gibt dafür nur einen Grund - Java ;-)

View File

@ -2,6 +2,6 @@
SYSTEM\autoload::registerFolder(dirname(__FILE__),''); SYSTEM\autoload::registerFolder(dirname(__FILE__),'');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/default_page',''); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/default_page','');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/default_list',''); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/default_list','');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/default_element',''); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/default_article','');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/impressum',''); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/default_impressum','');

View File

@ -0,0 +1,24 @@
<?php
class default_article extends \SYSTEM\PAGE\Page {
var $article_id = null;
public function __construct($id) {
$this->article_id = $id;
}
public function get_text(){
$result = '';
$element = elements::getText($this->article_id);
$element['title'] = $element['id'];
$result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_article/tpl/element.tpl'), $element);
return $result;
}
public function html(){
$vars = array();
$vars['text'] = $this->get_text();
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_article/tpl/default_article.tpl'), $vars);
}
}

View File

@ -1,30 +0,0 @@
<?php
class default_element extends \SYSTEM\PAGE\Page {
var $text_id = null;
public function __construct($text_id) {
$this->text_id = $text_id;
}
public function get_text(){
$result = '';
$element = elements::getText($this->text_id);
$element['title'] = $element['id'];
$result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_element/element.tpl'), $element);
return $result;
}
public function html(){
$vars = array();
$vars['text'] = $this->get_text();
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_element/default_element.tpl'), $vars);
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/

View File

@ -0,0 +1,8 @@
<?php
class default_impressum extends \SYSTEM\PAGE\Page {
public function html(){
$vars = array();
$vars = array_merge($vars, \SYSTEM\locale::getStrings(101));
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_impressum/tpl/impressum.tpl'), $vars);
}
}

View File

@ -1,6 +1,9 @@
<?php <?php
class default_list extends \SYSTEM\PAGE\Page { class default_list extends \SYSTEM\PAGE\Page {
public static function js(){
return array( \SYSTEM\WEBPATH(new PPAGE(),'default_list/js/default_list.js'));}
var $filter = null; var $filter = null;
public function __construct($filter) { public function __construct($filter) {
$this->filter = $filter; $this->filter = $filter;
@ -21,7 +24,7 @@ class default_list extends \SYSTEM\PAGE\Page {
case 6: case 6:
return '%demokratie%'; return '%demokratie%';
default: default:
return 'filter fail';} return '%';}
} }
@ -31,7 +34,7 @@ class default_list extends \SYSTEM\PAGE\Page {
$elements = elements::getAllElementsOfTag($this->switch_filter($tag)); $elements = elements::getAllElementsOfTag($this->switch_filter($tag));
foreach($elements as $element){ foreach($elements as $element){
$element['title'] = $element['id']; $element['title'] = $element['id'];
$result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_list/element.tpl'), $element); $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_list/tpl/element.tpl'), $element);
} }
return $result; return $result;
} }
@ -39,12 +42,6 @@ class default_list extends \SYSTEM\PAGE\Page {
public function html(){ public function html(){
$vars = array(); $vars = array();
$vars['list'] = $this->generate_list(); $vars['list'] = $this->generate_list();
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_list/default_list.tpl'), $vars); return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_list/tpl/default_list.tpl'), $vars);
} }
} }
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/

View File

@ -0,0 +1,4 @@
function init_start(){
$(".list_element").click(function(){
system.load('article;article.'+$(this).attr('text_id'))});
}

View File

@ -6,8 +6,8 @@ class default_page extends \SYSTEM\PAGE\Page {
'<script type="text/javascript" language="JavaScript" src="'.SYSTEM\WEBPATH(new PLIB(),'jqbootstrapvalidation/jqBootstrapValidation.js').'"></script>'. '<script type="text/javascript" language="JavaScript" src="'.SYSTEM\WEBPATH(new PLIB(),'jqbootstrapvalidation/jqBootstrapValidation.js').'"></script>'.
'<script type="text/javascript" language="JavaScript" src="'.SYSTEM\WEBPATH(new PLIB(),'hashmask/jquery.md5.js').'"></script>'. '<script type="text/javascript" language="JavaScript" src="'.SYSTEM\WEBPATH(new PLIB(),'hashmask/jquery.md5.js').'"></script>'.
'<script type="text/javascript" language="JavaScript" src="'.SYSTEM\WEBPATH(new PLIB(),'hashmask/jquery.sha1.js').'"></script>'. '<script type="text/javascript" language="JavaScript" src="'.SYSTEM\WEBPATH(new PLIB(),'hashmask/jquery.sha1.js').'"></script>'.
'<script src="'.SYSTEM\WEBPATH(new PPAGE(),'default_page/js/state_init.js').'"></script>'. '<script type="text/javascript" language="JavaScript" src="./api.php?call=files&cat=sys&id=system.js"></script>'.
'<script src="'.SYSTEM\WEBPATH(new PPAGE(),'default_page/js/content.js').'"></script>'; '<script src="'.SYSTEM\WEBPATH(new PPAGE(),'default_page/js/default_page.js').'"></script>';
} }
@ -19,21 +19,21 @@ class default_page extends \SYSTEM\PAGE\Page {
'<link href="'.SYSTEM\WEBPATH(new PLIB(),'bootstrap/css/bootstrap-responsive.min.css').'" rel="stylesheet">'; '<link href="'.SYSTEM\WEBPATH(new PLIB(),'bootstrap/css/bootstrap-responsive.min.css').'" rel="stylesheet">';
} }
public function generate_elementlist(){ /*public function generate_elementlist(){
$result = ''; $result = '';
$elements = elements::getAllElementsOfTag('%'); $elements = elements::getAllElementsOfTag('%');
foreach($elements as $element){ foreach($elements as $element){
$element['title'] = $element['id']; $element['title'] = $element['id'];
$result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/element.tpl'), $element); $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/tpl/element.tpl'), $element);
} }
return $result; return $result;
} }*/
public function html(){ public function html(){
$vars = array(); $vars = array();
$vars['js'] = $this->js(); $vars['js'] = $this->js();
$vars['css'] = $this->css(); $vars['css'] = $this->css();
$vars['content'] = $this->generate_elementlist(); //$vars['content'] = $this->generate_elementlist();
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/default_page.tpl'), $vars); return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'default_page/tpl/default_page.tpl'), $vars);
} }
} }

View File

@ -1,41 +0,0 @@
$(document).ready(function() {
tabs();
impressum();
load_list(1);
});
function btn_element(){
$(".list_element").click(function(){
load_element($(this).attr('text_id'));
});
}
function load_element(text_id){
$('#contentframe').load('./?page=get_element&text_id=' + text_id, function(){
});
}
function impressum(){
$("#btn_impressum").click(function(){
$('#contentframe').load('./?page=impressum', function(){
});
$(this).tab('show');
});
}
function tabs(){
$("#tabs_user_list a").click(function(){
load_list($(this).attr('filter'));
$(this).tab('show');
btn_element();
});
}
function load_list(filter){
$('#contentframe').load('./?page=get_list&filter=' + filter, function(){
btn_element();
});
}

View File

@ -0,0 +1,39 @@
$(document).ready(function() {
new SYSTEM('./api.php',1,'start;filter.1');
tabs();
impressum();
});
function impressum(){
$("#btn_impressum").click(function(){
system.load('impressum');});
}
function tabs(){
$("#tabs_user_list a").click(function(){
$('#tabs_user_list li').each(function(){
$(this).removeClass('active');});
$(this).parent().addClass('active');
system.load('start;filter.'+$(this).attr('filter'));
//btn_element();
});
}
/*function btn_element(){
$(".list_element").click(function(){
system.load('article;article.'+$(this).attr('text_id'))
//load_element($(this).attr('text_id'));
});
}
function load_element(text_id){
$('#contentframe').load('./?page=get_element&text_id=' + text_id, function(){
});
}
function load_list(filter){
$('#contentframe').load('./?page=get_list&filter=' + filter, function(){
btn_element();
});
}*/

View File

@ -1,17 +0,0 @@
<?php
class impressum extends \SYSTEM\PAGE\Page {
public function html(){
$vars = array();
$vars = array_merge($vars, \SYSTEM\locale::getStrings(101));
return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'impressum/impressum.tpl'), $vars);
}
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/

View File

@ -3,14 +3,14 @@ class page_neopolimatrix extends \SYSTEM\API\api_default {
public static function default_page(){ public static function default_page(){
return new default_page();} return new default_page();}
public static function page_get_list($filter){ public static function page_list($filter=1){
return new default_list($filter);} return new default_list($filter);}
public static function page_get_element($text_id){ public static function page_article($id){
return new default_element($text_id);} return new default_article($id);}
public static function page_impressum(){ public static function page_impressum(){
return new impressum();} return new default_impressum();}
} }