HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/deensekroon.komma-mediadesign.nl/wwwroot/admin/php/js_media.php
<?php
//session_set_cookie_params(0, '/', '.deensekroon.nl');
session_start();

/*
	
	DEENSE KROON
	 
	js_media.php 
	this page is loadad in forms with jquery (for example add product)

	Mike Ontwerpt 2012
	www.mikeontwerpt.nl
	
*/

/* reinclude sources (because this is a jquery-loaded pages) */
require_once 'connect.php';
require_once 'functions2.php';

/* check if folderstring sessions needs to be updates (when clicked on a folder */
if(isset($_GET['folderstr'])){
	$_SESSION['folder-string'] = $_GET['folderstr'];
}

if(isset($_GET['sessionname'])){ $sessionname = $_GET['sessionname']; }else{ $sessionname = 'empty'; }

/* as image or as shortcode ? */
if(!isset($_GET['method'])){ $method = 'insertAsImage'; }
else{ $method = $_GET['method']; }

/* start output */
$output = '';
if(isset($_GET['action'])){
	$action = $_GET['action'];
	switch($action){
		case 'showSessionImages' :
			/* add image to session */
			$output .= showSessionImages($sessionname);
		break;
		default:
		/* content -> load folders & files */
		$output .= displayContent($sessionname,$method);
	}
}
else{
	$output .= displayContent($sessionname,$method);
}

/* echo */
echo $output;


function displayContent($sessionname, $method){
	/* access the global sql object */
	global $mysqli;	
	#1 DISPLAY FOLDERS
	$output = '';
	/* folder structure - where am i */
	$output .= showFolderStructure($sessionname,$method);
	
	//always show one row
	$output .= '<div class="triple-column jsMedia-Holder">';
		$output .= '<div class="medialib-thumb-row">';
		
		
		isset($_SESSION['folder-string']) ? $currentString = $_SESSION['folder-string'] : $currentString = 'root';
		$query = 'SELECT DISTINCT f.id, f.title, f.folderstring
				FROM media_folders AS f, content_status AS s
				WHERE f.id = s.itemId
				AND s.linkname = "media_folders"
				AND s.active = "1"
				AND f.folderstring LIKE "'.$currentString.'%"
				AND f.folderstring != "'.$currentString.'"
				ORDER BY f.title';  			
		if(!$result = $mysqli->query($query)){
			//handle errors
			$errors[] = $siteLabels['fm-somethingwentwrong'];
			displayErrors($errors);
		}
		else{
			//display folders
			$colcount = 0;
			while($record = $result->fetch_assoc()){
				$folderId = $record['id'];
				$title = fromDatabase($record['title']);
				$folderstring = $record['folderstring'];
				
				//only display when we are on the right level
				$temp = explode('_',$_SESSION['folder-string']);
				$currentLevel = count($temp); //level where we are 
				$temp2 = explode('_',$folderstring);
				$thisLevel = count($temp2); // level of folder			
				if($thisLevel == ($currentLevel+1)){
					//display
					$output .= '<div class="medialib-thumb-holder">';
						//$output .= '<a href="./media/'.$folderstring.'/">';
							$output .= '<span class="medialib-thumb-folder" onClick="getPage(\'lib-holder\',\'js_media\',\'folderstr='.$folderstring.'&sessionname='.$sessionname.'&method='.$method.'\');"></span>';
							$output .= '<span class="medialib-thumb-title">';	
								$output .= $title;
							$output .= '</span>';
						//$output .= '</a>';	
						$output .= '<div class="medialib-thumb-actions">';
						$output .= '</div>';
					$output .= '</div>';
					
					$colcount++;
					if($colcount == 10){
						$output .= '</div>';
						$output .= '<div class="medialib-thumb-row">';
						$colcount = 0;
					}
				}
			}		
		}
		
		#2 DISPLAY FILES
		$query = 'SELECT DISTINCT f.id, f.type, f.title, f.cp_thumb, f.shortcode
				FROM media_files AS f, content_status AS s
				WHERE f.id = s.itemId
				AND s.linkname = "media_files"
				AND s.active = "1"
				AND f.folderstring = "'.$currentString.'"
				ORDER BY f.title';
		if(!$result = $mysqli->query($query)){
			//handle errors
			$errors[] = $siteLabels['fm-somethingwentwrong'];
			displayErrors($errors);
		}
		else{
			while($record = $result->fetch_assoc()){
				$fileId = $record['id'];
				$type = $record['type'];
				$shortcode = $record['shortcode'];
				$title = fromDatabase($record['title']);
				$thumb = '../images/uploads/thumb/'.$record['cp_thumb'];
				
			///////// voor deense kroon:
				$stockcode = '';
				if($stockResult = $mysqli->query('SELECT title FROM media_files WHERE shortcode = "'.$shortcode.'" LIMIT 1')){
					$stockRecord = $stockResult->fetch_assoc();
					$stockcode = urlencode($stockRecord['title']);						
				}
			/////////
				
				
				//display files
				if($method == 'insertAsImage') {
					$check = ' onClick="getPage(\'form-images-holder\',\'js_media\',\'action=showSessionImages&update=1&sessionname='.$sessionname.'&shortcode='.$shortcode.'&mediaid='.$fileId.'&stockcode='.$stockcode.'\')"';
				}
				if($method == 'insertAsShortcode'){
					$check = ' onclick="checkInsert(\''.$shortcode.'\');"';
				}
					 $output .= '<div class="medialib-thumb-holder">';
						if($type == 2) $output .= '<span class="medialib-thumb-vimeo"'.$check.'>';
						if($type == 3) $output .= '<span class="medialib-thumb-youtube"'.$check.'>';
						if($type == 1) $output .= '<span class="medialib-thumb-image"'.$check.'>';
						if($type == 1) $output .= '<img src="'.$thumb.'" alt="'.$title.'" />';
						$output .= '</span>';
						$output .= '<span class="medialib-thumb-title">';	
							$output .= $title;
						$output .= '</span>';
					$output .= '<div class="medialib-thumb-actions">';
						$output .= $shortcode;
					$output .= '</div>';
				$output .= '</div>';
				
				$colcount++;
				if($colcount == 4){
					$output .= '<div class="clear"></div>';
					$output .= '</div>';
					$output .= '<div class="medialib-thumb-row">';
					$colcount = 0;
				}
			}
		}
		
		$output .= '<div class="clear"></div>';
		$output .= '</div>';
		//end first row
		
		//end form for checkboxes
	$output .= '</div>';
	
	return $output;
}




