Skip to content
Snippets Groups Projects
Commit b8e1390d authored by Tilman Vatteroth's avatar Tilman Vatteroth :robot:
Browse files

Less-Compiler verbessert

- Alle Less-Dateien gehen jetzt durch den Less-Compiler und werden anhand des pfades und des Änderungsdatums gecached
- less dateien zusammen mit style.php verschoben

JavaScript aus Index.html in starter.js verschoben

Font.less => font.css. gibt probleme mit dem compiler
- TODO: Font.css automatisch generieren
parent cd43d320
Branches
No related tags found
Loading
......@@ -2,3 +2,6 @@
# Enable expirations.
ExpiresActive Off
</IfModule>
RewriteEngine on
RewriteRule ^(.*).less$ less/style.php?name=$1.less
<?php
const root_dir="/"
?>
File moved
......@@ -5,38 +5,26 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="favicon.png" type="image/x-icon" rel="icon">
<link rel="stylesheet" href="css/font.less">
<link rel="stylesheet" href="style.php?type=design&name=design">
<link rel="stylesheet" href="style.php?type=design&name=marquee">
<link rel="stylesheet" href="css/font.css">
<link rel="stylesheet" href="css/design.less">
<link rel="stylesheet" href="css/marquee.less">
<script type="text/javascript" src="js/jquery-2.1.4.min.js"></script>
<script type="text/javascript" src="js/jquery-ui.min.js"></script>
<script type="text/javascript" src="js/marquee.js"></script>
<script type="text/javascript" src="js/panelAPI.js"></script>
<script type="text/javascript" src="js/webfontloader.js"></script>
<script type="text/javascript">
//<![CDATA[
$(document).ready(function(){
window.fontsReady = false;
WebFont.load( {
custom : {
families : ['time-medium', 'time-fat', 'vrr'],
},
active : function() {
window.fontsReady = true;
}
});
var params = location.search.replace('?','').split('&').reduce(function(s,c){var t=c.split('=');s[t[0]]=t[1];return s;},{});
var layoutname = (typeof(params.layout)=="undefined" ? "default" : params.layout);
layout.loadLayout(layoutname);
});
//]]>
</script>
<script type="text/javascript" src="js/loader.js"></script>
<script type="text/javascript" src="js/starter.js"></script>
</head>
<body>
<div data-container="main">
<noscript>
<div data-container="panel" style="
color: white;
text-shadow: black 10px 0px 0px;
font-size: 40pt;
">Diese Seite benötigt JavaScript!</div>
</noscript>
</div>
</body>
</html>
......@@ -99,7 +99,7 @@ layout.insertTemplate = function(name, panel) {
layout.error("get fail of template " + n );
});
$.get("style.php?name=" + n, function(k) {
$.get("panels/" + n + "/style.less", function(k) {
console.log("get success of style " + n)
e.css=k;
doMore();
......@@ -146,4 +146,4 @@ layout.error = function(e) {
console.log("Layout: Error " + e);
},
layout.templates = [];
layout.templates = [];
\ No newline at end of file
$(document).ready(function(){
window.fontsReady = false;
WebFont.load( {
custom : {
families : ['time-medium', 'time-fat', 'vrr'],
},
active : function() {
window.fontsReady = true;
}
});
var params = location.search.replace('?','').split('&').reduce(function(s,c){var t=c.split('=');s[t[0]]=t[1];return s;},{});
var layoutname = (typeof(params.layout)=="undefined" ? "default" : params.layout);
layout.loadLayout(layoutname);
});/**
* Created by tilman on 30.09.15.
*/
File moved
File moved
File moved
<?php
$tmp_dir = "tmp";
chdir("..");
if (!isset($_GET["name"])) {
http_response_code(404);
echo "no valid file given";
return;
}
$less_file = $_GET["name"]; //"panels/departure/style.less";
$debug=isset($_GET["debug"]);
$root_dir="/infoscreen";
$panel = null;
if ($debug)
header("content-type:text/plain;charset=utf8");
if (!file_exists($less_file)) {
http_response_code(404);
echo $less_file . " not found";
return;
}
if (preg_match_all ('/'.'panels\\/((?:[a-z][a-z]+))\\/style\\.less'.'/is', $less_file, $matches))
{
$panel=$matches[1][0];
}
if ($debug && isset($panel))
echo "panel:" . $panel."\n";
$cache_name = "lesscache_".md5($less_file."_".filemtime($less_file)).".css";
$cache_file = $tmp_dir."/".$cache_name;
if (!file_exists($cache_file)) {
require("less/Less.php");
$options = array( 'compress'=>true );
$parser = new Less_Parser($options);
$parser->parseFile("css/colors.less");
try {
if (!isset($panel)) {
$parser->parseFile($less_file);
} else {
$parser->parse("
[data-template=$panel] {
@import \"$less_file\";
}");
}
$content = $parser->getCss();
}catch(Exception $e) {
http_response_code(500);
header("content-type:text/plain;charset=utf8");
echo $e->getMessage();
return;
}
file_put_contents($cache_file,$content);;
}
if ($debug) {
echo "content:\n";
if (!isset($content))
echo file_get_contents($cache_file)."\n";
else
echo $content;
echo "cache-name: " . $cache_name . "\n";
} else {
header("Location: $root_dir/$cache_file");
}
?>
This diff is collapsed.
<?php
header("content-type:text/plain; charset=utf8");
$tmp = "tmp";
$name = $_GET["name"];
$type = $_GET["type"];
$prec_file_content = "";
$prec_file="$tmp/$name.less";
switch ($type) {
case "design":
$less_file = "css/$name.less";
$prec_file_content = "
@import \"css/colors.less\";
@import \"$less_file\";
";
break;
default:
$less_file = "panels/$name/style.less";
$prec_file_content = "
@import \"css/colors.less\";
[data-template=$name] {
@import \"$less_file\";
}
";
break;
}
if (!file_exists($less_file)) {
http_response_code(404);
echo $less_file." not found";
return;
}
require "less/Less.php";
if (!file_exists($prec_file)) {
file_put_contents($prec_file, $prec_file_content);
}
Less_Cache::$cache_dir=$tmp;
$cached_file = Less_Cache::Get(array($prec_file=>"/"));
header("Location: $tmp/$cached_file");
?>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment