function photogallery_folder_view($folder) { global $CFG, $metatags, $messages; require_once $CFG->dirroot . 'lib/filelib.php'; $metatags .= file_get_contents($CFG->dirroot . "mod/photogallery/css"); $metatags .= <<<END <script type="text/javascript"> var elggWwwRoot = "{$CFG->wwwroot}"; </script> <script type="text/javascript" src="{$CFG->wwwroot}mod/photogallery/lightbox/js/prototype.js"></script> <script type="text/javascript" src="{$CFG->wwwroot}mod/photogallery/lightbox/js/scriptaculous.js?load=effects"></script> <script type="text/javascript" src="{$CFG->wwwroot}mod/photogallery/lightbox/js/lightbox.js"></script> <link rel="stylesheet" href="{$CFG->wwwroot}mod/photogallery/lightbox/css/lightbox.css" type="text/css" media="screen" /> END; $file_html = ""; $photo_html = ""; $folder_html = ""; // Get all the files in this folder if ($files = get_records_select('files', "folder = ? AND files_owner = ? ORDER BY time_uploaded desc", array($folder->ident, $folder->files_owner))) { foreach ($files as $file) { if (run("users:access_level_check", $file->access) == true) { $image = $CFG->wwwroot . "_files/icon.php?id=" . $file->ident . "&w=200&h=200"; $filepath = $CFG->wwwroot . user_info("username", $file->files_owner) . "/files/{$folder->ident}/{$file->ident}/" . urlencode($file->originalname); $image = "<a href=\"{$CFG->wwwroot}_files/icon.php?id={$file->ident}&w=500&h=500\" rel=\"lightbox[folder]\"><img src=\"{$image}\" /></a>"; $fileinfo = round($file->size / 1048576, 4) . "Mb"; $filelinks = file_edit_links($file); $uploaded = sprintf(__gettext("Uploaded on %s"), strftime("%A, %d %B %Y", $file->time_uploaded)); $keywords = display_output_field(array("", "keywords", "file", "file", $file->ident, $file->owner)); $mimetype = mimeinfo('type', $file->originalname); if (empty($file->title)) { $file->title = __gettext("No title"); } if (substr_count($mimetype, "image") > 0) { $photo_html .= <<<END <div class="photogallery-photo-container"> <div class="photogallery-photo-image"> {$image} </div> <div class="photogallery-photo-info"> <h2 class="photogallery-photo-title"><a href="{$filepath}" >{$file->title}</a></h2> <p class="photogallery-photo-description"> {$file->description} </p> <p class="photogallery-photo-keywords"> {$keywords} </p> <p class="photogallery-photo-infobar"> {$uploaded}<br /> {$fileinfo} {$mimetype} {$filelinks} </p> </div> </div> END; } else { $file_html .= <<<END <div class="photogallery-file-container"> <div class="photogallery-file-image"> <a href="{$filepath}">{$image}</a> </div> <div class="photogallery-file-info"> <h2 class="photogallery-file-title"><a href="{$filepath}">{$file->title}</a></h2> <p>{$file->description}</p> <p class="photogallery-file-keywords"> {$keywords} </p> <p class="photogallery-file-infobar"> {$uploaded}<br /> {$fileinfo} {$mimetype} {$filelinks} </p> </div> </div> END; } } } } if ($subfolders = get_records_select('file_folders', "parent = ? AND files_owner = ? ORDER BY name desc", array($folder->ident, $folder->owner))) { foreach ($subfolders as $subfolder) { $folderlinks = file_folder_edit_links($subfolder); $keywords = display_output_field(array("", "keywords", "folder", "folder", $subfolder->ident, $subfolder->owner)); $filepath = $CFG->wwwroot . user_info("username", $folder->files_owner) . "/files/" . $subfolder->ident; $folder_html .= <<<END <div class="photogallery-file-container"> <div class="photogallery-file-image"> <a href="{$filepath}"><img src="{$CFG->wwwroot}_files/folder.png" /></a> </div> <div class="photogallery-file-info"> <h2 class="photogallery-file-title"><a href="{$filepath}">{$subfolder->name}</a></h2> <p class="photogallery-file-keywords"> {$keywords} </p> <p class="photogallery-file-infobar"> {$folderlinks} </p> </div> </div> END; } } if (!empty($file_html)) { $file_html = "<h2>" . __gettext("Non-photo files") . "</h2>" . $file_html; } if (!empty($folder_html)) { $folder_html = "<h2>" . __gettext("Subfolders") . "</h2>" . $folder_html; } $body = $photo_html . $file_html . $folder_html; if (empty($body)) { $body = "<p>" . __gettext("This folder is currently empty.") . "</p>"; } return $body; }
function file_folder_view($folder) { global $CFG; /* * View a specific folder * (Access rights are presumed) */ // Find out who's the owner global $page_owner; $owner_username = user_info('username', $page_owner); // If we're not in the parent folder, provide a link to return to the parent /* if ($folder->ident != -1) { $folder->name = stripslashes($folder->name); } */ $body = "<h2>" . $folder->name . "</h2>"; // Firstly, get a list of folders // Display folders we actually have access to if ($folder->idents = get_records_select('file_folders', "parent = {$folder->ident} AND (" . run("users:access_level_sql_where") . ") and files_owner = {$page_owner}")) { $subFolders = __gettext("Subfolders"); // gettext variable $body .= <<<END <h3> {$subFolders} </h3> END; foreach ($folder->idents as $folder->ident_details) { if (run("users:access_level_check", $folder->ident_details->access) == true) { $username = $owner_username; $ident = (int) $folder->ident_details->ident; $name = get_access_description($folder->ident_details->access); $name .= stripslashes($folder->ident_details->name); $folder->identmenu = file_folder_edit_links($folder->ident_details); $keywords = display_output_field(array("", "keywords", "folder", "folder", $ident, $folder->ident_details->owner)); if ($keywords) { $keywords = __gettext("Keywords: ") . $keywords; } $body .= templates_draw(array('context' => 'folder', 'username' => $username, 'url' => $CFG->wwwroot . "{$username}/files/{$ident}", 'ident' => $ident, 'name' => $name, 'menu' => $folder->identmenu, 'icon' => $CFG->wwwroot . "mod/file/folder.png", 'keywords' => $keywords)); } } } // Then get a list of files // View files we actually have access to if ($files = get_records_select('files', "folder = ? AND files_owner = ?", array($folder->ident, $page_owner))) { foreach ($files as $file) { if (run("users:access_level_check", $file->access) == true || $file->owner == $_SESSION['userid']) { $username = $owner_username; $ident = (int) $file->ident; $folder->ident = $file->folder; $title = get_access_description($file->access); $title .= stripslashes($file->title); $description = nl2br(stripslashes($file->description)); $filetitle = urlencode($title); $originalname = stripslashes($file->originalname); $filemenu = round($file->size / 1048576, 4) . "MB "; $icon = $CFG->wwwroot . "_icon/file/" . $file->ident; $filepath = $CFG->wwwroot . "{$username}/files/{$folder->ident}/{$ident}/" . urlencode($originalname); $mimetype = mimeinfo('type', $file->originalname); if ($mimetype == "audio/mpeg" || $mimetype == "audio/mp3") { $filemenu .= " <object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\"\n codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0\"\n width=\"17\" height=\"17\" >\n <param name=\"allowScriptAccess\" value=\"sameDomain\" />\n <param name=\"movie\" value=\"" . $CFG->wwwroot . "mod/file/mp3player/musicplayer.swf?song_url={$filepath}&song_title={$filetitle}\" />\n <param name=\"quality\" value=\"high\" />\n <embed src=\"" . $CFG->wwwroot . "mod/file/mp3player/musicplayer.swf?song_url={$filepath}&song_title={$filetitle}\"\n quality=\"high\" bgcolor=\"#E6E6E6\" name=\"xspf_player\" allowscriptaccess=\"sameDomain\"\n type=\"application/x-shockwave-flash\"\n pluginspage=\"http://www.macromedia.com/go/getflashplayer\"\n align=\"center\" height=\"17\" width=\"17\" />\n </object>"; } $filemenu = file_edit_links($file); $keywords = display_output_field(array("", "keywords", "file", "file", $ident, $file->owner)); if ($keywords) { $keywords = __gettext("Keywords: ") . $keywords; } $body .= templates_draw(array('context' => 'file', 'username' => $username, 'title' => $title, 'ident' => $ident, 'folder' => $folder->ident, 'description' => $description, 'originalname' => $originalname, 'url' => $filepath, 'menu' => $filemenu, 'icon' => $icon, 'keywords' => $keywords)); $body .= display_run_displayobjectannotations($file, "file::file"); } } } // Deliver an apologetic message if there aren't any files or folders if (empty($files) && empty($folder->idents)) { $body .= "<p>" . __gettext("This folder is currently empty.") . "</p>"; } return $body; }
/** * Gets the value of a particular profile item. * * @uses $CFG * @param $userid int The ident of the user we're querying. * @param $profile_field string The short name of the profile item we're querying. * @return string The value of the profile item - or a blank string. */ function get_profile_item($userid, $profile_field) { global $CFG, $db, $data; $body = ""; foreach ($data['profile:details'] as $field_row) { if ($field_row->internal_name == $profile_field) { $field = $field_row; } } if (!empty($field)) { $value = get_record_sql("select * from {$CFG->prefix}profile_data where owner = {$userid} and name = " . $db->qstr($profile_field)); if (run("users:access_level_check", $value->access)) { $body = display_output_field(array($value->value, $field->field_type, $field->internal_name, $field->name, $value->ident)); } } return $body; }
<?php global $profile_id; $field = $parameter[0]; $allvalues = $parameter[1]; if (sizeof($field) >= 2) { $value = get_record('profile_data', 'name', $field[1], 'owner', $profile_id); $value->value = ""; $value->access = ""; foreach ($allvalues as $curvalue) { if ($curvalue->name == stripslashes($field[1])) { $value = $curvalue; } } /* if (isset($value[0])) { $value = $value[0]; } else { $value->value = ""; $value->access = ""; } */ if ($value->value != "" && $value->value != "blank" && run("users:access_level_check", $value->access)) { $name = $field[0]; $column1 = display_output_field(array($value->value, $field[2], $field[1], $field[0], $value->ident)); $run_result .= templates_draw(array('context' => 'databox1', 'name' => $name, 'column1' => $column1)); } }
} $title = get_access_description($post->access); $title .= htmlspecialchars($post->title, ENT_COMPAT, 'utf-8'); if ($post->owner != $post->weblog) { if ($post_authors[$post->owner]->icon == -1) { $usericon = $post_authors[$post->weblog]->icon; } $fullname .= " @ " . $post_authors[$post->weblog]->fullname; $username = run("users:id_to_name", $post->weblog); } $body = run("weblogs:text:process", $post->body); $More = gettext("More"); $Keywords = gettext("Keywords:"); $anyComments = gettext("comment(s)"); $body = str_replace("{{more}}", "<a href=\"" . url . $username . "/weblog/{$post->ident}.html\">{$More} ...</a>", $body); $keywords = display_output_field(array("", "keywords", "weblog", "weblog", $post->ident, $post->owner)); if ($keywords) { $body .= <<<END <div class="weblog_keywords"> <p> {$Keywords} {$keywords} </p> </div> END; } //if ($post->owner == $_SESSION['userid'] && logged_on) { if (run("permissions:check", array("weblog:edit", $post->owner))) { $Edit = gettext("Edit"); $returnConfirm = gettext("Are you sure you want to permanently delete this weblog post?"); $Delete = gettext("Delete"); $body .= <<<END
$mimetype = mimeinfo('type', $file->originalname); if ($mimetype == "audio/mpeg" || $mimetype == "audio/mp3") { $filemenu .= "<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\"\r\ncodebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0\"\r\nwidth=\"400\" height=\"15\" >\r\n <param name=\"allowScriptAccess\" value=\"sameDomain\" />\r\n <param name=\"movie\" value=\"" . $CFG->wwwroot . "_files/mp3player/musicplayer.swf?song_url={$filepath}&song_title={$filetitle}\" />\r\n <param name=\"quality\" value=\"high\" />\r\n <embed src=\"" . $CFG->wwwroot . "_files/mp3player/musicplayer.swf?song_url={$filepath}&song_title={$filetitle}\"\r\n quality=\"high\" bgcolor=\"#E6E6E6\" name=\"xspf_player\" allowscriptaccess=\"sameDomain\"\r\n type=\"application/x-shockwave-flash\"\r\n pluginspage=\"http://www.macromedia.com/go/getflashplayer\"\r\n align=\"center\" height=\"17\" width=\"17\"> </embed>\r\n</object>"; } if (run("permissions:check", array("files:edit", $file->owner)) || run("permissions:check", array("files:edit", $file->files_owner))) { $areyouSure = gettext("Are you sure you want to permanently delete this file?"); // gettext variable $delete = gettext("Delete"); // gettext variable $edit = gettext("Edit"); // gettext variable $filemenu .= <<<END [<a href="{$CFG->wwwroot}_files/edit_file.php?edit_file_id={$file->ident}&owner={$page_owner}">{$edit}</a>] [<a href="{$CFG->wwwroot}_files/action_redirection.php?action=delete_file&delete_file_id={$file->ident}" onclick="return confirm('{$areyouSure}')">{$delete}</a>] END; } else { $filemenu = ""; } $keywords = display_output_field(array("", "keywords", "file", "file", $ident, $file->owner)); if ($keywords) { $keywords = gettext("Keywords: ") . $keywords; } $body .= templates_draw(array('context' => 'file', 'username' => $username, 'title' => $title, 'ident' => $ident, 'folder' => $folder, 'description' => $description, 'originalname' => $originalname, 'url' => $filepath, 'menu' => $filemenu, 'icon' => $icon, 'keywords' => $keywords)); } } } // Deliver an apologetic message if there aren't any files or folders if (empty($files) && empty($folders)) { $body .= "<p>" . gettext("This folder is currently empty.") . "</p>"; } $run_result .= $body;
function field_display($field, $allvalues) { global $data; $run_result = ''; if (sizeof($field) >= 2) { // $value = get_record('profile_data','name',$field[1],'owner',$this->id); foreach ($allvalues as $curvalue) { if ($curvalue->name == stripslashes($field[1])) { $value = $curvalue; break; // found it, done! } } if (!isset($value)) { return ''; } if ($value->value != "" && $value->value != "blank" && (run("users:access_level_check", $value->access) || isset($_SESSION['userid']) && $value->owner == $_SESSION['userid'])) { $name = $field[0]; $column1 = display_output_field(array($value->value, $field[2], $field[1], $field[0], $value->ident)); $run_result .= templates_draw(array('context' => 'databox1', 'name' => $name, 'column1' => $column1)); } } return $run_result; }
<?php // backwards compatibility if (isset($parameter)) { $run_result = display_output_field($parameter); }
function field_display($field, $allvalues) { global $data; $run_result = ''; // If we're dealing with the old-style profile fields if (is_array($field)) { $flabel = !empty($field[0]) ? $field[0] : ''; $fname = !empty($field[1]) ? $field[1] : ''; $ftype = !empty($field[2]) ? $field[2] : ''; $fblurb = !empty($field[3]) ? $field[3] : ''; $fusertype = !empty($field[4]) ? $field[4] : ''; // Otherwise map things the new way! } else { $flabel = $field->name; $fname = $field->internal_name; $ftype = $field->field_type; $fblurb = $field->description; $fusertype = $field->user_type; $finvisible = $field->invisible; $frequired = $field->required; } //if (sizeof($field) >= 2) { // $value = get_record('profile_data','name',$field[1],'owner',$this->id); if (is_array($allvalues) && !empty($allvalues)) { foreach ($allvalues as $curvalue) { if ($curvalue->name == stripslashes($fname)) { $value = $curvalue; break; // found it, done! } } } if (!isset($value)) { return ''; } if ($value->value != "" && $value->value != "blank" && !$finvisible && run("users:access_level_check", $value->access)) { $name = $flabel; $column1 = display_output_field(array($value->value, $ftype, $fname, $flabel, $value->ident)); $run_result .= templates_draw(array('context' => 'databox1', 'name' => $name, 'column1' => $column1)); } // } return $run_result; }