/* SHOW FOLDER STRUCTURE */

function showFolderStructure($sessionname,$method){
	/* access the global sql object */
	global $mysqli;	
	
	$output = '';
	/* folder structure - where am i */
	$output .= '<div id="jsfolder-structure-holder">';
	
	#1 always start with media
		//$output .= '<a href="./media/root/">';
		if($_SESSION['folder-string'] == 'root'){
			//if isset sub media is not active	
			$output .= '<span class="small-active-folder" onClick="getPage(\'lib-holder\',\'js_media\',\'folderstr=root&sessionname='.$sessionname.'&method='.$method.'\');"></span>';
		}
		else{
			//if !isset sub media is active	
			$output .= '<span class="small-folder" onClick="getPage(\'lib-holder\',\'js_media\',\'folderstr=root&sessionname='.$sessionname.'&method='.$method.'\');"></span>';
		}
		$output .= '<span  onClick="getPage(\'lib-holder\',\'js_media\',\'folderstr=root&sessionname='.$sessionname.'&method='.$method.'\');">media</span>';
		//$output .= '</a>';
		
	#2 get the rest 
	//explode string
	$folders = explode('_',$_SESSION['folder-string']);
	$foldersUrl = explode('_',$_SESSION['folder-string']);
	//folders[0] == root
	if(count($folders) > 1){
		foreach($folders as $key => $linkname){
			//get title of each folder
			$query = 'SELECT title
					FROM media_folders
					WHERE folderstring LIKE "%'.$linkname.'" LIMIT 1';  			
			if(!$result = $mysqli->query($query)){
				//handle errors
				$errors[] = $siteLabels['fm-somethingwentwrong'];
				displayErrors($errors);
			}
			else{
				//get info
				$record = $result->fetch_assoc();
				$title = fromDatabase($record['title']);
				
				//display folders
				if($key != 0){ //0 = 'root'
					//folder
					$output .= ' &rsaquo; ';
					//for loop for the link
					//$output .= '<a href="./media/';
						$url = 'root_';
						for($i=1;$i<=$key;$i++){	
							$url .= $folders[$i].'_';
						}
						//substract last _
						$url = substr($url,0,(strlen($url)-1));
						
					//$output .= '">';
					//folder
					$key == (count($folders)-1) ? $output .= '<span class="small-active-folder" onClick="getPage(\'lib-holder\',\'js_media\',\'folderstr='.$url.'&method='.$method.'&sessionname='.$sessionname.'\');"></span>' : $output .= '<span class="small-folder"  onClick="getPage(\'lib-holder\',\'js_media\',\'folderstr='.$url.'&method='.$method.'&sessionname='.$sessionname.'\');"></span>';
					$output .= '<span onClick="getPage(\'lib-holder\',\'js_media\',\'folderstr='.$url.'&sessionname='.$sessionname.'\');">'.$title.'</span>';	
					//$output .= '</a>';
				}			
			}			
		}			
	}
	
	$output .= '</div>';	
	return $output;
}


