{"id":60940,"date":"2023-09-30T03:01:42","date_gmt":"2023-09-29T17:01:42","guid":{"rendered":"http:\/\/www.rjmprogramming.com.au\/ITblog\/?p=60940"},"modified":"2023-09-30T11:47:37","modified_gmt":"2023-09-30T01:47:37","slug":"inhouse-wordpress-image-filter-arguments-tutorial","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-image-filter-arguments-tutorial\/","title":{"rendered":"Inhouse WordPress Image Filter Arguments Tutorial"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Inhouse WordPress Image Filter Arguments Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game_filter_args.gif\" title=\"Inhouse WordPress Image Filter Arguments Tutorial\" style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Inhouse WordPress Image Filter Arguments Tutorial<\/p><\/div>\n<p>The next step to improving on <font color=blue>yesterday&#8217;s<\/font> <a title='Inhouse WordPress Image Filter Source Tutorial' href='#iwpifst'>Inhouse WordPress Image Filter Source Tutorial<\/a> &#8230;<\/p>\n<ul>\n<li>WordPress <i>Topic<\/i> theme &#8230; today we have a new layer of functionality involving &#8230;<\/li>\n<li><font color=blue>Image PHP <i>Filter<\/i> theme &#8230; using PHP <a target=_blank title='GD and Image Functions' href='http:\/\/php.net\/manual\/en\/ref.image.php'>GD<\/a> manipulations<\/font><\/li>\n<\/ul>\n<p> &#8230; would be for a user familiar with PHP <a target=_blank title='GD and Image Functions' href='http:\/\/php.net\/manual\/en\/ref.image.php'>GD<\/a> image manipulations to be able to specify their own arguments to PHP calls like &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, 100, 200, 50);<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; example, where the <i>COLORIZE<\/i> is the uppercase to the <i>verb<\/i> supplied by the user, but it is just now the user could enter into a Javascript prompt popup &#8230;<\/p>\n<blockquote><p>\ncolo<span title='Oops, sorry, but come from a land down under?!' style=color:blue;>u<\/span>rize,100,200,50\n<\/p><\/blockquote>\n<p> &#8230; in either &#8230;<\/p>\n<ol>\n<li>Image PHP Filter (perhaps with arguments) and\/or WordPress Blog topics available via <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php---GETME\">our changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php---GETME\">fourth draft &#8220;proof of concept&#8221;<\/a> PHP based <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\">Inhouse WordPress Blog Posting Game<\/a> we hope you get to <a href='#myihbqiframe'>try below<\/a> &#8230; and &#8230;<\/p>\n<li>Image PHP Filter (perhaps with arguments) and\/or WordPress Blog topics available via <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html------GETME\">today&#8217;s changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html------GETME\">interactively_change_background_image_on_scroll.html<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\">web application<\/a> (and we hope you get to <a href='#myicbios'>try way below<\/a>) reminds the user in its Javascript prompt popup window, above. that these new Image PHP Filter ideas are available<\/li>\n<\/ol>\n<p>All this continues to call on WordPress TwentyTen theme <a target=_blank title='WordPress Blogs tagged 404.php' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/404.php'>404.php<\/a> PHP GD filter usage logic &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n$reltopic=\"\";<br \/>\n$filterstuff=\"\";<br \/>\n$jm_php=null;<br \/>\n$myargs=\"\";<br \/>\n$vs=\"\";<br \/>\n$theargs=[];<br \/>\n$theargstr=\"\";<br \/>\n<br \/>\n function ourimagejpeg($inone, $intwo) {<br \/>\n   if (1 == 1) {<br \/>\n   header('Content-Type: image\/jpeg');<br \/>\n   imagejpeg($inone);<br \/>\n   exit;<br \/>\n   } else {<br \/>\n   imagejpeg($inone, $intwo);<br \/>\n   imagedestroy($inone);<br \/>\n   header('Content-Type: image\/jpeg');<br \/>\n   }<br \/>\n   return file_get_contents($intwo);<br \/>\n }<br \/>\n<br \/>\n function outoftwo($p1, $p2) {<br \/>\n    return $p1;<br \/>\n }<br \/>\n<br \/>\n function getpostmaybe($argidea, $defidea) {<br \/>\n   global $myargs;<br \/>\n   return $defidea;<br \/>\n }<br \/>\n<br \/>\n function ourfile_get_contents($inus) {<br \/>\n    return file_get_contents($inus);<br \/>\n }<br \/>\n <br \/>\n function ourImageFlip($imgsrc, $mode) { \/\/ thanks to https:\/\/stackoverflow.com\/questions\/10001728\/how-to-flip-image-horizontaly-and-vertically-with-php<br \/>\n    $width                        =    imagesx ( $imgsrc );<br \/>\n    $height                       =    imagesy ( $imgsrc );<br \/>\n<br.\n    $src_x                        =    0;\n    $src_y                        =    0;\n    $src_width                    =    $width;\n    $src_height                   =    $height;\n<br \/>\n    switch ($mode) {<br \/>\n        case '1': \/\/vertical<br \/>\n            $src_y                =    $height -1;<br \/>\n            $src_height           =    -$height;<br \/>\n        break;<br \/>\n<br \/>\n        case '2': \/\/horizontal<br \/>\n            $src_x                =    $width -1;<br \/>\n            $src_width            =    -$width;<br \/>\n        break;<br \/>\n<br \/>\n        case '3': \/\/both<br \/>\n            $src_x                =    $width -1;<br \/>\n            $src_y                =    $height -1;<br \/>\n            $src_width            =    -$width;<br \/>\n            $src_height           =    -$height;<br \/>\n        break;<br \/>\n<br \/>\n        default:<br \/>\n            return $imgsrc;<br \/>\n        break;<br \/>\n    }<br \/>\n<br \/>\n    $imgdest                    =    imagecreatetruecolor ( $width, $height );<br \/>\n<br \/>\n    if ( imagecopyresampled ( $imgdest, $imgsrc, 0, 0, $src_x, $src_y , $width, $height, $src_width, $src_height ) ) {<br \/>\n        return $imgdest;<br \/>\n    }<br \/>\n<br \/>\n    return $imgsrc;<br \/>\n }<br \/>\n<br \/>\n function isinfilter($infindwhat) {<br \/>\n    global $filterstuff, $reltopic, $vs, $theargs, $theargstr;<br \/>\n    if ($filterstuff == '') { return false; }<br \/>\n    $findwhat=explode(\".\", explode(\"0\",explode(\"1\",explode(\"2\",explode(\"3\",explode(\"4\",explode(\"5\",explode(\"6\",explode(\"7\",explode(\"8\",explode(\"9\",explode(\"-\",explode(\"+\",     explode(\",\",explode(\"]\",explode(\"[\",explode(\")\",explode(\"(\",explode(\"%\",$infindwhat)[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0])[0];<br \/>\n    if (strpos(strtolower($filterstuff), strtolower($findwhat)) !== false) {<br \/>\n      $thisprerest=explode(strtolower($findwhat), strtolower($infindwhat))[0];<br \/>\n      $thisrest=str_replace('+', ' ', urldecode(substr($infindwhat, (strlen($thisprerest) + strlen($findwhat)))));<br \/>\n      if (trim($thisrest) != '') {<br \/>\n      if (strpos($thisrest, \")\") !== false) {<br \/>\n        $comarrs=explode(',', explode('', $thisrest)[0]);<br \/>\n      } else {<br \/>\n        $comarrs=explode(',', explode('', $thisrest)[0]);<br \/>\n      }<br \/>\n      for ($ihj=0; $ihj&lt;sizeof($comarrs); $ihj++) {<br \/>\n        if (trim($comarrs[$ihj]) != '') {<br \/>\n          array_push($theargs, '' . $comarrs[$ihj]);<br \/>\n          $theargstr.=',' . ('' . $comarrs[$ihj]);<br \/>\n        }<br \/>\n      }<br \/>\n      }<br \/>\n      return true;<br \/>\n    }<br \/>\n    return false;<br \/>\n }<br \/>\n<br \/>\n function ourimagecreatefromcontent($zfilecont, $imgext) {<br \/>\n    global $filterstuff, $reltopic, $vs, $theargs, $theargstr;<br \/>\n    $zfilename='';<br \/>\n    if ($filterstuff == '') { return $zfilecont; }<br \/>\n    \/\/file_put_contents('qwer.qwer', strlen($zfilecont));<br \/>\n    $icontent=$zfilecont;<br \/>\n    $jm_php=imagecreatefromstring($zfilecont);<br \/>\n    $nj=0;<br \/>\n    $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n    if (isinfilter('emboss')) { \/\/ || isset($_POST[outoftwo('emboss',$vs)])) {<br \/>\n      \/\/file_put_contents(\"qwe.qwe\", str_replace(' ','+',urldecode($_GET['emboss'])) . str_replace(' ','+',urldecode($_POST['emboss'])) . $zfilename);<br \/>\n      \/\/file_put_contents(\"qwe.qwex\", $_SERVER['HTTP_REFERER']);<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['emboss'])) . str_replace(' ','+',urldecode($_POST['emboss'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$emboss = getpostmaybe('arg1',arrayarray(\" . str_replace(')','',str_replace('(','',str_replace('array(','',substr($theargstr,1)))) . \"));\");<br \/>\n      imageconvolution($jm_php, $emboss, 1, 0);<br \/>\n      } else {<br \/>\n      $emboss = getpostmaybe('arg1',array([-2, -1, 0], [-1, 1, 1], [0, 1, 2]));<br \/>\n      \/\/file_put_contents(\"qwe.qwexx\", $_SERVER['HTTP_REFERER']);<br \/>\n      \/\/imageconvolution($jm_php, $emboss, 1, 0);<br \/>\n      }<br \/>\n      imagefilter($jm_php, IMG_FILTER_EMBOSS);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('edge')) { \/\/ || isset($_POST[outoftwo('edge',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['edge'])) . str_replace(' ','+',urldecode($_POST['edge'])) . $zfilename));<br \/>\n      }<br \/>\n      $edge_detect=null;<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$edge_detect = getpostmaybe('arg1',arrayarray(\" . str_replace(')','',str_replace('(','',str_replace('array(','',substr($theargstr,1)))) . \"));\");<br \/>\n      } else {<br \/>\n      $edge_detect = getpostmaybe('arg1',array([-1, -1, -1], [-1, 8, -1], [-1, -1, -1]));<br \/>\n      }<br \/>\n      imageconvolution($jm_php, $edge_detect, 1, 0);<br \/>\n      imageconvolution($jm_php, $edge_detect, 1, 255);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('negedge')) { \/\/ || isset($_POST[outoftwo('negedge',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['negedge'])) . str_replace(' ','+',urldecode($_POST['negedge'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$edge_detect = getpostmaybe('arg1',arrayarray(\" . str_replace(')','',str_replace('(','',str_replace('array(','',substr($theargstr,1)))) . \"));\");<br \/>\n      } else {<br \/>\n      $edge_detect = getpostmaybe('arg1',array([-1, -1, -1], [-1, 8, -1], [-1, -1, -1]));<br \/>\n      }<br \/>\n      imageconvolution($jm_php, $edge_detect, 1, 0);<br \/>\n      \/\/imageconvolution($jm_php, $edge_detect, 1, 255);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('sharpen')) { \/\/ || isset($_POST[outoftwo('sharpen',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['sharpen'])) . str_replace(' ','+',urldecode($_POST['sharpen'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$sharpen = getpostmaybe('arg1',arrayarray(\" . str_replace(')','',str_replace('(','',str_replace('array(','',substr($theargstr,1)))) . \"));\");<br \/>\n      } else {<br \/>\n      $sharpen = getpostmaybe('arg1',array([0, -1, 0], [-1, 5, -1], [0, -1, 0]));<br \/>\n      }<br \/>\n      imageconvolution($jm_php, $sharpen, 1, 0);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('boxblur')) { \/\/ || isset($_POST[outoftwo('boxblur',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['boxblur'])) . str_replace(' ','+',urldecode($_POST['boxblur'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$box_blur = getpostmaybe('arg1',arrayarray(\" . str_replace(')','',str_replace('(','',str_replace('array(','',substr($theargstr,1)))) . \"));\");<br \/>\n      } else {<br \/>\n      $box_blur = getpostmaybe('arg1',array([1, 1, 1], [1, 1, 1], [1, 1, 1]));<br \/>\n      }<br \/>\n      imageconvolution($jm_php, $box_blur, 9, 0);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('grayscale')) { \/\/ || isset($_POST[outoftwo('grayscale',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['grayscale'])) . str_replace(' ','+',urldecode($_POST['grayscale'])) . $zfilename));<br \/>\n      }<br \/>\n      imagefilter($jm_php, IMG_FILTER_GRAYSCALE);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('gaussianblur')) { \/\/ || isset($_POST[outoftwo('gaussianblur',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['gaussianblur'])) . str_replace(' ','+',urldecode($_POST['gaussianblur'])) . $zfilename));<br \/>\n      }<br \/>\n      imagefilter($jm_php, IMG_FILTER_GAUSSIAN_BLUR);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('selectiveblur')) { \/\/ || isset($_POST[outoftwo('selectiveblur',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['selectiveblur'])) . str_replace(' ','+',urldecode($_POST['selectiveblur'])) . $zfilename));<br \/>\n      }<br \/>\n      imagefilter($jm_php, IMG_FILTER_SELECTIVE_BLUR);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ouriimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('negate')) { \/\/ || isset($_POST[outoftwo('negate',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['negate'])) . str_replace(' ','+',urldecode($_POST['negate'])) . $zfilename));<br \/>\n      }<br \/>\n      imagefilter($jm_php, IMG_FILTER_NEGATE);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('colourizered')) { \/\/ || isset($_POST[outoftwo('colourizered',$vs)]) || isset($_GET['colorizered')) { \/\/ || isset($_POST[outoftwo('colorizered',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['colourizered'])) . str_replace(' ','+',urldecode($_POST['colourizered'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, $cred, 0, 0); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, getpostmaybe('arg1',rand(0,255)), 0, 0); \/\/, 100);<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('colourizegreen')) { \/\/ || isset($_POST[outoftwo('colourizegreen',$vs)]) || isset($_GET['colorizegreen')) { \/\/ || isset($_POST[outoftwo('colorizegreen',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['colourizegreen'])) . str_replace(' ','+',urldecode($_POST['colourizegreen'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, 0, $cred, 0); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, 0, getpostmaybe('arg1',rand(0,255)), 0); \/\/, 100);<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('colourizeblue')) { \/\/ || isset($_POST[outoftwo('colourizeblue',$vs)]) || isset($_GET['colorizeblue')) { \/\/ || isset($_POST[outoftwo('colorizeblue',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['colourizeblue'])) . str_replace(' ','+',urldecode($_POST['colourizeblue'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, 0, 0, $cred); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, 0, 0, getpostmaybe('arg1',rand(0,255))); \/\/, 100);<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('colourize')) { \/\/ || isset($_POST[outoftwo('colourize',$vs)]) || isset($_GET['colorize')) { \/\/ || isset($_POST[outoftwo('colorize',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['colourize'])) . str_replace(' ','+',urldecode($_POST['colourize'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      \/\/eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, explode(',',substr($theargstr,1))[0],explode(',',substr($theargstr,1))[1],explode(',',substr($theargstr,1))[2]); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_COLORIZE, getpostmaybe('arg1',rand(0, 255)), getpostmaybe('arg2',rand(0, 255)), getpostmaybe('arg3',rand(0, 255))); \/\/, 100);<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('pixellate')) { \/\/ || isset($_POST[outoftwo('pixellate',$vs)]) || isset($_GET['pixelate')) { \/\/ || isset($_POST[outoftwo('pixelate',$vs)]))  {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['pixellate'])) . str_replace(' ','+',urldecode($_POST['pixellate'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_PIXELATE, $cred); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_PIXELATE, getpostmaybe('arg1',rand(1, 9))); \/\/ was 3<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('smooth')) { \/\/ || isset($_POST[outoftwo('smooth',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['smooth'])) . str_replace(' ','+',urldecode($_POST['smooth'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_SMOOTH, $cred); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_SMOOTH, getpostmaybe('arg1',rand(5, 35)));  \/\/ was -1924.124<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('contrast')) { \/\/ || isset($_POST[outoftwo('contrast',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['contrast'])) . str_replace(' ','+',urldecode($_POST['contrast'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_CONTRAST, $cred); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_CONTRAST, getpostmaybe('arg1',rand(-100, 100))); \/\/ was -90<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('brightness')) { \/\/ || isset($_POST[outoftwo('brightness',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['brightness'])) . str_replace(' ','+',urldecode($_POST['brightness'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($theargstr != '') {<br \/>\n      eval(\"\\$cred = getpostmaybe('arg1',\" . substr($theargstr,1) . \");\");<br \/>\n      imagefilter($jm_php, IMG_FILTER_BRIGHTNESS, $cred); \/\/, 100);<br \/>\n      } else {<br \/>\n      imagefilter($jm_php, IMG_FILTER_BRIGHTNESS, getpostmaybe('arg1',rand(-255, 255))); \/\/ was 98<br \/>\n      }<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('sketchy')) { \/\/ || isset($_POST[outoftwo('sketchy',$vs)]) || isset($_GET['mean_removal')) { \/\/ || isset($_POST[outoftwo('mean_removal',$vs)]) || isset($_GET['mean-removal')) { \/\/ || isset($_POST[outoftwo('mean-removal',$vs)]))  {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['sketchy'])) . str_replace(' ','+',urldecode($_POST['sketchy'])) . $zfilename));<br \/>\n      }<br \/>\n      imagefilter($jm_php, IMG_FILTER_MEAN_REMOVAL);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('flipvertical')) { \/\/ || isset($_POST[outoftwo('flipvertical',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['flipvertical'])) . str_replace(' ','+',urldecode($_POST['flipvertical'])) . $zfilename));<br \/>\n      }<br \/>\n      $jm_php=ourImageFlip($jm_php, '1'); \/\/imageflip($jm_php, IMG_FLIP_VERTICAL);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('fliphorizontal')) { \/\/ || isset($_POST[outoftwo('fliphorizontal',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['fliphorizontal'])) . str_replace(' ','+',urldecode($_POST['fliphorizontal'])) . $zfilename));<br \/>\n      }<br \/>\n      $jm_php=ourImageFlip($jm_php, '2'); \/\/imageflip($jm_php, IMG_FLIP_HORIZONTAL);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('flip')) { \/\/ || isset($_POST[outoftwo('flip',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['flip'])) . str_replace(' ','+',urldecode($_POST['flip'])) . $zfilename));<br \/>\n      }<br \/>\n      $jm_php=ourImageFlip($jm_php, '3'); \/\/imageflip($jm_php, IMG_FLIP_BOTH);<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('scale')) { \/\/ || isset($_POST[outoftwo('scale',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['flip'])) . str_replace(' ','+',urldecode($_POST['flip'])) . $zfilename));<br \/>\n      }<br \/>\n      $wh = imagesx($jm_php);<br \/>\n      $ht = imagesy($jm_php);<\/p>\n<p>      if ($theargstr != '') {<br \/>\n       $myargs=substr($theargstr,1);<br \/>\n      }<br \/>\n<br \/>\n     \/\/file_put_contents(\"qwe.qwe2\", \"wh=\" . $wh . \" and ht=\" . $ht);<br \/>\n      if (trim($myargs) != '') {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh * floatval($myargs)),intval($ht * floatval($myargs)));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh * floatval($myargs)),intval($ht * floatval($myargs)),intval($wh),intval($ht)); \/\/, imagecolorallocate($jm_php,255,255,255));<br \/>\n      } else if (isinfilter('arg1')) {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh * floatval(trim(str_replace('+',' ',urldecode($_GET['arg1']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_GET['arg1']))))));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh * floatval(trim(str_replace('+',' ',urldecode($_GET['arg1']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_GET['arg1']))))),intval($wh),intval($ht)); \/\/, imagecolorallocate($jm_php,255,255,255));<br \/>\n      } else if (isset($_POST['arg1'])) {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh * floatval(trim(str_replace('+',' ',urldecode($_POST['arg1']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_POST['arg1']))))));<br \/>\n      \/\/file_put_contents(\"qwe.qwe3\", '' . intval($wh));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh * floatval(trim(str_replace('+',' ',urldecode($_POST['arg1']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_POST['arg1']))))),intval($wh),intval($ht));<br \/>\n      \/\/file_put_contents(\"qwe.qwe4\", '' . intval($wh * floatval(trim(str_replace('+',' ',urldecode($_POST['arg1']))))));<br \/>\n      } else if (isinfilter('scale')) {<br \/>\n      if (strlen($_GET['scale']) == 0) {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh),intval($ht));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh),intval($ht),intval($wh),intval($ht));<br \/>\n      } else {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh * floatval(trim(str_replace('+',' ',urldecode($_GET['scale']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_GET['scale']))))));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh * floatval(trim(str_replace('+',' ',urldecode($_GET['scale']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_GET['scale']))))),intval($wh),intval($ht));<br \/>\n      }<br \/>\n      } else if (isset($_POST['scale'])) {<br \/>\n      \/\/file_put_contents(\"qwe.qwe3\", '' . (trim(str_replace('+',' ',urldecode($_POST['rotation'])))));<br \/>\n      if (strlen($_POST['scale']) == 0) {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh),intval($ht));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh),intval($ht),intval($wh),intval($ht));<br \/>\n      } else {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh * floatval(trim(str_replace('+',' ',urldecode($_POST['scale']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_POST['scale']))))));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh * floatval(trim(str_replace('+',' ',urldecode($_POST['scale']))))),intval($ht * floatval(trim(str_replace('+',' ',urldecode($_POST['scale']))))),intval($wh),intval($ht));<br \/>\n      }<br \/>\n      \/\/file_put_contents(\"qwe.qwe4\", '' . floatval(trim(str_replace('+',' ',urldecode($_POST['rotation'])))));<br \/>\n      } else {<br \/>\n      $iim_php = imagecreatetruecolor(intval($wh),intval($ht));<br \/>\n      imagecopyresampled($iim_php,$jm_php,0,0,0,0,intval($wh),intval($ht),intval($wh),intval($ht));<br \/>\n      }<br \/>\n      \/\/file_put_contents(\"qwe.qwe5\", $zfilename);<br \/>\n      imagedestroy($jm_php);<br \/>\n      $jm_php=$iim_php;<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('crop')) { \/\/ || isset($_POST[outoftwo('crop',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['edge'])) . str_replace(' ','+',urldecode($_POST['edge'])) . $zfilename));<br \/>\n      }<br \/>\n      $icc=0;<br \/>\n      if ($theargstr != '') {<br \/>\n       $cc=substr($theargstr,1);<br \/>\n      } else {<br \/>\n       $cc = getpostmaybe('arg1',16777215);<br \/>\n      }<br \/>\n      $hcc=str_replace('#','',color_name_to_hex(str_replace(' ','',strtolower(\"${cc}\"))));<br \/>\n      if (\"${hcc}\" != str_replace(' ','',strtolower(\"${cc}\"))) { $cc=$hcc; }<br \/>\n      if (strtolower(\"${cc}\") == \"white\") {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"transparent\") {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_TRANSPARENT);<br \/>\n      } else if (strtolower(\"${cc}\") == \"black\") {<br \/>\n      $cc=0;<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"blue\") {<br \/>\n      $cc=255;<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"green\") {<br \/>\n      $cc=intval(255 * 256);<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"red\") {<br \/>\n      $cc=intval(255 * 256 * 256);<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strpos(\"${cc}\", \",\") !== false) {<br \/>\n      $acc=explode(\",\", \"${cc}\");<br \/>\n      if (sizeof($acc) &gt;= 4) {<br \/>\n      if (floatval(hexdec(explode(')', $acc[3])[0])) == 0) {<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_TRANSPARENT);<br \/>\n      } else if (sizeof($acc) &gt;= 3) {<br \/>\n      $icc+=intval(hexdec(explode(')', $acc[2])[0]));<br \/>\n      $icc+=intval(intval(hexdec(explode(')', $acc[1])[0])) * 256);<br \/>\n      $icc+=intval(intval(hexdec(explode('(', $acc[0])[-1 + sizeof(explode('(', $acc[0]))])) * 256 * 256);<br \/>\n      $cc=\"${icc}\";<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      }<br \/>\n      } else {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      }<br \/>\n      } else if (str_replace(\"0\",\"\",str_replace(\"1\",\"\",str_replace(\"2\",\"\",str_replace(\"3\",\"\",str_replace(\"4\",\"\",str_replace(\"5\",\"\",str_replace(\"6\",\"\",str_replace(\"7\",\"\",str_replace(\"8\",\"\",str_replace(\"9\",\"\",$cc)))))))))) != '') {<br \/>\n      $xcc=hexdec(\"${cc}\");<br \/>\n      $cc=$xcc;<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else {<br \/>\n      $iim_php = imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      }<br \/>\n      imagedestroy($jm_php);<br \/>\n      $jm_php=$iim_php;<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('merge')) { \/\/ || isset($_POST[outoftwo('merge',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $imd=false;<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['edge'])) . str_replace(' ','+',urldecode($_POST['edge'])) . $zfilename));<br \/>\n      }<br \/>\n      if ($lastio) {<br \/>\n      if ($theargstr != '') {<br \/>\n       $cci=substr($theargstr,1);<br \/>\n      } else {<br \/>\n       $cci = getpostmaybe('arg1',50);<br \/>\n      }<br \/>\n      \/\/$iim_php = imagecreatetruecolor(intval(imagesx($jm_php)),intval(imagesy($jm_php)));<br \/>\n      imagecopymerge_alpha($jm_php, $lastio, 0, 0, 0, 0, $lastw, $lasth, intval($cci));<br \/>\n      $iim_php=$jm_php;<br \/>\n      \/\/file_put_contents('qwef.qwef', 'lastw=' . $lastw);<br \/>\n      } else {<br \/>\n      $iim_php=$jm_php;<br \/>\n      }<br \/>\n      $jm_php=$iim_php;<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('transparent')) { \/\/ || isset($_POST[outoftwo('transparent',$vs)])) {<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['edge'])) . str_replace(' ','+',urldecode($_POST['edge'])) . $zfilename));<br \/>\n      }<br \/>\n      $icc=0;<br \/>\n      if ($theargstr != '') {<br \/>\n       $cc=substr($theargstr,1);<br \/>\n      } else {<br \/>\n       $cc = getpostmaybe('arg1',16777215);<br \/>\n      }<br \/>\n      $hcc=str_replace('#','',color_name_to_hex(str_replace(' ','',strtolower(\"${cc}\"))));<br \/>\n      if (\"${hcc}\" != str_replace(' ','',strtolower(\"${cc}\"))) { $cc=$hcc; }<br \/>\n      if (strtolower(\"${cc}\") == \"white\") {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"transparent\") {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_TRANSPARENT);<br \/>\n      } else if (strtolower(\"${cc}\") == \"black\") {<br \/>\n      $cc=0;<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"blue\") {<br \/>\n      $cc=255;<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"green\") {<br \/>\n      $cc=intval(255 * 256);<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strtolower(\"${cc}\") == \"red\") {<br \/>\n      $cc=intval(255 * 256 * 256);<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else if (strpos(\"${cc}\", \",\") !== false) {<br \/>\n      $acc=explode(\",\", \"${cc}\");<br \/>\n      if (sizeof($acc) &gt;= 4) {<br \/>\n      if (floatval(hexdec(explode(')', $acc[3])[0])) == 0) {<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_TRANSPARENT);<br \/>\n      } else if (sizeof($acc) &gt;= 3) {<br \/>\n      $icc+=intval(hexdec(explode(')', $acc[2])[0]));<br \/>\n      $icc+=intval(intval(hexdec(explode(')', $acc[1])[0])) * 256);<br \/>\n      $icc+=intval(intval(hexdec(explode('(', $acc[0])[-1 + sizeof(explode('(', $acc[0]))])) * 256 * 256);<br \/>\n      $cc=\"${icc}\";<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      }<br \/>\n      } else {<br \/>\n      $cc=16777215;<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      }<br \/>\n      } else if (str_replace(\"0\",\"\",str_replace(\"1\",\"\",str_replace(\"2\",\"\",str_replace(\"3\",\"\",str_replace(\"4\",\"\",str_replace(\"5\",\"\",str_replace(\"6\",\"\",str_replace(\"7\",\"\",str_replace(\"8\",\"\",str_replace(\"9\",\"\",$cc)))))))))) != '') {<br \/>\n      $xcc=hexdec(\"${cc}\");<br \/>\n      $cc=$xcc;<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      } else {<br \/>\n      $iim_php = imagecolortransparent($jm_php, intval($cc)); \/\/ imagecropauto($jm_php, IMG_CROP_THRESHOLD, 3, intval($cc));<br \/>\n      }<br \/>\n      \/\/imagedestroy($jm_php);<br \/>\n      \/\/$jm_php=$iim_php;<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else if (isinfilter('rotation')) { \/\/ || isset($_POST[outoftwo('rotation',$vs)])) {<br \/>\n      \/\/file_put_contents(\"qwe.qwe1\", $zfilename);<br \/>\n      if (!$jm_php) {<br \/>\n      $jm_php = imagecreatefromstring(ourfile_get_contents(str_replace(' ','+',urldecode($_GET['flip'])) . str_replace(' ','+',urldecode($_POST['flip'])) . $zfilename));<br \/>\n      }<br \/>\n<br \/>\n      if ($theargstr != '') {<br \/>\n       $myargs=substr($theargstr,1);<br \/>\n      }<br \/>\n<br \/>\n      \/\/file_put_contents(\"qwe.qwe2\", $zfilename);<br \/>\n      if (trim($myargs) != '') {<br \/>\n      $iim_php=imagerotate($jm_php, floatval($myargs), imagecolorallocate($jm_php,255,255,255));<br \/>\n      } else if (isinfilter('arg1')) {<br \/>\n      $iim_php=imagerotate($jm_php, floatval(trim(str_replace('+',' ',urldecode($_GET['arg1'])))), imagecolorallocate($jm_php,255,255,255));<br \/>\n      } else if (isset($_POST['arg1'])) {<br \/>\n      \/\/file_put_contents(\"qwe.qwe3\", '' . (trim(str_replace('+',' ',urldecode($_POST['rotation'])))));<br \/>\n      $iim_php=imagerotate($jm_php, floatval(trim(str_replace('+',' ',urldecode($_POST['arg1'])))), imagecolorallocate($jm_php,255,255,255));<br \/>\n      \/\/file_put_contents(\"qwe.qwe4\", '' . floatval(trim(str_replace('+',' ',urldecode($_POST['rotation'])))));<br \/>\n      } else if (isinfilter('rotation')) {<br \/>\n      if (strlen($_GET['rotation']) == 0) {<br \/>\n      $iim_php=imagerotate($jm_php, 0.0, imagecolorallocate($jm_php,255,255,255));<br \/>\n      } else {<br \/>\n      $iim_php=imagerotate($jm_php, floatval(trim(str_replace('+',' ',urldecode($_GET['rotation'])))), imagecolorallocate($jm_php,255,255,255));<br \/>\n      }<br \/>\n      } else if (isset($_POST['rotation'])) {<br \/>\n      \/\/file_put_contents(\"qwe.qwe3\", '' . (trim(str_replace('+',' ',urldecode($_POST['rotation'])))));<br \/>\n      if (trim($myargs) != '') {<br \/>\n      $iim_php=imagerotate($jm_php, floatval($myargs), imagecolorallocate($jm_php,255,255,255));<br \/>\n      } else if (strlen($_POST['rotation']) == 0) {<br \/>\n      $iim_php=imagerotate($jm_php, 0.0, imagecolorallocate($jm_php,255,255,255));<br \/>\n      } else {<br \/>\n      $iim_php=imagerotate($jm_php, floatval(trim(str_replace('+',' ',urldecode($_POST['rotation'])))), imagecolorallocate($jm_php,255,255,255));<br \/>\n      }<br \/>\n      \/\/file_put_contents(\"qwe.qwe4\", '' . floatval(trim(str_replace('+',' ',urldecode($_POST['rotation'])))));<br \/>\n      } else {<br \/>\n      $iim_php=imagerotate($jm_php, 0.0, imagecolorallocate($jm_php,255,255,255));<br \/>\n      }<br \/>\n      \/\/file_put_contents(\"qwe.qwe5\", $zfilename);<br \/>\n      imagedestroy($jm_php);<br \/>\n      $jm_php=$iim_php;<br \/>\n      $nj=0;<br \/>\n      while (file_exists('anewimage' . $nj . '.jpg')) {<br \/>\n        $nj++;<br \/>\n        $new_name = 'anewimage' . $nj . '.jpg';<br \/>\n      }<br \/>\n      return ourimagejpeg($jm_php, $new_name);<br \/>\n    } else {<br \/>\n      if ($reltopic == '' && strpos($filterstuff, ',') === false) {  $reltopic=$filterstuff; $filterstuff='';  }<br \/>\n      return $icontent;   \/\/ filter not found<br \/>\n    }<br \/>\n    \/\/}<br \/>\n    return $icontent; \/\/imagecreatefromstring(file_get_contents(str_replace('https:','http:',preg_replace('{^\/\/}','http:\/\/',$zfilename)))); \/\/ 'data:image\/' . substr($ext,1) . \";base64,\" . base64_encode(ourfile_get_contents($zfilename));<br \/>\n }<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p>Also, today, with that Inhouse Blog Game <i>splash screen<\/i> preparatory webpage, we draw attention to the informational span elements, adding colour, and, where it works, incorporate an HTML marquee element into the mix.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-image-filter-arguments-tutorial\/'>Inhouse WordPress Image Filter Arguments Tutorial<\/a>.<\/p-->\n<hr>\n<p id='iwpifst'>Previous relevant <a target=_blank title='Inhouse WordPress Image Filter Source Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-image-filter-source-tutorial\/'>Inhouse WordPress Image Filter Source Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Inhouse WordPress Image Filter Source Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game_filter.jpg\" title=\"Inhouse WordPress Image Filter Source Tutorial\" style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Inhouse WordPress Image Filter Source Tutorial<\/p><\/div>\n<p>Like with yesterday&#8217;s <a title='Inhouse WordPress Topic Image Source Tutorial' href='#iwptist'>Inhouse WordPress Topic Image Source Tutorial<\/a>&#8216;s &#8230;<\/p>\n<ul>\n<li>WordPress <i>Topic<\/i> theme &#8230; today we have a new layer of functionality involving &#8230;<\/li>\n<li>Image PHP <i>Filter<\/i> theme &#8230; using PHP <a target=_blank title='GD and Image Functions' href='http:\/\/php.net\/manual\/en\/ref.image.php'>GD<\/a> manipulations<\/li>\n<\/ul>\n<p>Code equivalencies to yesterday (starting with the WordPress <a target=_blank title='WordPress Blogs tagged 404.php' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/404.php'>404.php<\/a> PHP logic) now look like &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n      $uwidth=trim($uparts[$ioff - 2 + sizeof($uparts)]);<br \/>\n      $uheight=trim(explode('#',explode('?',$uparts[$ioff - 1 + sizeof($uparts)])[0])[0]);<br \/>\n      if (!isset($_GET['mustbedated'])) {<br \/>\n      $prereltopic=str_replace('+',' ',urldecode($uparts[$ioff - 2 + sizeof($uparts)])) . '\/' . str_replace('+',' ',urldecode($uparts[$ioff - 1 + sizeof($uparts)]));<br \/>\n      $fsf=false;<br \/>\n      for ($irt=0; $irt&lt;strlen($prereltopic); $irt++) {<br \/>\n        if (substr(substr($prereltopic, $irt),0,1) &gt;= '0' && substr(substr($prereltopic, $irt),0,1) &lt;= '9') {<br \/>\n          $fsf=$fsf;<br \/>\n        } else if (substr(substr($prereltopic, $irt),0,1) == '\/') {<br \/>\n          if ($reltopic != '') { $reltopic.=' '; } else if ($fsf) { $reltopic.='\/';    }<br \/>\n          $fsf=true;<br \/>\n        } else {<br \/>\n          $reltopic.=substr(substr($prereltopic, $irt),0,1);<br \/>\n          $uwidth=explode(substr(substr($prereltopic, $irt),0,1), $uwidth)[0];<br \/>\n          $uheight=explode(substr(substr($prereltopic, $irt),0,1), $uheight)[0];<br \/>\n        }<br \/>\n      }<br \/>\n      if ($reltopic != '') {<br \/>\n      $partone=str_replace('+',' ',urldecode(explode($uwidth, trim($uparts[$ioff - 2 + sizeof($uparts)]))[1]));<br \/>\n      $parttwo=str_replace('+',' ',urldecode(explode($uheight, trim(explode('#',explode('?',$uparts[$ioff - 1 + sizeof($uparts)])[0])[0]))[1]));<br \/>\n      if ($partone != '' && $parttwo != '') {<br \/>\n        $reltopic=$partone . ' ' . $parttwo;<br \/>\n      } else if ($partone != '') {<br \/>\n        $reltopic=$partone;<br \/>\n      } else if ($parttwo != '') {<br \/>\n        $reltopic=$parttwo;<br \/>\n      }<br \/>\n      if ($partone != '' && $parttwo != '') {<br \/>\n        if (strpos($partone, ',') !== false) {<br \/>\n          $filterstuff=$partone . ' ' . $parttwo;<br \/>\n          $reltopic='';<br \/>\n          if (strpos($parttwo, ',') === false) {<br \/>\n          $filterstuff=$partone;<br \/>\n          $reltopic=$parttwo;<br \/>\n          }<br \/>\n        } else if (strpos($parttwo, ',') !== false) {<br \/>\n          $filterstuff=$parttwo;<br \/>\n          $reltopic=$partone;<br \/>\n        } else if (strpos($partone, ' ') !== false || strpos($partone, '.') !== false || strpos($partone, ':') !== false || strpos($partone, '\/') !== false) {<br \/>\n          $reltopic=$reltopic;<br \/>\n        } else if (strpos($parttwo, ' ') !== false || strpos($parttwo, '.') !== false || strpos($parttwo, ':') !== false || strpos($parttwo, '\/') !== false) {<br \/>\n          $reltopic=$reltopic;<br \/>\n        } else if (($partone . ' ' . $parttwo) == strtoupper(($partone . ' ' . $parttwo)) || ($partone . ' ' . $parttwo) == strtolower(($partone . ' ' . $parttwo))) {<br \/>\n          $filterstuff=$partone . ' ' . $parttwo;<br \/>\n          $reltopic='';<br \/>\n        }<br \/>\n      } else if ($partone != '') {<br \/>\n        if (strpos($partone, ',') !== false) {<br \/>\n          $filterstuff=$partone;<br \/>\n          $reltopic='';<br \/>\n        } else if (strpos($partone, ' ') !== false || strpos($partone, '.') !== false || strpos($partone, ':') !== false || strpos($partone, '\/') !== false) {<br \/>\n          $reltopic=$reltopic;<br \/>\n        } else if (($partone . ' ' . $parttwo) == strtoupper(($partone . ' ' . $parttwo)) || ($partone . ' ' . $parttwo) == strtolower(($partone . ' ' . $parttwo))) {<br \/>\n          $filterstuff=$partone;<br \/>\n          $reltopic='';<br \/>\n        }<br \/>\n      } else if ($parttwo != '') {<br \/>\n        if (strpos($parttwo, ',') !== false) {<br \/>\n          $filterstuff=$parttwo;<br \/>\n          $reltopic='';<br \/>\n        } else if (strpos($parttwo, ' ') !== false || strpos($parttwo, '.') !== false || strpos($parttwo, ':') !== false || strpos($parttwo, '\/') !== false) {<br \/>\n          $reltopic=$reltopic;<br \/>\n        } else if (($partone . ' ' . $parttwo) == strtoupper(($partone . ' ' . $parttwo)) || ($partone . ' ' . $parttwo) == strtolower(($partone . ' ' . $parttwo))) {<br \/>\n          $filterstuff=$parttwo;<br \/>\n          $reltopic='';<br \/>\n        }<br \/>\n      }<br \/>\n      \/\/file_put_contents(\"qweq.qweq\", \"reltopic=\" . $reltopic . ' and filterstuff=' . $filterstuff);<br \/>\n<br \/> <br \/>\n      if ($filterstuff != '' && $reltopic == '') {<br \/>\n    if (isinfilter('emboss')) { \/\/ || isset($_POST[outoftwo('emboss',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('edge')) { \/\/ || isset($_POST[outoftwo('edge',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('negedge')) { \/\/ || isset($_POST[outoftwo('negedge',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('sharpen')) { \/\/ || isset($_POST[outoftwo('sharpen',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('boxblur')) { \/\/ || isset($_POST[outoftwo('boxblur',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('grayscale')) { \/\/ || isset($_POST[outoftwo('grayscale',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('gaussianianblur')) { \/\/ || isset($_POST[outoftwo('gaussianblur',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('selectiveblur')) { \/\/ || isset($_POST[outoftwo('selectiveblur',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('negate')) { \/\/ || isset($_POST[outoftwo('negate',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('colourizered')) { \/\/ || isset($_POST[outoftwo('colourizered',$vs)]) || isset($_GET['colorizered')) { \/\/ || isset($_POST[outoftwo('colorizered',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('colourizegreen')) { \/\/ || isset($_POST[outoftwo('colourizegreen',$vs)]) || isset($_GET['colorizegreen')) { \/\/ || isset($_POST[outoftwo('colorizegreen',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('colourize')) { \/\/ || isset($_POST[outoftwo('colourize',$vs)]) || isset($_GET['colorize')) { \/\/ || isset($_POST[outoftwo('colorize',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('colourizeblue')) { \/\/ || isset($_POST[outoftwo('colourizeblue',$vs)]) || isset($_GET['colorizeblue')) { \/\/ || isset($_POST[outoftwo('colorizeblue',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('pixellate')) { \/\/ || isset($_POST[outoftwo('pixellate',$vs)]) || isset($_GET['pixelate')) { \/\/ || isset($_POST[outoftwo('pixelate',$vs)]))  {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('smooth')) { \/\/ || isset($_POST[outoftwo('smooth',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('contrast')) { \/\/ || isset($_POST[outoftwo('contrast',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('brightness')) { \/\/ || isset($_POST[outoftwo('brightness',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('sketchy')) { \/\/ || isset($_POST[outoftwo('sketchy',$vs)]) || isset($_GET['mean_removal')) { \/\/ || isset($_POST[outoftwo('mean_removal',$vs)]) || isset($_GET['mean-removal')) { \/\/ || isset($_POST[outoftwo('mean-removal',$vs)]))  {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('flipvertical')) { \/\/ || isset($_POST[outoftwo('flipvertical',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('fliphorizontal')) { \/\/ || isset($_POST[outoftwo('fliphorizontal',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('flip')) { \/\/ || isset($_POST[outoftwo('flip',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('scale')) { \/\/ || isset($_POST[outoftwo('scale',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n      } else if (isinfilter('arg1')) {<br \/>\n    $reltopic=$reltopic;<br \/>\n      } else if (isinfilter('scale')) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('crop')) { \/\/ || isset($_POST[outoftwo('crop',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('merge')) { \/\/ || isset($_POST[outoftwo('merge',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('transparent')) { \/\/ || isset($_POST[outoftwo('transparent',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n    } else if (isinfilter('rotation')) { \/\/ || isset($_POST[outoftwo('rotation',$vs)])) {<br \/>\n    $reltopic=$reltopic;<br \/>\n      } else if (isinfilter('arg1')) {<br \/>\n    $reltopic=$reltopic;<br \/>\n      } else if (isinfilter('rotation')) {<br \/>\n    $reltopic=$reltopic;<br \/>\n      } else {<br \/>\n      $reltopic=$filterstuff;<br \/>\n      $filterstuff='';<br \/>\n      }<br \/>\n      }<br \/>\n<br \/> <br \/>\n      }<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; and &#8230;<\/p>\n<p><code><br \/>\n      var filterlist=\"emboss edge negedge sharpen boxblur grayscale gaussianianblur selectiveblur negate colourizered colourizegreen colourize colourizeblue pixellate smooth contrast brightness sketchy flipvertical fliphorizontal flip scale crop merge transparent rotation\";<br \/>\n      <font size=1>var ansis=prompt('<\/font>Optionally type in background source URL prefix [' + prefix + midbit + suffix + '] ( or use Lorem Picsum or for blog images try \/\/www.rjmprogramming.com.au\/ITblog\/' + sixhundred + '\/' + fourhundred + '\/ (and can optionally wedge in an Image Filter in amongst words below, or Topic of Interest appended to those numbers, where + is a space, if you wish eg. \/\/www.rjmprogramming.com.au\/ITblog\/' + sixhundred + '\/' + fourhundred + 'Google+Chart\/ )), hashtag delimited from optional seconds image refresh rate [' + ten + '], hashtagged from optional Text background image (or Lorem Picsum), hashtagged from optional Text wording [' + tcont + '] we will assume involves a space.<font size=1>', ' ' + filterlist);<\/font><br \/>\n<\/code><\/p>\n<p> &#8230; and &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n $ourrand='' . rand(5678,7890023);<br \/>\n $scorebit='';<br \/>\n $fgapp=\"\";<br \/>\n $fhapp=\"\";<br \/>\n $topapp=\"\";<br \/>\n $prescore=\"\";<br \/>\n $recallit='.\/inhouse_blog_game.php';<br \/>\n<br \/>\n if (isset($_GET['filterstuff'])) {<br \/>\n     if (strlen(trim(str_replace('+',' ',urldecode($_GET['filterstuff'])))) &gt; 0) {<br \/>\n     $fgapp=$_GET['filterstuff'];<br \/>\n     }<br \/>\n }<br \/>\nif (isset($_POST['filterstuff'])) {<br \/>\n     if (strlen(trim(str_replace('+',' ',urldecode($_POST['filterstuff'])))) &gt; 0) {<br \/>\n     $fgapp=$_POST['filterstuff'];<br \/>\n     }<br \/>\n }<br \/>\n<br \/>\n if (isset($_GET['score']) && isset($_GET['secs'])) {<br \/>\n   $scorebit=\"Score \" . explode('.',$_GET['score'])[0] . '\/' . $_GET['secs'];<br \/>\n   $recallit.='?score=' . explode('.',$_GET['score'])[0] . '\/' . $_GET['secs'];<br \/>\n   if (isset($_GET['topic'])) {<br \/>\n     if (strlen(trim(str_replace('+',' ',urldecode($_GET['topic'])))) &gt; 0) {<br \/>\n     $prescore='topic=' . $_GET['topic'] . '&';<br \/>\n     $recallit='.\/inhouse_blog_game.php?topic=' . $_GET['topic'] . '&score=' . explode('.',$_GET['score'])[0] . '\/' . $_GET['secs'];<br \/>\n     $fhapp=$_GET['topic'];<br \/>\n     $topapp=' ' . trim(str_replace('+',' ',urldecode($_GET['topic'])));<br \/>\n     }<br \/>\n   }<br \/>\n } else if (isset($_POST['score']) && isset($_POST['secs'])) {<br \/>\n   $scorebit=\"Score \" . explode('.',$_POST['score'])[0] . '\/' . $_POST['secs'];<br \/>\n   $recallit.='?score=' . explode('.',$_POST['score'])[0] . '\/' . $_POST['secs'];<br \/>\n   if (isset($_POST['topic'])) {<br \/>\n     if (strlen(trim(str_replace('+',' ',urldecode($_POST['topic'])))) &gt; 0) {<br \/>\n     $prescore='topic=' . $_POST['topic'] . '&';<br \/>\n     $recallit='.\/inhouse_blog_game.php?topic=' . $_POST['topic'] . '&score=' . explode('.',$_POST['score'])[0] . '\/' . $_POST['secs'];<br \/>\n     $fhapp=$_POST['topic'];<br \/>\n     $topapp=' ' . trim(str_replace('+',' ',urldecode($_POST['topic'])));<br \/>\n     }<br \/>\n   }<br \/>\n } else {<br \/>\n if (isset($_GET['topic'])) {<br \/>\n   if (strlen(trim(str_replace('+',' ',urldecode($_GET['topic'])))) &gt; 0) {<br \/>\n   $prescore='topic=' . $_GET['topic'] . '&';<br \/>\n   $recallit.='?topic=' . $_GET['topic'];<br \/>\n   $fhapp=$_GET['topic'];<br \/>\n   $topapp=' ' . trim(str_replace('+',' ',urldecode($_GET['topic'])));<br \/>\n   }<br \/>\n } else if (isset($_POST['topic'])) {<br \/>\n   if (strlen(trim(str_replace('+',' ',urldecode($_POST['topic'])))) &gt; 0) {<br \/>\n   $prescore='topic=' . $_POST['topic'] . '&';<br \/>\n   $recallit.='?topic=' . $_POST['topic'];<br \/>\n   $fhapp=$_POST['topic'];<br \/>\n   $topapp=' ' . trim(str_replace('+',' ',urldecode($_POST['topic'])));<br \/>\n   }<br \/>\n }<br \/>\n }<br \/>\n <br \/>\n if ($fgapp != '') {<br \/>\n   $prescore.='filterstuff=' . $fgapp . '&';<br \/>\n   if (strpos($recallit, '?') === false) {<br \/>\n   $recallit.='?filterstuff=' . $fgapp;<br \/>\n   } else {<br \/>\n   $recallit.='&filterstuff=' . $fgapp;<br \/>\n   }<br \/>\n   $topapp.=' ' . trim(str_replace('+',' ',urldecode($fgapp)));<br \/>\n }<br \/>\n <br \/>\n if ($recallit == '.\/inhouse_blog_game.php' && !isset($_GET['reload'])) {<br \/>\n   echo \"&lt;html&gt;&lt;head&gt;&lt;title&gt;Experimental Drag and Drop - RJM Programming- July, 2023 ... thanks to https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/DataTransfer\/setData&lt;\/title&gt;&lt;\/head&gt;&lt;body&gt;&lt;iframe id=myihbqiframe frameborder=0 onload=\\\"if (this.src.indexOf('inhouse_blog_game.') == -1) { var aconto = (this.contentWindow || this.contentDocument); if (aconto.document) { aconto = aconto.document; }  aconto.body.style.border='2px dotted olive'; aconto.body.style.cursor='progress'; setTimeout(function() { document.getElementById('myihbqiframe').src='\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php?reload=yes'; }, 7000); aconto.getElementById('score').innerHTML+=' ... awaiting Inhouse Blog Game loading ...';    }\\\" style=\\\"width:100%;height:900px;\\\" src=\\\".\/experimental_drag_and_drop.htm\\\"&gt;&lt;\/iframe&gt;&lt;\/body&gt;&lt;\/html&gt;\";<br \/>\n   exit;<br \/>\n }<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; and &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n  $templategame=str_replace('RJM Programming &lt;span id=spmore&gt;-&lt;\/span&gt; ', 'RJM Programming &lt;span id=spmore&gt;&lt;a style=text-decoration:none;cursor:pointer; onclick=\"var filterlist=' . \"' emboss edge negedge sharpen boxblur grayscale gaussianianblur selectiveblur negate colourizered colourizegreen colourize colourizeblue pixellate smooth contrast brightness sketchy flipvertical fliphorizontal flip scale crop merge transparent rotation '\" . ';  var fbit=filterlist.substring(0,1).trim();  var fbits=filterlist.trim().split(String.fromCharCode(32));   var topic=prompt(' . \"'Optionally refine Blog Postings to ones regarding your entered Topic word(s) then\/or all lowercase Image Filter verbs from emboss edge negedge sharpen boxblur grayscale gaussianianblur selectiveblur negate colourizered colourizegreen colourize colourizeblue pixellate smooth contrast brightness sketchy flipvertical fliphorizontal flip scale crop merge transparent rotation.',''\" . '); if (topic) { var wastopic=String.fromCharCode(32) + topic; for (var ii=0; ii&lt;fbits.length; ii++) { if (wastopic.indexOf(String.fromCharCode(32) + fbits[ii]) != -1) { wastopic=wastopic.split(String.fromCharCode(32) + fbits[ii])[0];  if (fbit.length == 0) { fbit=' . \"'&filterstuff=' + fbits[ii]\" . ';  } else { fbit+=' . \"'%20' + fbits[ii]\" . '; } } } if (topic.trim().length != 0) { var documentURL=document.URL,dlm=String.fromCharCode(38); if (document.URL.indexOf(String.fromCharCode(63)) == -1) { dlm=String.fromCharCode(63);   } else {  documentURL=document.URL.replace(String.fromCharCode(102) + String.fromCharCode(61), String.fromCharCode(61)).replace(String.fromCharCode(99) + String.fromCharCode(61), String.fromCharCode(61)); }  document.body.style.cursor=' . \"'progress'; \" . '  location.href=' . \"documentURL + dlm + 'topic=' + encodeURIComponent(wastopic.trim()) + fbit;\" . '  }  }\" title=Topics&gt;+&lt;\/a&gt;&lt;\/span&gt; ', $templategame);<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; involving &#8230;<\/p>\n<ol>\n<li>Image PHP Filter and\/or WordPress Blog topics available via <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php--GETME\">our changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php--GETME\">third draft &#8220;proof of concept&#8221;<\/a> PHP based <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\">Inhouse WordPress Blog Posting Game<\/a> we hope you get to <a href='#myihbqiframe'>try below<\/a> &#8230; and &#8230;<\/p>\n<li>Image PHP Filter and\/or WordPress Blog topics available via <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html-----GETME\">today&#8217;s changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html-----GETME\">interactively_change_background_image_on_scroll.html<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\">web application<\/a> (and we hope you get to <a href='#myicbios'>try way below<\/a>) reminds the user in its Javascript prompt popup window, above. that these new Image PHP Filter ideas are available<\/li>\n<\/ol>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-image-filter-source-tutorial\/'>Inhouse WordPress Image Filter Source Tutorial<\/a>.<\/p-->\n<hr>\n<p id='iwptist'>Previous relevant <a target=_blank title='Inhouse WordPress Topic Image Source Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-topic-image-source-tutorial\/'>Inhouse WordPress Topic Image Source Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Inhouse WordPress Topic Image Source Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game_scroll_topics.gif\" title=\"Inhouse WordPress Topic Image Source Tutorial\" style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Inhouse WordPress Topic Image Source Tutorial<\/p><\/div>\n<p>We further tweaked our WordPress <a target=_blank title='WordPress Blogs tagged 404.php' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/404.php'>404.php<\/a> PHP logic to create random inhouse WordPress blog Tutorial Picture(s) to differentiate the &#8230;<\/p>\n<ul>\n<li>default <font size=1>leading<\/font> &#8220;<font size=1>\/<\/font><i>width<\/i><font size=1>\/<\/font><i>height<\/i><font size=1>\/<\/font>&#8221; parts to the end of the address bar URL ( eg. <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/600\/400\/\">https:\/\/www.rjmprogramming.com.au\/ITblog\/600\/400\/<\/a> ) &#8230; numerical data, from &#8230; as of today &#8230;<\/li>\n<li>additional <font size=1>optional<\/font> alphabetic characters in amongst above <font size=1>(but &#8220;not leading&#8221; please)<\/font> to define User defined WordPress Topic(s) of interest ( eg. <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/600Google\/400Chart\/\">https:\/\/www.rjmprogramming.com.au\/ITblog\/600Google\/400Chart\/<\/a> )<\/li>\n<\/ul>\n<p> &#8230; <font color=blue>as per<\/font> &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n      <font color=blue>$reltopic='';<\/font><br \/>\n      <font color=blue>$fsf=false;<\/font><br \/>\n<br \/>\n      $uwidth=trim($uparts[$ioff - 2 + sizeof($uparts)]);<br \/>\n      $uheight=trim(explode('#',explode('?',$uparts[$ioff - 1 + sizeof($uparts)])[0])[0]);<br \/>\n      <font color=blue>if (!isset($_GET['mustbedated'])) {<br \/>\n      $prereltopic=str_replace('+',' ',urldecode($uparts[$ioff - 2 + sizeof($uparts)])) . '\/' . str_replace('+',' ',urldecode($uparts[$ioff - 1 + sizeof($uparts)]));<br \/>\n      $fsf=false;<br \/>\n      for ($irt=0; $irt&lt;strlen($prereltopic); $irt++) {<br \/>\n        if (substr(substr($prereltopic, $irt),0,1) &gt;= '0' && substr(substr($prereltopic, $irt),0,1) &lt;= '9') {<br \/>\n          $fsf=$fsf;<br \/>\n        } else if (substr(substr($prereltopic, $irt),0,1) == '\/') {<br \/>\n          if ($reltopic != '') { $reltopic.=' '; } else if ($fsf) { $reltopic.='\/';    }<br \/>\n          $fsf=true;<br \/>\n        } else {<br \/>\n          $reltopic.=substr(substr($prereltopic, $irt),0,1);<br \/>\n          $uwidth=explode(substr(substr($prereltopic, $irt),0,1), $uwidth)[0];<br \/>\n          $uheight=explode(substr(substr($prereltopic, $irt),0,1), $uheight)[0];<br \/>\n        }<br \/>\n      }<br \/>\n      }<\/font><br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p>What are the implications of this further to yesterday&#8217;s <a title='Inhouse WordPress Blog Posting Game Tutorial' href='#iwpbpgt'>Inhouse WordPress Blog Posting Game Tutorial<\/a>?  Well, as you can see with today&#8217;s <a target=_blank href='inhouse_blog_game_scroll_topics.gif' title='Tutorial picture'>animated GIF tutorial picture<\/a> presentation it can add functionality to &#8230;<\/p>\n<ol>\n<li>WordPress Blog topics available via <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php-GETME\">our changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php-GETME\">second draft &#8220;proof of concept&#8221;<\/a> PHP based <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\">Inhouse WordPress Blog Posting Game<\/a> we hope you get to <a href='#myihbqiframe'>try below<\/a> &#8230; and &#8230;<\/p>\n<li>WordPress Blog topics available via <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html----GETME\">today&#8217;s changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html----GETME\">interactively_change_background_image_on_scroll.html<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\">web application<\/a> (and we hope you get to <a href='#myicbios'>try way below<\/a>) reminds the user &#8230;<br \/>\n<code><br \/>\n      <font size=1>var ansis=prompt('<\/font>Optionally enter in background source URL prefix [' + prefix + midbit + suffix + '] ( or use Lorem Picsum or for blog posting images try \/\/www.rjmprogramming.com.au\/ITblog\/' + sixhundred + '\/' + fourhundred + '\/ (and you can optionally wedge in a Topic of Interest appended to those numbers, where + is a space, if you wish eg. \/\/www.rjmprogramming.com.au\/ITblog\/' + sixhundred + '\/' + fourhundred + 'Google+Chart\/ )), hashtag delimited from optional imagery refresh rate in seconds [' + ten + '], hashtag delimited from optional Text element background image (or use Lorem Picsum), hashtag delimited from optional Text wording [' + tcont + '] we will assume involves a space.<font size=1>', '');<\/font><br \/>\n<\/code><br \/>\n &#8230; in its Javascript prompt popup window that these new WordPress Blog Topic ideas are available<\/li>\n<\/ol>\n<p>What else has happened regarding the Inhouse WordPress Blog Posting Game above?  Well &#8230;<\/p>\n<ul>\n<li>we&#8217;ve introduced a <font color=purple>&#8220;splash screen&#8221;<\/font> page, if you will, ahead of the game loading (which is the default and original Drag and Drop webpage), in order to have something on the webpage ahead of the game loading &#8230;\n<p>&lt;?php<br \/>\n<code><br \/>\n $ourrand='' . rand(5678,7890023);<br \/>\n $scorebit='';<br \/>\n $fhapp=\"\";<br \/>\n $topapp=\"\";<br \/>\n $prescore=\"\";<br \/>\n $recallit='.\/inhouse_blog_game.php';<br \/>\n if (isset($_GET['score']) && isset($_GET['secs'])) {<br \/>\n   $scorebit=\"Score \" . explode('.',$_GET['score'])[0] . '\/' . $_GET['secs'];<br \/>\n   $recallit.='?score=' . explode('.',$_GET['score'])[0] . '\/' . $_GET['secs'];<br \/>\n   if (isset($_GET['topic'])) {<br \/>\n     if (strlen(trim(str_replace('+',' ',urldecode($_GET['topic'])))) &gt; 0) {<br \/>\n     $prescore='topic=' . $_GET['topic'] . '&';<br \/>\n     $recallit='.\/inhouse_blog_game.php?topic=' . $_GET['topic'] . '&score=' . explode('.',$_GET['score'])[0] . '\/' . $_GET['secs'];<br \/>\n     $fhapp=$_GET['topic'];<br \/>\n     $topapp=' ' . trim(str_replace('+',' ',urldecode($_GET['topic'])));<br \/>\n     }<br \/>\n   }<br \/>\n } else if (isset($_POST['score']) && isset($_POST['secs'])) {<br \/>\n   $scorebit=\"Score \" . explode('.',$_POST['score'])[0] . '\/' . $_POST['secs'];<br \/>\n   $recallit.='?score=' . explode('.',$_POST['score'])[0] . '\/' . $_POST['secs'];<br \/>\n   if (isset($_POST['topic'])) {<br \/>\n     if (strlen(trim(str_replace('+',' ',urldecode($_POST['topic'])))) &gt; 0) {<br \/>\n     $prescore='topic=' . $_POST['topic'] . '&';<br \/>\n     $recallit='.\/inhouse_blog_game.php?topic=' . $_POST['topic'] . '&score=' . explode('.',$_POST['score'])[0] . '\/' . $_POST['secs'];<br \/>\n     $fhapp=$_POST['topic'];<br \/>\n     $topapp=' ' . trim(str_replace('+',' ',urldecode($_POST['topic'])));<br \/>\n     }<br \/>\n   }<br \/>\n } else {<br \/>\n if (isset($_GET['topic'])) {<br \/>\n   if (strlen(trim(str_replace('+',' ',urldecode($_GET['topic'])))) &gt; 0) {<br \/>\n   $prescore='topic=' . $_GET['topic'] . '&';<br \/>\n   $recallit.='?topic=' . $_GET['topic'];<br \/>\n   $fhapp=$_GET['topic'];<br \/>\n   $topapp=' ' . trim(str_replace('+',' ',urldecode($_GET['topic'])));<br \/>\n   }<br \/>\n } else if (isset($_POST['topic'])) {<br \/>\n   if (strlen(trim(str_replace('+',' ',urldecode($_POST['topic'])))) &gt; 0) {<br \/>\n   $prescore='topic=' . $_POST['topic'] . '&';<br \/>\n   $recallit.='?topic=' . $_POST['topic'];<br \/>\n   $fhapp=$_POST['topic'];<br \/>\n   $topapp=' ' . trim(str_replace('+',' ',urldecode($_POST['topic'])));<br \/>\n   }<br \/>\n }<br \/>\n }<br \/>\n <br \/>\n <font color=purple>if ($recallit == '.\/inhouse_blog_game.php' && !isset($_GET['reload'])) {<br \/>\n   echo \"&lt;html&gt;&lt;head&gt;&lt;title&gt;Experimental Drag and Drop - RJM Programming- July, 2023 ... thanks to https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/DataTransfer\/setData&lt;\/title&gt;&lt;\/head&gt;&lt;body&gt;&lt;iframe id=myihbqiframe frameborder=0 onload=\\\"if (this.src.indexOf('inhouse_blog_game.') == -1) { var aconto = (this.contentWindow || this.contentDocument); if (aconto.document) { aconto = aconto.document; }  aconto.body.style.border='2px dotted olive'; aconto.body.style.cursor='progress'; setTimeout(function() { document.getElementById('myihbqiframe').src='\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php?reload=y'; }, 7000); aconto.getElementById('score').innerHTML+=' ... awaiting Inhouse Blog Game loading ...';    }\\\" style=\\\"width:100%;height:900px;\\\" src=\\\".\/experimental_drag_and_drop.htm\\\"&gt;&lt;\/iframe&gt;&lt;\/body&gt;&lt;\/html&gt;\";<br \/>\n   exit;<br \/>\n }<\/font><br \/>\n<\/code><br \/>\n?&gt;\n<\/li>\n<li>we use a lot more <i>document.body.style.cursor=&#8217;progress&#8217;;<\/i> to <font color=darkgreen>help with the loading delays<\/font>, as well &#8230;<br \/>\n&lt;?php<br \/>\n<code><br \/>\n  $templategame=str_replace('RJM Programming &lt;span id=spmore&gt;<font color=magenta>-<\/font>&lt;\/span&gt; ', 'RJM Programming &lt;span id=spmore&gt;&lt;a style=text-decoration:none;cursor:pointer; onclick=\"var topic=prompt(' . \"'Optionally refine Blog Postings to ones regarding your enter Topic word(s).',''\" . '); if (topic) { if (topic.trim().length != 0) { var documentURL=document.URL,dlm=String.fromCharCode(38); if (document.URL.indexOf(String.fromCharCode(63)) == -1) { dlm=String.fromCharCode(63);   } else {  documentURL=document.URL.replace(String.fromCharCode(99) + String.fromCharCode(61), String.fromCharCode(61)); }  <font color=darkgreen>document.body.style.cursor=' . \"'progress'; \" . '<\/font>  location.href=' . \"documentURL + dlm + 'topic=' + encodeURIComponent(topic);\" . '  }  }\" title=Topics&gt;<font color=cyan>+<\/font>&lt;\/a&gt;&lt;\/span&gt; ', $templategame);<br \/>\n<\/code><br \/>\n?&gt;\n<\/li>\n<li>we&#8217;ve now got a new span &#8220;used to be <font color=magenta>&#8211;<\/font> content&#8221; that is now embedded with a <font color=cyan>+<\/font> <a target=_blank title='HTML a link information from W3schools' href='https:\/\/www.w3schools.com\/html\/html_links.asp'><i>a<\/i><\/a> link allowing users to specify their WordPress topic, in code above<\/li>\n<li>allow for the game modus operandi be the other way around <font size=1>(to yesterday&#8217;s WordPress Blog titles and date in the &#8220;Drag&#8221; section and image backgrounds in the &#8220;Drop Zone&#8221; nine table cells)<\/font> ( ie. image background in the &#8220;Drag&#8221; section and WordPress Blog titles and dates in the &#8220;Drop Zone&#8221; nine table cells ) as well<\/li>\n<\/ul>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-topic-image-source-tutorial\/'>Inhouse WordPress Topic Image Source Tutorial<\/a>.<\/p-->\n<hr>\n<p id='iwpbpgt'>Previous relevant <a target=_blank title='Inhouse WordPress Blog Posting Game Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-blog-posting-game-tutorial\/'>Inhouse WordPress Blog Posting Game Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Inhouse WordPress Blog Posting Game Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.jpg\" title=\"Inhouse WordPress Blog Posting Game Tutorial\" style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Inhouse WordPress Blog Posting Game Tutorial<\/p><\/div>\n<p>The WordPress <a target=_blank title='WordPress Blogs tagged 404.php' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/404.php'>404.php<\/a> Tutorial Picture image creation work in yesterday&#8217;s <a title='Interactively Change WordPress Blog Background Image on Scroll Tutorial' href='#icwpbbist'>Interactively Change WordPress Blog Background Image on Scroll Tutorial<\/a> set us to thinking of a Drag and Drop game (akin to those in the <a target=_blank title='Drag tutorials here' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/drag\/'>recent discussions<\/a>) we could set up to &#8230;<\/p>\n<ul>\n<li>show the user, in the &#8220;Drag&#8221; section a WordPress Blog Posting Title (and date) &#8230; which the user should drag to the appropriate &#8230;<\/li>\n<li>table cell, nine of which exist in the &#8220;Drop Zone&#8221;, and are numbered and backgrounded by a random WordPress Tutorial Picture image<\/li>\n<\/ul>\n<p> &#8230; in alignment with the adage &#8230;<\/p>\n<blockquote><p>\nEvery picture is worth a thousand words.\n<\/p><\/blockquote>\n<p>As well, today, both in terms of &#8230;<\/p>\n<ul>\n<li>providing hints &#8230; and\/or &#8230;<\/li>\n<li>providing information<\/li>\n<\/ul>\n<p> &#8230; those table cells are associated with &#8230;<\/p>\n<ul>\n<li>double click event (&#8220;ondblclick&#8221;) logic that shows the &#8220;Cut to the Chase&#8221; underlying &#8220;action item&#8221; associated with the WordPress Blog Posting involved &#8230; and, just quietly &#8230;<\/li>\n<li>right click event (&#8220;oncontextmenu&#8221;) logic that shows the associated WordPress Blog Posting involved itself<\/li>\n<\/ul>\n<p> &#8230; in our <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php_GETME\">first draft &#8220;proof of concept&#8221;<\/a> PHP based <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php\">Inhouse WordPress Blog Posting Game<\/a> (helped out by <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/experimental_drag_and_drop.html-----------------------GETME\">a tweaked<\/a> <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/experimental_drag_and_drop.html-----------------------GETME\">experimental_drag_and_drop.htm<\/a> Drag and Drop basis) we hope you get to try below (when it transforms into the Inhouse Blog Game after the default incarnation) &#8230;<\/p>\n<p><iframe id=myihbqiframe onload=\"if (this.src.indexOf('inhouse_blog_game.') == -1) { var aconto = (this.contentWindow || this.contentDocument); if (aconto.document) { aconto = aconto.document; }  aconto.body.style.border='2px dotted olive'; aconto.body.style.cursor='progress'; setTimeout(function() { document.getElementById('myihbqiframe').src='\/\/www.rjmprogramming.com.au\/HTMLCSS\/inhouse_blog_game.php?reload=y'; }, 7000); aconto.getElementById('score').innerHTML+=' ... awaiting Inhouse Blog Game loading ...';    }\" style=\"width:100%;height:900px;\" src=\"\/\/www.rjmprogramming.com.au\/HTMLCSS\/experimental_drag_and_drop.htm\"><\/iframe><\/p>\n<p> &#8230; worked by our WordPress 404.php now containg the PHP code snippet &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n      if (strpos(('' . str_replace(');%20}','',$_SERVER['QUERY_STRING']) . '~'), '437195~') !== false) { \/\/ Drag and drop quiz<br \/>\n          \/\/file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'p.p','here');<br \/>\n          $prevcontis='';<br \/>\n          $ptfileis=$_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'ptitledddata.html';<br \/>\n          if (file_exists($ptfileis)) { \/\/ thanks to https:\/\/stackoverflow.com\/questions\/67707029\/how-do-i-get-how-long-the-file-was-created-in-seconds-in-php<br \/>\n            $modifdate = filemtime($ptfileis);<br \/>\n            $secondsago = time() - $modifdate;<br \/>\n            if ($secondsago &lt; 50) {<br \/>\n              unlink($ptfileis);<br \/>\n            } else {<br \/>\n              \/\/$prevcontis=file_get_contents(\"http:\/\/www.rjmprogramming.com.au\/ptitledddata.html\" . \"?random=\" . rand(0,56453423));<br \/>\n              $prevcontis=file_get_contents($ptfileis);<br \/>\n            }<br \/>\n          }<br \/>\n          file_put_contents($ptfileis, $prevcontis . \"\\n\" . $ptitle . '?' . str_replace(');%20}','',$_SERVER['QUERY_STRING']));<br \/>\n          \/\/   file_put_contents($ptfileis, $prevcontis . \"\\n\" . $ptitle . '?random=' . explode(')',$_GET['random'])[0]);<br \/>\n          \/\/file_put_contents($ptfileis . \"huh\", $prevcontis . \"\\n\" . $ptitle . '?' . str_replace(');%20}','',$_SERVER['QUERY_STRING']));<br \/>\n      \/\/} else {<br \/>\n      \/\/    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'p.q',('' . str_replace(');%20}','',$_SERVER['QUERY_STRING']) . '~'));<br \/>\n      }<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; to help out the game.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-blog-posting-game-tutorial\/'>Inhouse WordPress Blog Posting Game Tutorial<\/a>.<\/p-->\n<hr>\n<p id='icwpbbist'>Previous relevant <a target=_blank title='Interactively Change WordPress Blog Background Image on Scroll Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/interactively-change-wordpress-blog-background-image-on-scroll-tutorial\/'>Interactively Change WordPress Blog Background Image on Scroll Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Interactively Change WordPress Blog Background Image on Scroll Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll_wp.jpg\" title=\"Interactively Change WordPress Blog Background Image on Scroll Tutorial\" style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Interactively Change WordPress Blog Background Image on Scroll Tutorial<\/p><\/div>\n<p>With yesterday&#8217;s <a title='Interactively Change Background Image on Scroll User Settings Tutorial' href='#icbisust'>Interactively Change Background Image on Scroll User Settings Tutorial<\/a>&#8216;s offering were you &#8220;an intrepid&#8221;, typing &#8230;<\/p>\n<blockquote><p>\n<a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/600\/400\/\">\/\/www.rjmprogramming.com.au\/ITblog\/600\/400\/<\/a>\n<\/p><\/blockquote>\n<p> &#8230; into that newly minted Javascript prompt window designed for user interaction purposes? This populates the background images in our new Image Scrolling with Fixed Text web application with a random selection from the WordPress Blog you are reading.  Because we have some control here, we researched whether our WordPress <a target=_blank title='WordPress Blogs tagged 404.php' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/404.php'>404.php<\/a> logic could be tweaked to help out more in this scenario.  The way the PHP works here, detecting this situation, at the end of its workings, is to use an image header (exemplified by the GIF one below) &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n            header('Content-Type: image\/gif');<br \/>\n            echo file_get_contents($path);<br \/>\n            exit;<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; where $path would point at a GIF image file residing on the RJM Programming domain web server.   This design restricts us from any <i>echo<\/i> functionality before this, so what can we achieve?  <a target=_blank title='?' href='https:\/\/www.youtube.com\/watch?v=uhiCFdWeQfA'>Anyone? Anyone?<\/a> Yes, <a target=_blank title='?' href='https:\/\/en.wikipedia.org\/wiki\/Rasmus_Lerdorf'>Rasmus<\/a>, we can write to other web server files that could be like middle-people between the server (supplier of image data) and client (the webpage that called the server).   After the server work &#8230;<\/p>\n<p>&lt;?php<br \/>\n<code><br \/>\n      if (strpos(('' . str_replace(');%20}','',$_SERVER['QUERY_STRING']) . '~'), '591734~') !== false) {<br \/>\n          \/\/file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'p.p','here');<br \/>\n          $prevcontis='';<br \/>\n          $ptfileis=$_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'ptitledata.html';<br \/>\n          if (file_exists($ptfileis)) { \/\/ thanks to https:\/\/stackoverflow.com\/questions\/67707029\/how-do-i-get-how-long-the-file-was-created-in-seconds-in-php<br \/>\n            $modifdate = filemtime($ptfileis);<br \/>\n            $secondsago = time() - $modifdate;<br \/>\n            if ($secondsago &gt; 5) {<br \/>\n              unlink($ptfileis);<br \/>\n            } else {<br \/>\n              $prevcontis=file_get_contents($ptfileis);<br \/>\n            }<br \/>\n          }<br \/>\n          file_put_contents($ptfileis, $prevcontis . \"\\n\" . $ptitle . '?' . str_replace(');%20}','',$_SERVER['QUERY_STRING']));<br \/>\n          \/\/file_put_contents($ptfileis . \"huh\", $prevcontis . \"\\n\" . $ptitle . '?' . str_replace(');%20}','',$_SERVER['QUERY_STRING']));<br \/>\n      \/\/} else {<br \/>\n      \/\/    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . 'p.q',('' . str_replace(');%20}','',$_SERVER['QUERY_STRING']) . '~'));<br \/>\n      }<br \/>\n<\/code><br \/>\n?&gt;<\/p>\n<p> &#8230; back at that client (which called the server with that appended &#8220;591734&#8221; placed onto the URL to indicate the intention to want to examine this return data), we have Ajax based Javascript logic &#8230;<\/p>\n<p><code><br \/>\n  var ptc='#';<br \/>\n  var iptc=0;<br \/>\n  var btlist=[];<br \/>\n  var vsbtlist=[];<br \/>\n  var omo='';<br \/>\n<br \/>\n  var zhr=null;<br \/>\n  var zform=null;<br \/>\n  var rawhtml='';<br \/>\n  <br \/>\n  function defmaybe(inu) {<br \/>\n    var retomo=omo;<br \/>\n    if (omo != '') {<br \/>\n      omo='';<br \/>\n      return retomo;<br \/>\n    }<br \/>\n    return inu;<br \/>\n  }<br \/>\n<br \/>\n  function stateChanged() {<br \/>\n   var inm=1, jnm=1, thebtitle='';<br \/>\n   if (zhr.readyState == 4) {<br \/>\n   if (zhr.status == 200) {<br \/>\n   rawhtml = zhr.response;<br \/>\n   console.log('rawhtml=' + rawhtml);<br \/>\n   if (rawhtml.indexOf('random=') != -1 && vsbtlist.length &gt; 0) {<br \/>\n     var rawrs=rawhtml.split('random=');<br \/>\n     for (inm=1; inm&lt;rawrs.length; inm++) {<br \/>\n      for (jnm=0; jnm&lt;vsbtlist.length; jnm++) {<br \/>\n        if (vsbtlist[jnm].indexOf('?random=' + rawrs[inm].split(String.fromCharCode(10))[0]) != -1) {<br \/>\n          console.log('found ...');<br \/>\n          thebtitle=rawhtml.split('?random=' + rawrs[inm].split(String.fromCharCode(10))[0])[0].split(String.fromCharCode(10))[eval(-1 + rawhtml.split('?random=' + rawrs[inm].split(String.fromCharCode(10))[0])[0].split(String.fromCharCode(10)).length)];<br \/>\n          console.log(thebtitle);<br \/>\n          document.getElementById(vsbtlist[jnm].split('?')[0]).title=thebtitle + ' ... you can right click to navigate there';<br \/>\n          document.getElementById(vsbtlist[jnm].split('?')[0]).onmouseout=function(){ omo=''; };<br \/>\n          document.getElementById(vsbtlist[jnm].split('?')[0]).onmouseover=function(){ omo='\/\/www.rjmprogramming.com.au\/ITblog\/' + thebtitle.split(' (')[0].toLowerCase().replace(\/\\ \/g,'-'); };<br \/>\n          document.getElementById(vsbtlist[jnm].split('?')[0]).oncontextmenu=function(){ window.open(defmaybe('\/\/www.rjmprogramming.com.au\/ITblog\/' + thebtitle.split(' (')[0].toLowerCase().replace(\/\\ \/g,'-')),'_blank','top=50,left=50,width=800,height=800'); };<br \/>\n        }<br \/>\n      }<br \/>\n     }<br \/>\n   }<br \/>\n   }<br \/>\n   }<br \/>\n  }<br \/>\n<br \/>\n  function ajaxit() {<br \/>\n   zhr = new XMLHttpRequest();<br \/>\n   zhr.onreadystatechange=stateChanged;<br \/>\n   zhr.open('get', '\/\/www.rjmprogramming.com.au\/ptitledata.html?random=' + Math.floor(Math.random() * 196756453), true);<br \/>\n   zhr.send(null);<br \/>\n  }<br \/>\n<\/code><\/p>\n<p> &#8230; adding <i>oncontextmenu<\/i> (ie. right click) functionality to the background images, so as a popup window can open to show the associated WordPress Blog posting linked to the image data.<\/p>\n<p> &#8230; in <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html--GETME\">today&#8217;s changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html--GETME\">interactively_change_background_image_on_scroll.html<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\">web application<\/a> you can <a href='#myicbios'>also try way below<\/a>.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/interactively-change-wordpress-blog-background-image-on-scroll-tutorial\/'>Interactively Change WordPress Blog Background Image on Scroll Tutorial<\/a>.<\/p-->\n<hr>\n<p id='icbisust'>Previous relevant <a target=_blank title='Interactively Change Background Image on Scroll User Settings Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/interactively-change-background-image-on-scroll-user-settings-tutorial\/'>Interactively Change Background Image on Scroll User Settings Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Interactively Change Background Image on Scroll User Settings Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll_more.jpg\" title=\"Interactively Change Background Image on Scroll User Settings Tutorial\" style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Interactively Change Background Image on Scroll User Settings Tutorial<\/p><\/div>\n<p>If you are a regular reader, you&#8217;ll know with the web applications presented here, we usually try to allow the user to control &#8230;<\/p>\n<ul>\n<li>how they function &#8230; and\/or sometimes &#8230;<\/li>\n<li>how they look<\/li>\n<\/ul>\n<p> &#8230; in the ephemeral &#8220;this session&#8221; sense, and sometimes follow that up, depending, with recallable settings often calling on window.localStorage or HTTP Cookies, associated with the web browser being used.<\/p>\n<p>Regarding that <i>ephemeral &#8220;this session&#8221; sense<\/i> above, building on the work of yesterday&#8217;s <a title='Interactively Change Background Image on Scroll Tutorial' href='#icbist'>Interactively Change Background Image on Scroll Tutorial<\/a>, we now allow the user control over defining any\/all &#8230;<\/p>\n<ul>\n<li>Background Image source URL<\/li>\n<li>Refresh delay (in seconds)<\/li>\n<li>Text Wording<\/li>\n<li>Text Background Image source URL<\/li>\n<\/ul>\n<p> &#8230; and regarding the use of that last one, we&#8217;ve decided, somewhat, to take over with the CSS regarding the Text Wording showing through amongst so many &#8220;image interests&#8221; with various opacities &#8230;<\/p>\n<p><code><br \/>\n  var mode='dw';<br \/>\n  <br \/>\n  function preask() {<br \/>\n   if (backimg.trim() != '') {<br \/>\n    if (backimg.toLowerCase().replace(\/\\ \/g,'') == 'lorempicsum') {<br \/>\n       backimg='\/\/picsum.photos\/600\/400' + suffix + '?random=' + Math.floor(Math.random() * 198765643);<br \/>\n       if (mode == 'dw') {<br \/>\n       mode='';<br \/>\n       document.write('&lt;style&gt; .bg-text { background: linear-gradient(rgba(255,255,255,0.8),rgba(255,255,255,0.8)),URL(\"' + backimg + '\"); background-size: contain; background-repeat: repeat;  text-shadow:-2px 2px 2px #ff2d95; opacity: 0.9;  } &lt;\/style&gt;');<br \/>\n       } else {<br \/>\n       document.getElementById('dstyle').innerHTML+='&lt;style&gt; .bg-text { background: linear-gradient(rgba(255,255,255,0.8),rgba(255,255,255,0.8)),URL(\"' + backimg + '\"); background-size: contain; background-repeat: repeat;  text-shadow:-2px 2px 2px #ff2d95; opacity: 0.9;  } &lt;\/style&gt;';<br \/>\n       }<br \/>\n       backimg='lorempicsum';<br \/>\n    } else {<br \/>\n       if (mode == 'dw') {<br \/>\n       mode='';<br \/>\n       document.write('&lt;style&gt; .bg-text { background: linear-gradient(rgba(255,255,255,0.8),rgba(255,255,255,0.8)),URL(\"' + backimg + '\"); background-size: contain; background-repeat: repeat;  text-shadow:-2px 2px 2px #ff2d95; opacity: 0.9;  } &lt;\/style&gt;');<br \/>\n       } else {<br \/>\n       document.getElementById('dstyle').innerHTML+='&lt;style&gt; .bg-text { background: linear-gradient(rgba(255,255,255,0.8),rgba(255,255,255,0.8)),URL(\"' + backimg + '\"); background-size: contain; background-repeat: repeat;  text-shadow:-2px 2px 2px #ff2d95; opacity: 0.9;  } &lt;\/style&gt;';<br \/>\n       }<br \/>\n    }<br \/>\n   }<br \/>\n  }<br \/>\n<\/code><\/p>\n<p>Which beggars the observation &#8230;<\/p>\n<blockquote><p>\nIsn&#8217;t the CSS <a target=_blank title='CSS text-shadow information from W3schools' href='https:\/\/www.w3schools.com\/cssref\/css3_pr_text-shadow.php'>text-shadow<\/a> property just great?!\n<\/p><\/blockquote>\n<p>We use it more and more often to help out foreground text presented with a lot of &#8220;overlay imagery&#8221; going on behind it.<\/p>\n<p>Here is the Javascript prompt window &#8220;blurb&#8221; presented to the user should they want to delve into this woooooorrrrrlllllldddd just by clicking or touching in the non-text part of the webpage &#8230;<\/p>\n<blockquote><p>\n      <font size=1>var ansis=prompt(&#8216;<\/font>Optionally enter in background source URL prefix [&#8216; + prefix + midbit + suffix + &#8216;] ( or type Lorem Picsum or for blog posting images you could try \/\/www.rjmprogramming.com.au\/ITblog\/&#8217; + sixhundred + &#8216;\/&#8217; + fourhundred + &#8216;\/ ), hashtag delimited from an optional imagery refresh rate in seconds [&#8216; + ten + &#8216;], hashtag delimited from an optional Text element background image (or type Lorem Picsum), hashtag delimited from optional Text wording [&#8216; + tcont + &#8216;] we will assume involves a space.<font size=1>&#8216;, &#8221;);<\/font>\n<\/p><\/blockquote>\n<p> &#8230; in <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html-GETME\">the changed<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html-GETME\">interactively_change_background_image_on_scroll.html<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\">web application<\/a> you can <a href='#myicbios'>also try below<\/a>.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/interactively-change-background-image-on-scroll-user-settings-tutorial\/'>Interactively Change Background Image on Scroll User Settings Tutorial<\/a>.<\/p-->\n<hr>\n<p id='icbist'>Previous relevant <a target=_blank title='Interactively Change Background Image on Scroll Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/interactively-change-background-image-on-scroll-tutorial\/'>Interactively Change Background Image on Scroll Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Interactively Change Background Image on Scroll Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.gif\" title=\"Interactively Change Background Image on Scroll Tutorial\" style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Interactively Change Background Image on Scroll Tutorial<\/p><\/div>\n<p>Regarding today&#8217;s &#8220;Interactively Change Background Image on Scroll&#8221; topic, we&#8217;d like to thank, profusely, two sources &#8230;<\/p>\n<ul>\n<li>Ideas and Initial Code &#8230; <a target=_blank href='https:\/\/www.w3schools.com\/'>W3School<\/a>&#8216;s <a target=_blank href='https:\/\/www.w3schools.com\/howto\/howto_css_bg_change_scroll.asp' title='How TO - Change Background on Scroll'>How TO &#8211; Change Background on Scroll<\/a><\/li>\n<li>Background Image Content &#8230; <a target=_blank href='https:\/\/picsum.photos\/'>Lorem Picsum<\/a><\/li>\n<\/ul>\n<p>Queue &#8230; <a target=_blank title='?' href='https:\/\/www.youtube.com\/watch?v=yTapoA5RQyo'>Lulu<\/a> <font size=1>(no, not <a target=_blank href='https:\/\/www.rjmprogramming.com.au\/Android\/NalaLuna.jpg'>the dog<\/a>, this time)<\/font>!<\/p>\n<p>Yes, we&#8217;ve just added &#8220;Interactively&#8221;, we hear you say <font size=1>(just maybe, perhaps, a tad sarcastically, shall we say &#8230; huh?!!!!)<\/font>.  But, it&#8217;s the &#8230;<\/p>\n<ul>\n<li><i><a target=_blank title='Global contenteditable attribute information from W3schools' href='https:\/\/www.w3schools.com\/tags\/att_global_contenteditable.asp'>contenteditable=true<\/a><\/i> HTML div <font size=1>(not new by itself &#8230; but combined with)<\/font> &#8230;<\/li>\n<li>text length calculator logic (using an HTML canvas element&#8217;s <a target=_blank title='Canvas measureText information from W3Schools' href='https:\/\/www.w3schools.com\/jsref\/canvas_measuretext.asp'>measureText<\/a> functionality), thanks to <a target=_blank href='https:\/\/stackoverflow.com\/questions\/31305071\/measuring-text-width-height-without-rendering' title='https:\/\/stackoverflow.com\/questions\/31305071\/measuring-text-width-height-without-rendering'>https:\/\/stackoverflow.com\/questions\/31305071\/measuring-text-width-height-without-rendering<\/a> &#8230; calling on &#8230;<\/li>\n<li><a target=_blank title='HTML onkeydown event information from W3Schools' href='https:\/\/www.w3schools.com\/jsref\/event_onkeydown.asp'><i>onkeydown<\/i><\/a> logic &#8230; to be a bit savvy regarding the text element width (along with use of <a target=_blank title='Javascropt DOM innerText information from W3Schools' href='https:\/\/www.w3schools.com\/jsref\/prop_node_innertext.asp'>innerText<\/a> and the <a target=_blank title='HTML onblur event information from W3Schools' href='https:\/\/www.w3schools.com\/jsref\/event_onblur.asp'><i>onblur<\/i><\/a> event logic backup)<\/li>\n<\/ul>\n<p> &#8230; that is all a bit new, at least to us, today, continuing on the recent wonder regarding <i>contenteditable=true<\/i>, mentioned in the recent <a target=_blank title='Animated GIF SVG Quiz Automation Interaction Tutorial' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/animated-gif-svg-quiz-automation-interaction-tutorial\/'>Animated GIF SVG Quiz Automation Interaction Tutorial<\/a> &#8230;<\/p>\n<blockquote cite='https:\/\/www.rjmprogramming.com.au\/ITblog\/animated-gif-svg-quiz-automation-interaction-tutorial\/'><p>\nAnd did you know, at least for non-mobile platforms, you can set the focus (on non-mobile platforms only, as there are the \u201ckeyboard getting in the way\u201d issues we\u2019re thankful for with mobile platforms which preclude any thoughts of a programmed [element].focus() operation) to one of these \u201ccontenteditable=true style elements\u201d? We\u2019d never been sure, only focussing to HTML input textboxes and textareas up to now, we believe.\n<\/p><\/blockquote>\n<p> &#8230; whereby non-mobile focus to a contenteditable=true HTML div type (innerHTML style) element is possible, adding to the original W3School&#8217;s content ideas swirling around &#8230;<\/p>\n<ul>\n<li>CSS position: fixed; &#8230; for foreground text, in relation to &#8230;<\/li>\n<li>scrolling &#8230; with &#8230;<\/li>\n<li>background image<sub>ry<\/sub><\/li>\n<\/ul>\n<p> &#8230; for topics we hope you find as interesting as we did, in our new <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html_GETME\">&#8220;proof of concept&#8221;<\/a> <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\">web application<\/a> you can also try below &#8230;<\/p>\n<p><iframe id=myicbios style=\"width:100%;height:900px;\" src=\"https:\/\/www.rjmprogramming.com.au\/HTMLCSS\/interactively_change_background_image_on_scroll.html\"><\/iframe> <\/p>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d60859' onclick='var dv=document.getElementById(\"d60859\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/fixed\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d60859' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d60876' onclick='var dv=document.getElementById(\"d60876\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/text-shadow\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d60876' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d60879' onclick='var dv=document.getElementById(\"d60879\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/wordpress\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d60879' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d60886' onclick='var dv=document.getElementById(\"d60886\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/drag\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d60886' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d60910' onclick='var dv=document.getElementById(\"d60910\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/topic\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d60910' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d60933' onclick='var dv=document.getElementById(\"d60933\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/gd\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d60933' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d60940' onclick='var dv=document.getElementById(\"d60940\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/argument\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d60940' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>The next step to improving on yesterday&#8217;s Inhouse WordPress Image Filter Source Tutorial &#8230; WordPress Topic theme &#8230; today we have a new layer of functionality involving &#8230; Image PHP Filter theme &#8230; using PHP GD manipulations &#8230; would be &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/inhouse-wordpress-image-filter-arguments-tutorial\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,14,15,37],"tags":[4395,1885,1835,151,1580,257,2442,4397,2237,364,4385,400,431,476,1550,3526,652,3987,1666,1886,4491,932,970,972,3895,997,1069,3156,1238,1581,1268,2167,3167,1319,3975,1324,1325,1891,1456],"class_list":["post-60940","post","type-post","status-publish","format-standard","hentry","category-elearning","category-event-driven-programming","category-games","category-tutorials","tag-action-item","tag-argument","tag-arguments","tag-blog","tag-cell","tag-content","tag-contenteditable","tag-cut-to-the-chase","tag-drag","tag-drag-and-drop","tag-drop","tag-event","tag-filter","tag-game","tag-gd","tag-image-filter","tag-javascript","tag-oncontextmenu","tag-ondblclick","tag-parameter","tag-parameters","tag-php","tag-post","tag-posting","tag-posting-title","tag-programming","tag-right-click","tag-splash-screen","tag-table","tag-table-cell","tag-theme","tag-title","tag-topic","tag-tutorial","tag-tutorial-picture","tag-twentyten","tag-twentyten-theme","tag-user","tag-wordpress"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/60940"}],"collection":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/comments?post=60940"}],"version-history":[{"count":8,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/60940\/revisions"}],"predecessor-version":[{"id":60968,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/60940\/revisions\/60968"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=60940"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=60940"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=60940"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}