correct amp site errors
This commit is contained in:
@@ -11,11 +11,11 @@ configFiles = $(wildcard config/*.php)
|
|||||||
uploadMarker = \
|
uploadMarker = \
|
||||||
$(patsubst build/%.php, build/.uploadMarker/%.php, $(phpFiles)) \
|
$(patsubst build/%.php, build/.uploadMarker/%.php, $(phpFiles)) \
|
||||||
$(patsubst build/amp/%.php, build/.uploadMarker/amp/%.php, $(ampFiles)) \
|
$(patsubst build/amp/%.php, build/.uploadMarker/amp/%.php, $(ampFiles)) \
|
||||||
$(patsubst phpLib/%.php, build/.uploadMarker/phpLib/%.php, $(phpLibFiles)) \
|
|
||||||
$(patsubst config/%.php, build/.uploadMarker/config/%.php, $(configFiles)) \
|
$(patsubst config/%.php, build/.uploadMarker/config/%.php, $(configFiles)) \
|
||||||
build/.uploadMarker/config/.htaccess \
|
build/.uploadMarker/config/.htaccess \
|
||||||
build/.uploadMarker/css/cwsvJudo.css
|
build/.uploadMarker/css/cwsvJudo.css
|
||||||
# $(patsubst phpLib/cwsvJudo/%.php, build/.uploadMarker/phpLib/cwsvJudo/%.php, $(phpLibFiles)) \
|
$(patsubst phpLib/%.php, build/.uploadMarker/phpLib/%.php, $(phpLibFiles)) \
|
||||||
|
#$(patsubst phpLib/cwsvJudo/%.php, build/.uploadMarker/phpLib/cwsvJudo/%.php, $(phpLibFiles)) \
|
||||||
|
|
||||||
.PHONY: all
|
.PHONY: all
|
||||||
all: $(ampFiles) $(phpFiles) build/css/cwsvJudo.css
|
all: $(ampFiles) $(phpFiles) build/css/cwsvJudo.css
|
||||||
@@ -25,7 +25,6 @@ clean:
|
|||||||
$(RM) -rf build
|
$(RM) -rf build
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
|
|
||||||
|
|
||||||
.PHONY: echo
|
.PHONY: echo
|
||||||
echo:
|
echo:
|
||||||
@echo "phpFiles:"
|
@echo "phpFiles:"
|
||||||
@@ -39,7 +38,6 @@ echo:
|
|||||||
@echo "uploadMarker:"
|
@echo "uploadMarker:"
|
||||||
@echo $(uploadMarker)
|
@echo $(uploadMarker)
|
||||||
|
|
||||||
|
|
||||||
.PHONY: ampTest
|
.PHONY: ampTest
|
||||||
ampTest: $(ampFiles)
|
ampTest: $(ampFiles)
|
||||||
|
|
||||||
|
|||||||
@@ -111,6 +111,7 @@ $for(header-includes)$
|
|||||||
$endfor$
|
$endfor$
|
||||||
<script async src="https://cdn.ampproject.org/v0.js"></script>
|
<script async src="https://cdn.ampproject.org/v0.js"></script>
|
||||||
<script async custom-element="amp-sidebar" src="https://cdn.ampproject.org/v0/amp-sidebar-0.1.js"></script>
|
<script async custom-element="amp-sidebar" src="https://cdn.ampproject.org/v0/amp-sidebar-0.1.js"></script>
|
||||||
|
<script async custom-element="amp-video" src="https://cdn.ampproject.org/v0/amp-video-0.1.js"></script>
|
||||||
<script type='application/ld+json'>
|
<script type='application/ld+json'>
|
||||||
{
|
{
|
||||||
"@context": "http://www.schema.org",
|
"@context": "http://www.schema.org",
|
||||||
@@ -161,7 +162,6 @@ $endif$
|
|||||||
title="Judo im Chemnitzer WSV"
|
title="Judo im Chemnitzer WSV"
|
||||||
alt="Judo im Chemnitzer WSV - Logo"
|
alt="Judo im Chemnitzer WSV - Logo"
|
||||||
src="http://cwsvjudo.bplaced.net/ressourcen/graphiken/logos/cwsvJudoLogoWappen.128w.png"
|
src="http://cwsvjudo.bplaced.net/ressourcen/graphiken/logos/cwsvJudoLogoWappen.128w.png"
|
||||||
srcset=http://cwsvjudo.bplaced.net/ressourcen/graphiken/logos/cwsvJudoLogoWappen.x256.png 2x"
|
|
||||||
></amp-img>
|
></amp-img>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +1,21 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
function get_inner_html( $node ) {
|
function get_inner_html( $node ) {
|
||||||
$innerHTML= '';
|
$innerHTML= '';
|
||||||
$children = $node->childNodes;
|
$children = $node->childNodes;
|
||||||
foreach ($children as $child) {
|
foreach ($children as $child) {
|
||||||
$innerHTML .= $child->ownerDocument->saveXML( $child );
|
$innerHTML .= $child->ownerDocument->saveXML( $child );
|
||||||
}
|
}
|
||||||
|
|
||||||
return $innerHTML;
|
return $innerHTML;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Eine Liste mit News abfragen
|
/// Eine Liste mit News abfragen
|
||||||
///
|
///
|
||||||
/// Der Rückgabewert sollte vor Verwendung (und zur Fehlerbeheandlung)
|
/// Der Rückgabewert sollte vor Verwendung (und zur Fehlerbeheandlung)
|
||||||
/// auf NULL und/oder leeres Array getestet werden.
|
/// auf NULL und/oder leeres Array getestet werden.
|
||||||
/// Der Zeichensatz wird von "ISO-8859-1" auf "UTF-8" gesetzt
|
/// Der Zeichensatz wird von "ISO-8859-1" auf "UTF-8" gesetzt
|
||||||
///
|
///
|
||||||
/// @return Array mit News (die wiederum assoziative arrays sind
|
/// @return Array mit News (die wiederum assoziative arrays sind
|
||||||
function getNews($aMysqlConn, $optionsArray = array("dbCharset" => "ISO-8859-1", "outCharset" => "UTF-8", "limit" => "1")){
|
function getNews($aMysqlConn, $optionsArray = array("dbCharset" => "ISO-8859-1", "outCharset" => "UTF-8", "limit" => "1")){
|
||||||
if(!$aMysqlConn) return NULL;
|
if(!$aMysqlConn) return NULL;
|
||||||
@@ -36,24 +36,24 @@ $ret = array();
|
|||||||
// Ansonsten die aktuellsten
|
// Ansonsten die aktuellsten
|
||||||
else{
|
else{
|
||||||
$query = "SELECT * FROM nachrichten";
|
$query = "SELECT * FROM nachrichten";
|
||||||
|
|
||||||
if( is_positive_integer($optionsArray['jahr']) )
|
if( is_positive_integer($optionsArray['jahr']) )
|
||||||
$query .= " WHERE DATE_FORMAT( datum, '%Y') = :jahr";
|
$query .= " WHERE DATE_FORMAT( datum, '%Y') = :jahr";
|
||||||
|
|
||||||
$query .= " ORDER BY datum DESC, nr DESC LIMIT :limit;";
|
$query .= " ORDER BY datum DESC, nr DESC LIMIT :limit;";
|
||||||
|
|
||||||
//echo( $query );
|
//echo( $query );
|
||||||
|
|
||||||
$pdoStatementForQuerryingNews = $aMysqlConn->prepare(
|
$pdoStatementForQuerryingNews = $aMysqlConn->prepare(
|
||||||
$query
|
$query
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$pdoStatementForQuerryingNews->bindParam(':limit', intval($optionsArray['limit']), PDO::PARAM_INT);
|
$pdoStatementForQuerryingNews->bindParam(':limit', intval($optionsArray['limit']), PDO::PARAM_INT);
|
||||||
// $pdoStatementForQuerryingNews->bindParam(':jahr', intval($optionsArray['jahr']), PDO::PARAM_INT);
|
// $pdoStatementForQuerryingNews->bindParam(':jahr', intval($optionsArray['jahr']), PDO::PARAM_INT);
|
||||||
$pdoStatementForQuerryingNews->execute();
|
$pdoStatementForQuerryingNews->execute();
|
||||||
$ret = $pdoStatementForQuerryingNews->fetchAll(PDO::FETCH_ASSOC);
|
$ret = $pdoStatementForQuerryingNews->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
// Zeichensatzkonvertierung
|
// Zeichensatzkonvertierung
|
||||||
foreach($ret as &$entry){
|
foreach($ret as &$entry){
|
||||||
array_walk(
|
array_walk(
|
||||||
@@ -73,13 +73,13 @@ function getHtmlNews($aNews, $someOptions=""){
|
|||||||
$options = getKeyValueArray($someOptions);
|
$options = getKeyValueArray($someOptions);
|
||||||
|
|
||||||
// schlechter Hack solange die Browser nicht von selbst ordentlich trennen
|
// schlechter Hack solange die Browser nicht von selbst ordentlich trennen
|
||||||
$aNews['betreff'] =
|
$aNews['betreff'] =
|
||||||
str_replace("meisterschaft", "­meisterschaft", $aNews['betreff']);
|
str_replace("meisterschaft", "­meisterschaft", $aNews['betreff']);
|
||||||
$aNews['betreff'] =
|
$aNews['betreff'] =
|
||||||
str_replace("turnier", "­turnier", $aNews['betreff']);
|
str_replace("turnier", "­turnier", $aNews['betreff']);
|
||||||
$aNews['betreff'] =
|
$aNews['betreff'] =
|
||||||
str_replace("randori", "­randori", $aNews['betreff']);
|
str_replace("randori", "­randori", $aNews['betreff']);
|
||||||
$aNews['betreff'] =
|
$aNews['betreff'] =
|
||||||
str_replace("spiele", "­spiele", $aNews['betreff']);
|
str_replace("spiele", "­spiele", $aNews['betreff']);
|
||||||
|
|
||||||
$retHtml = "";
|
$retHtml = "";
|
||||||
@@ -94,7 +94,7 @@ $options = getKeyValueArray($someOptions);
|
|||||||
// phpMyAdmin fügte manchmal die falschen Zeilenenden ein
|
// phpMyAdmin fügte manchmal die falschen Zeilenenden ein
|
||||||
$aNews['nachricht'] = str_replace("\r\n", "\n", $aNews['nachricht']);
|
$aNews['nachricht'] = str_replace("\r\n", "\n", $aNews['nachricht']);
|
||||||
|
|
||||||
// falls KEIN explizites PromoImage gesetzt ist, versuche es aus dem
|
// falls KEIN explizites PromoImage gesetzt ist, versuche es aus dem
|
||||||
// Nachrichtentext heraus zu lesen
|
// Nachrichtentext heraus zu lesen
|
||||||
// @toDo: woher bekomme ich width and height bei explizitem promoImg?
|
// @toDo: woher bekomme ich width and height bei explizitem promoImg?
|
||||||
if(!$aNews['promoImg'])
|
if(!$aNews['promoImg'])
|
||||||
@@ -104,7 +104,6 @@ $options = getKeyValueArray($someOptions);
|
|||||||
$aNews['promoImg'] = json_decode($aNews['promoImg'], true);
|
$aNews['promoImg'] = json_decode($aNews['promoImg'], true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// var_dump($aNews);
|
|
||||||
if( !filter_var($aNews['promoImg'], FILTER_VALIDATE_URL) && !filter_var($aNews['promoImg']['src'], FILTER_VALIDATE_URL) ){
|
if( !filter_var($aNews['promoImg'], FILTER_VALIDATE_URL) && !filter_var($aNews['promoImg']['src'], FILTER_VALIDATE_URL) ){
|
||||||
$domDoc = new DOMDocument();
|
$domDoc = new DOMDocument();
|
||||||
$domDoc->loadHTML( mb_convert_encoding($aNews['nachricht'], 'HTML-ENTITIES', "UTF-8") );
|
$domDoc->loadHTML( mb_convert_encoding($aNews['nachricht'], 'HTML-ENTITIES', "UTF-8") );
|
||||||
@@ -125,12 +124,10 @@ $options = getKeyValueArray($someOptions);
|
|||||||
}
|
}
|
||||||
|
|
||||||
$domDoc->formatOutput = true;
|
$domDoc->formatOutput = true;
|
||||||
$aNews['nachricht'] = get_inner_html( $domDoc->getElementsByTagName('body')[0] );
|
$aNews['nachricht'] = get_inner_html( $domDoc->getElementsByTagName('body')[0] );
|
||||||
// $aNews['nachricht'] = str_replace(" ", "", $aNews['nachricht']);
|
|
||||||
// var_dump($aNews);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if( !empty($aNews['promoImg']) ){
|
if( !empty($aNews['promoImg']) ){
|
||||||
if( !empty($aNews['promoImg']['src']) ){
|
if( !empty($aNews['promoImg']['src']) ){
|
||||||
$retHtml .= "<img class=\"newsPromoImage\" "
|
$retHtml .= "<img class=\"newsPromoImage\" "
|
||||||
@@ -141,14 +138,15 @@ $options = getKeyValueArray($someOptions);
|
|||||||
if( filter_var($aNews['promoImg'], FILTER_VALIDATE_URL) ){
|
if( filter_var($aNews['promoImg'], FILTER_VALIDATE_URL) ){
|
||||||
$retHtml .= "<img class=\"newsPromoImage\" src=\"".$aNews['promoImg']."\" />";
|
$retHtml .= "<img class=\"newsPromoImage\" src=\"".$aNews['promoImg']."\" />";
|
||||||
}
|
}
|
||||||
|
|
||||||
// Für den Fall einer ampSeite müssen die imgTags angepasst werden
|
// Für den Fall einer ampSeite müssen die imgTags angepasst werden
|
||||||
if( strpos( $_SERVER['ORIG_PATH_TRANSLATED'], "pages/amp" ) !== false ){
|
if( strpos( $_SERVER['ORIG_PATH_TRANSLATED'], "pages/amp" ) !== false ){
|
||||||
$retHtml = str_replace("<img", "<amp-img layout=\"responsive\" width=\"".($aNews['promoImg']['width']?$aNews['promoImg']['width']:"200")."\" height=\"".($aNews['promoImg']['height']?$aNews['promoImg']['height']:"133")."\"", $retHtml);
|
$retHtml = str_replace("<img", "<amp-img layout=\"responsive\" width=\"".($aNews['promoImg']['width']?$aNews['promoImg']['width']:"200")."\" height=\"".($aNews['promoImg']['height']?$aNews['promoImg']['height']:"133")."\"", $retHtml);
|
||||||
$retHtml = str_replace("/>", "></amp-img>", $retHtml);
|
$retHtml = str_replace("/>", "></amp-img>", $retHtml);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$retHtml .= "<div class=\"newsText\">" . $aNews['nachricht'] . "</div>";
|
|
||||||
|
$retHtml .= "<div class=\"newsText\">".ampTagReplace( $aNews['nachricht'] )."</div>";
|
||||||
$retHtml .= "</div>";
|
$retHtml .= "</div>";
|
||||||
$retHtml .= "<div class=\"newsFooter\">";
|
$retHtml .= "<div class=\"newsFooter\">";
|
||||||
$retHtml .= "<div class=\"newsAutor\">".$aNews['autor']."</div>";
|
$retHtml .= "<div class=\"newsAutor\">".$aNews['autor']."</div>";
|
||||||
@@ -200,4 +198,36 @@ function getHtmlNewsTitle(){
|
|||||||
}
|
}
|
||||||
return $htmlTitle;
|
return $htmlTitle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function img2ampimg($inText){
|
||||||
|
$outText = $inText;
|
||||||
|
// Zuweilen sind im Nachtrichtentext selbst auch schon Bilder, auch diese müssen bei ampSeiten angepasst werden
|
||||||
|
if( strpos( $_SERVER['ORIG_PATH_TRANSLATED'], "pages/amp" ) !== false ){
|
||||||
|
// bei bereits im Newstext vorhandenen Bildern, gehen wir davon aus, dass widt+heigth bereits gesetzt sind
|
||||||
|
$outText = str_replace("<img ", "<amp-img layout=\"responsive\" ", $outText);
|
||||||
|
$outText = str_replace("/>", "></amp-img>", $outText);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $outText;
|
||||||
|
}
|
||||||
|
|
||||||
|
function video2ampvideo($inText){
|
||||||
|
$outText = $inText;
|
||||||
|
// Zuweilen sind im Nachtrichtentext selbst auch schon Bilder, auch diese müssen bei ampSeiten angepasst werden
|
||||||
|
if( strpos( $_SERVER['ORIG_PATH_TRANSLATED'], "pages/amp" ) !== false ){
|
||||||
|
// bei bereits im Newstext vorhandenen Bildern, gehen wir davon aus, dass widt+heigth bereits gesetzt sind
|
||||||
|
$outText = str_replace("<video ", "<amp-video ", $outText);
|
||||||
|
$outText = str_replace("<source ", "<source type=\"video/webm\" ", $outText);
|
||||||
|
$outText = str_replace("</video>", "</amp-video>", $outText);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $outText;
|
||||||
|
}
|
||||||
|
|
||||||
|
function ampTagReplace($inText){
|
||||||
|
// replace the amp tags
|
||||||
|
return video2ampvideo(
|
||||||
|
img2ampimg( $inText )
|
||||||
|
);
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|||||||
Reference in New Issue
Block a user