function showSessionImages($sessionname){
	/* access the global sql object */
	global $mysqli;	
	//need an update?

	if(isset($_GET['update'])){	
		if($_GET['update'] == 1){
			//need the shortcode and the form-session 
			$shortcode = $_GET['shortcode'];
			$key = $_GET['mediaid'];
			$_SESSION[$sessionname]['shortcodes'][$key] = $shortcode;

		}
		else if($_GET['update'] == 2){
			//unset key from session
			$key = $_GET['key'];

            $updateThumb = $updateHover = false;
            if($_SESSION[$sessionname]['thumb'] == $_SESSION[$sessionname]['shortcodes'][$key])
            {
                $updateThumb = true;
            }
            if($_SESSION[$sessionname]['hover'] == $_SESSION[$sessionname]['shortcodes'][$key])
            {
                $updateHover = true;
            }

            // Unset Thumb
			unset($_SESSION[$sessionname]['shortcodes'][$key]);

            // Set new Thumb
            if($updateThumb)
            {
                $_SESSION[$sessionname]['thumb'] = $_SESSION[$sessionname]['shortcodes'][ key($_SESSION[$sessionname]['shortcodes']) ];
            }

            // Set new hover
            if($updateHover)
            {
                $_SESSION[$sessionname]['hover'] = $_SESSION[$sessionname]['shortcodes'][ key($_SESSION[$sessionname]['shortcodes']) ];
            }
		}
	}

    // Check for thumb and hover
    if(empty($_SESSION[$sessionname]['thumb']))
    {
        $_SESSION[$sessionname]['thumb'] = $_SESSION[$sessionname]['shortcodes'][ key($_SESSION[$sessionname]['shortcodes']) ];
    }
    if(empty($_SESSION[$sessionname]['hover']))
    {
        $_SESSION[$sessionname]['hover'] = $_SESSION[$sessionname]['shortcodes'][ key($_SESSION[$sessionname]['shortcodes']) ];
    }

	$output = '';
	//display images
	$order = array();
	foreach($_SESSION[$sessionname]['shortcodes'] as $key => $shortcode){
		//get url from database
		$query = 'SELECT f.cp_thumb
				FROM media_files AS f, content_status AS s
				WHERE f.id = s.itemId
				AND s.linkname = "media_files"
				AND s.active = "1"
				AND f.shortcode = "'.$shortcode.'"
				LIMIT 1';
		if(!$result = $mysqli->query($query)){
			//handle errors
		}
		else{
			$record = $result->fetch_assoc();
			$url = $record['cp_thumb'];
			
			$output .= '<div class="medialib-thumb-holder">';
				$output .= '<span class="medialib-thumb-image">';
					$output .= '<img src="../images/uploads/thumb/'.$url.'" alt="'.$shortcode.'" />';
				$output .= '</span>';
				$output .= '<span class="deleteImageFromSession-button" onClick="getPage(\'form-images-holder\',\'js_media\',\'action=showSessionImages&update=2&sessionname='.$sessionname.'&key='.$key.'\');">&times;</span><br />';

                // Set this image as thumbnail
                $output .= '<input type="radio" name="setThumb" value="' . $shortcode . '"';
                if($shortcode == $_SESSION[$sessionname]['thumb']) $output .= ' checked';
                $output .= '>Thumb<br />';

                // Set this image as hover image
                $output .= '<input type="radio" name="setHover" value="' . $shortcode . '"';
                if($shortcode == $_SESSION[$sessionname]['hover']) $output .= ' checked';
                $output .= '>Hover<br />';

			$output .= '</div>';
			$order[] = $key;
		}
	}

	return $output;
}

?>