Stream
von Susanne
aus Braunschweig
The CRAZY Robot
von Malibu123456
aus Berlin
Infinity Hole
von Brunno
aus Naunburg
Haiku
von Lylli
Klassenfahrt :3 2024
von E & A
aus Wolfsburg
Zippi
von Künstler
Mein Mondrian
von Lukas
aus München
Ohne Titel
von Anonym
Stream
von Susanne
aus Braunschweig
The CRAZY Robot
von Malibu123456
aus Berlin
Infinity Hole
von Brunno
aus Naunburg
Haiku
von Lylli
Filter:
Suche:
/* LOGIN_CHECK(); $DOMSTR_TITLE = 'Hall of Fame'; $COMPONENTS['HALLOFFAME'] = []; if (isset($_GET['showall'])) { $DOMSTR_BODY_ATTRIBUTES .= 'get-has-showall'; } global $BLUEPRINTS; global $DOMSTR_METATAGS; $BP = $BLUEPRINTS; echo $BP['rMenuBar']('Hall of Fame'); // tool dropdown $toolname_arr = [ ['value' => 'kunststyletest', 'text' => 'Kunst-Style Test'], ['value' => 'mondrianmaker', 'text' => 'Mondrian Maker'], ['value' => 'robotmaker', 'text' => 'Robot Maker'], ['value' => 'bubblemaker', 'text' => 'Bubble Maker'], ['value' => 'gridmaker', 'text' => 'Grid Maker'], ['value' => 'stop-motion-tool', 'text' => 'Stop-Motion Tool'], ['value' => 'haikuwriter', 'text' => 'Haiku Writer'], ['value' => 'collagetool', 'text' => 'Collage Tool'] ]; $ddobj_tool = []; $ddobj_tool['name'] = 'tool'; if (isset($_GET['tool'])) { $ddobj_tool['value'] = $_GET['tool']; } $ddobj_tool['defaulttext'] = 'alle Kreativtools'; $ddobj_tool['onvaluechange_callback'] = 'HALLOFFAME.updateThumbPoolDelayed'; foreach ($toolname_arr as $o) { $ddobj_tool['options'][] = ['value' => $o['value'], 'text' => $o['text']]; } $dropdown_tool = $BLUEPRINTS['rDropDown']($ddobj_tool); // city dropdown $baseurl = 'data/halloffame/'; $globqueryurl = $baseurl . '*/*/*/*/*/*/info.json'; $urls = glob($globqueryurl); $city_arr_arr = []; foreach ($urls as $url) { if (!file_exists(dirname($url) . '/is.deleted') && file_exists(dirname($url) . '/is.public')) { $infoobj = json2obj(file_get_contents($url)); $city = rObjValue($infoobj, 'city'); $citysortstr = rSortStr($city); if ($citysortstr !== '') { if (!isset($city_arr_arr[$citysortstr])) { $city_arr_arr[$citysortstr] = [ 'cityname' => htmlspecialchars($city), 'count' => 0 ]; } else { $city_arr_arr[$citysortstr]['count']++; } } } } // 2 min pro stadt $city_arr = []; foreach ($city_arr_arr as $k => $info) { if ($info['count'] > 1) { $city_arr[$k] = ($info['cityname']); } } // ksort($city_arr); $ddobj_city = []; $ddobj_city['name'] = 'city'; if (isset($_GET['city'])) { $ddobj_city['value'] = $_GET['city']; } $ddobj_city['defaulttext'] = 'alle Städte'; $ddobj_city['onvaluechange_callback'] = 'HALLOFFAME.updateThumbPoolDelayed'; foreach ($city_arr as $value => $text) { $ddobj_city['options'][] = ['value' => $value, 'text' => $text]; } $dropdown_city = $BLUEPRINTS['rDropDown']($ddobj_city); // searchfield inputtext $tiobj_searchfield = []; $tiobj_searchfield['name'] = 'searchfield'; $tiobj_searchfield['placeholder'] = 'Name / Werkstitel'; if (isset($_GET['search'])) { $tiobj_searchfield['value'] = $_GET['search']; } $tiobj_searchfield['onvaluechange_callback'] = 'HALLOFFAME.updateThumbPoolDelayed'; $textinput_searchfield = $BLUEPRINTS['rTextInput']($tiobj_searchfield); // thumbpool function rObjSearchHit($obj, $proparr, $searchterm) { $searchterm = rSearchStr($searchterm); $searchinstr = ''; foreach ($proparr as $prop) { $searchinstr .= ' ' . rObjValue($obj, $prop); } $searchinstr = rSearchStr($searchinstr); $hit = strpos($searchinstr, $searchterm) !== false; return $hit; } $COMPONENTS['HALLOFFAME']['rThumbPool'] = function ($parobj = null) { global $LOGGEDIN; $searchterm = rObjValue($parobj, 'searchterm'); $cityfilter = rObjValue($parobj, 'cityfilter'); $toolfilter = rObjValue($parobj, 'toolfilter'); $showall = rObjValue($parobj, 'showall', false); $maxviewed = 500; $showall_button = ''; if ($showall) { $maxviewed = 99999; } $baseurl = 'data/halloffame/'; $globqueryurl = $baseurl . '*/*/*/*/*/*/info.json'; $urls = glob($globqueryurl); $thumbpool_dom = ''; // collect data $infoobj_arr = []; foreach ($urls as $url) { $ispublic = file_exists(dirname($url) . '/is.public'); if ($LOGGEDIN || $ispublic) { $infoobj = json2obj(file_get_contents($url)); if ($ispublic) { $infoobj['___ispublic'] = true; } $filterhits = 0; $toolfilter_hit = false; $cityfilter_hit = false; $searchterm_hit = false; // filter by tool if ($toolfilter === '' || $toolfilter === rObjValue($infoobj, 'toolslug')) { $toolfilter_hit = true; } // filter by city if ($cityfilter === '' || $cityfilter === rSortStr(rObjValue($infoobj, 'city'))) { $cityfilter_hit = true; } // filter by searchterm if ($searchterm === '' || rObjSearchHit($infoobj, ['username', 'artworktitle', 'city'], $searchterm)) { $searchterm_hit = true; } // collect if all match if ($toolfilter_hit && $cityfilter_hit && $searchterm_hit) { $infoobj_arr[$infoobj['id']] = $infoobj; } } } krsort($infoobj_arr); // build dom $thumbpool_dom = ''; $n = 0; foreach ($infoobj_arr as $k => $infoobj) { $id = $infoobj['id']; $cleanid = ID2CleanID($id); $username = rObjValue($infoobj, 'username'); if ($username === '') { $username = 'Anonym'; } $artworktitle = rObjValue($infoobj, 'artworktitle'); if ($artworktitle === '') { $artworktitle = 'Ohne Titel'; } $tool = rObjValue($infoobj, 'toolslug'); $city = rObjValue($infoobj, 'city'); $time = rObjValue($infoobj, 'time'); $searchstr_username = rSearchStr($username); $searchstr_city = rSearchStr($city); $searchstr_artworktitle = rSearchStr($artworktitle); if ($city !== '') { $city_arr[rSortStr($city)] = htmlspecialchars($city); } $artworktitle_dom = '
' . htmlspecialchars($artworktitle) . '
'; $username_dom = '
von ' . htmlspecialchars($username) . '
'; $city_dom = ''; if ($city !== '') { $city_dom = '
aus ' . htmlspecialchars($city) . '
'; } $imgsrc = $baseurl . $id . 'stage.jpg'; if (file_exists($imgsrc)) { $largeimgsrc = getOptimizedImageSrc($imgsrc, 1920); } else { $imgsrc = $baseurl . $id . 'stage.gif'; $largeimgsrc = $imgsrc; } $thumbimgsrc = getOptimizedImageSrc($imgsrc, 256); $wh = getimagesize($thumbimgsrc); $href = HTMLRELPATH . 'artwork_' . $cleanid; // edit box /////////////////////////////////// $editbox = ''; if ($LOGGEDIN) { $makepublicbbt = ''; if (!isset ($infoobj['___ispublic'])) { $makepublicbbt = '
veröffentlichen
'; } $deletebt = '
löschen
'; $editbox = '
' . $makepublicbbt . ' ' . $deletebt . '
'; } //////////////////////////////////////////// $img = '' . $searchstr_artworktitle . ' von ' . $searchstr_username . ' aus ' . $searchstr_city . ''; $thumbpool_dom .= '
' . $img . '
' . $artworktitle_dom . $username_dom . $city_dom . '
' . $editbox . '
'; if ($n >= $maxviewed) { $showall_button = '
alle anzeigen
'; break; } $n++; } return $thumbpool_dom . $showall_button . ''; }; $COMPONENTS['HALLOFFAME']['rSlider'] = function ($parobj = null) { global $BLUEPRINTS; global $LOGGEDIN; global $USER_ROLE; // edit mode /////////////////////////////////// if ($LOGGEDIN && $USER_ROLE === 'admin') { return '

Abmelden

Hall of Fame bearbeiten:

'; } //////////////////////////////////////////////////// $baseurl = 'data/halloffame/'; $globqueryurl = $baseurl . '*/*/*/*/*/*/info.json'; $urls = glob($globqueryurl); $thumbpool_dom = ''; // collect data $slots = []; $tools = []; foreach ($urls as $url) { if (file_exists(dirname($url) . '/is.public')) { $infoobj = json2obj(file_get_contents($url)); $tool = rObjValue($infoobj, 'toolslug'); if (!isset ($slots[$tool])) { $slots[$tool] = []; $tools[] = $tool; } $slots[$tool][$infoobj['id']] = $infoobj; } } $infoobj_arr = []; shuffle($tools); foreach ($tools as $tool) { $randkey = array_rand($slots[$tool], 1); $infoobj_arr[] = $slots[$tool][$randkey]; } // build sliderobj $sliderobj = []; $sliderobj['mediaboxes'] = []; $sliderobj['class'] = 'bestofslider'; foreach ($infoobj_arr as $infoobj) { $id = $infoobj['id']; $username = rObjValue($infoobj, 'username'); if ($username === '') { $username = 'Anonym'; } $artworktitle = rObjValue($infoobj, 'artworktitle'); if ($artworktitle === '') { $artworktitle = 'Ohne Titel'; } $tool = rObjValue($infoobj, 'toolslug'); $city = rObjValue($infoobj, 'city'); $artworktitle_dom = '
' . htmlspecialchars($artworktitle) . '
'; $username_dom = '
von ' . htmlspecialchars($username) . '
'; $city_dom = ''; if ($city !== '') { $city_dom = '
aus ' . htmlspecialchars($city) . '
'; } $closebt_onclick = 'window.history.back()'; if (!isset ($_SESSION['LASTPAGENAME'])) { $closebt_onclick = 'window.location="' . ROOTPATH . BASEDIR . '";'; } $imgsrc = $baseurl . $id . 'stage.jpg'; if (file_exists($imgsrc)) { $largeimgsrc = getOptimizedImageSrc($imgsrc, 1920); } else { $imgsrc = $baseurl . $id . 'stage.gif'; $largeimgsrc = $imgsrc; } $mediabox_obj = []; $mediabox_obj['mediasrc'] = $largeimgsrc; $mediabox_obj['headline'] = $artworktitle_dom . $username_dom . $city_dom; $sliderobj['mediaboxes'][] = $mediabox_obj; } return $BLUEPRINTS['rMediaSliderBox']($sliderobj); }; //// ADMIN /////////////// $COMPONENTS['HALLOFFAME']['deleteById'] = function ($parobj) { // marks halloffame entry as deleted // note: marked posts should be deleted regulary global $BLUEPRINTS; global $COMPONENTS; global $USER_ROLE; if ($USER_ROLE === 'admin') { $deleteid = rObjValue($parobj, 'deleteid'); if (isValidId($deleteid)) { deleteDir('data/halloffame/' . $deleteid, true); return $COMPONENTS['HALLOFFAME']['rThumbPool'](); } } return 'if feel empty'; }; $COMPONENTS['HALLOFFAME']['makepublicById'] = function ($parobj) { global $BLUEPRINTS; global $COMPONENTS; global $USER_ROLE; if ($USER_ROLE === 'admin') { $makepublicid = rObjValue($parobj, 'makepublicid'); if (isValidId($makepublicid)) { $path = 'data/halloffame/' . $makepublicid . 'is.public'; saveJSON($path, '{}'); return $COMPONENTS['HALLOFFAME']['rThumbPool'](); } } return 'if feel empty'; }; ?>
Buntwal
von Anke
One Block
von Junis
Monndrian
von Dominik Büchler
aus Altlichtenwarth
sei du selbst
von bin auf dem Weg
aus jede Person
LiJa
von Li
aus Lüneburg
Uhu bombe 2
von Taylan birgin
aus Salzgitter
Ohne Titel
von Anonym
Haiku
von Ute
aus Augsburg
Buntwal
von Anke
One Block
von Junis
Monndrian
von Dominik Büchler
aus Altlichtenwarth
sei du selbst
von bin auf dem Weg
aus jede Person
Filter:
Suche:
*/