function mediashare_searchapi_search_check(&$args) { $datarow =& $args['datarow']; list($albumId, $mediaId) = explode(':', $datarow['extra']); $datarow['url'] = pnModUrl('mediashare', 'user', 'main', array('aid' => $albumId, 'mid' => $mediaId)); return true; }
function smarty_function_mediashare_breadcrumb($params, &$smarty) { $dom = ZLanguage::getModuleDomain('mediashare'); if (!isset($params['albumId'])) { $smarty->trigger_error(__f('Missing [%1$s] in \'%2$s\'', array('albumId', 'mediashare_breadcrumb'), $dom)); return false; } $mode = isset($params['mode']) ? $params['mode'] : 'view'; $breadcrumb = pnModAPIFunc('mediashare', 'user', 'getAlbumBreadcrumb', array('albumId' => (int) $params['albumId'])); if ($breadcrumb === false) { $smarty->trigger_error(LogUtil::getErrorMessagesText()); return false; } $urlType = $mode == 'edit' ? 'edit' : 'user'; $url = pnModUrl('mediashare', $urlType, 'view', array('aid' => 0)); $result = "<div class=\"mediashare-breadcrumb\">"; $first = true; foreach ($breadcrumb as $album) { $url = DataUtil::formatForDisplay(pnModUrl('mediashare', $urlType, 'view', array('aid' => $album['id']))); $result .= ($first ? '' : ' » ') . "<a href=\"{$url}\">" . htmlspecialchars($album['title']) . "</a>"; $first = false; } $result .= "</div>"; if (isset($params['assign'])) { $smarty->assign($params['assign'], $result); } return $result; }
function mediashare_invitationapi_resendInvitation(&$args) { $dom = ZLanguage::getModuleDomain('mediashare'); $invitationId = $args['invitationId']; $invitation = pnModAPIFunc('mediashare', 'invitation', 'getById', array('id' => $invitationId)); if ($invitation == null) { return false; } $emails = $args['emails']; // Split and trim e-mails $emails = str_replace("\n", ' ', $emails); $emails = str_replace("\r", ' ', $emails); $emails = str_replace(";", ' ', $emails); $emails = str_replace(",", ' ', $emails); $emailList = explode(' ', $emails); foreach ($emailList as $email) { $email = trim($email); if ($email != '') { $args['email'] = $email; $message = $args['text']; $message .= "\n\n"; $invitationUrl = pnModUrl('mediashare', 'invitation', 'open', array('inv' => $invitation['key']), false, false, true); $message .= str_replace('%url%', $invitationUrl, __('<p>Just follow the link below (click on it or copy it to your webbrowser)</p> <p><a href="%url%">%url%</a></p>', $dom)); $message = str_replace("\n", '<br/>', $message); $params = array('toaddress' => $email, 'fromname' => $args['sender'], 'fromaddress' => $args['senderemail'], 'subject' => $args['subject'], 'body' => $message, 'html' => true); if (!pnModAPIFunc('Mailer', 'user', 'sendmessage', $params)) { return LogUtil::registerError(__('Some error occured sending the invitation.', $dom)); } } } return true; }
function mediashare_external_pasteitem($args) { // FIXME access check $albumId = mediashareGetIntUrl('aid', $args, 0); $mediaId = mediashareGetIntUrl('mid', $args, 0); $mode = FormUtil::getPassedValue('mode'); if (isset($_POST['backButton'])) { return pnRedirect(pnModUrl('mediashare', 'external', 'finditem', array('aid' => $albumId, 'mid' => $mediaId, 'mode' => $mode))); } $mediaItem = pnModAPIFunc('mediashare', 'user', 'getMediaItem', array('mediaId' => $mediaId)); /* if (!($handler = pnModAPIFunc('mediashare', 'mediahandler', 'loadHandler', array('handlerName' => $mediaItem['mediaHandler'])))) { return false; } */ $render =& pnRender::getInstance('mediashare', false); mediashareExternalLoadTheme($render); $render->assign('albumId', $albumId); $render->assign('mediaId', $mediaId); $render->assign('mediaItem', $mediaItem); if ($mediaItem['mediaHandler'] != 'extapp') { $mediadir = pnModAPIFunc('mediashare', 'user', 'getRelativeMediadir'); $render->assign('thumbnailUrl', $mediadir . $mediaItem['thumbnailRef']); $render->assign('previewUrl', $mediadir . $mediaItem['previewRef']); $render->assign('originalUrl', $mediadir . $mediaItem['originalRef']); } else { $render->assign('thumbnailUrl', "{$mediaItem['thumbnailRef']}"); $render->assign('previewUrl', "{$mediaItem['previewRef']}"); $render->assign('originalUrl', "{$mediaItem['originalRef']}"); } $render->assign('mode', $mode); echo $render->fetch('mediashare_external_pasteitem.html'); return true; }
/** * View album in edit-mode */ function mediashare_edit_view($args) { $dom = ZLanguage::getModuleDomain('mediashare'); if (!pnUserLoggedIn()) { return LogUtil::registerError(__('You must be logged in to use this feature', $dom)); } $albumId = mediashareGetIntUrl('aid', $args, 1); // FIXME $page = mediashareGetIntUrl('page', $args, 0); // Check access if (!mediashareAccessAlbum($albumId, mediashareAccessRequirementEditSomething, '')) { return LogUtil::registerPermissionError(); } // Check multi-edit buttons $selectedMediaId = FormUtil::getPassedValue('mediaId'); if ((isset($_POST['multiedit']) || isset($_POST['multidelete']) || isset($_POST['multimove'])) && count($selectedMediaId) > 0) { $mediaIdList = implode(',', $selectedMediaId); if (isset($_POST['multiedit'])) { $func = 'multieditmedia'; } else { if (isset($_POST['multidelete'])) { $func = 'multideletemedia'; } else { $func = 'multimovemedia'; } } return pnRedirect(pnModUrl('mediashare', 'edit', $func, array('mid' => $mediaIdList, 'aid' => $albumId))); } // Fetch current album if (!($album = pnModAPIFunc('mediashare', 'user', 'getAlbum', array('albumId' => $albumId)))) { return false; } if ($album === true) { return LogUtil::registerError(__('Unknown album.', $dom)); } // Fetch subalbums if (($subAlbums = pnModAPIFunc('mediashare', 'user', 'getSubAlbums', array('albumId' => $albumId, 'access' => mediashareAccessRequirementEditSomething))) === false) { return false; } // Fetch media items if (($items = pnModAPIFunc('mediashare', 'user', 'getMediaItems', array('albumId' => $albumId))) === false) { return false; } // Build the output $render =& pnRender::getInstance('mediashare', false); $render->assign('album', $album); $render->assign('subAlbums', $subAlbums); $render->assign('mediaItems', $items); $render->assign('thumbnailSize', pnModGetVar('mediashare', 'thumbnailSize')); if (!mediashareAddAccess($render, $album)) { return false; } return $render->fetch('mediashare_edit_view.html'); }
function smarty_function_mediashare_rss($params, $smarty) { $dom = ZLanguage::getModuleDomain('mediashare'); if (!isset($params['title'])) { $smarty->trigger_error(__f('Missing [%1$s] in \'%2$s\'', array('title', 'mediashare_rss'), $dom)); return false; } if (!isset($params['urlParam']) && !isset($params['urlValue'])) { $smarty->trigger_error(__f('Missing [%1$s] in \'%2$s\'', array('urlParam & urlValue', 'mediashare_rss'), $dom)); return false; } $url = DataUtil::formatForDisplay(pnModUrl('mediashare', 'user', 'xmllist', array($params['urlParam'] => $params['urlValue'], 'order' => 'created', 'orderdir' => 'desc'))); $title = $params['title']; $link = "<link rel=\"alternate\" type=\"application/rss+xml\" title=\"{$title}\" href=\"{$url}\"/>\n"; PageUtil::addVar('rawtext', $link); $imageUrl = DataUtil::formatForDisplay('modules/mediashare/pnimages/rss.gif'); if ($params['mode'] == 'text') { $html = "<span class=\"rss\">[<a href=\"{$url}\">RSS</a>]</span>"; } else { $html = "<a href=\"{$url}\"><img src=\"{$imageUrl}\" alt=\"{$title}\" title=\"{$title}\" class=\"clickable\"/></a>"; } return $html; }
function mediashare_randomblock_display($blockinfo) { // Security check if (!SecurityUtil::checkPermission('mediashare:randomblock:', "{$blockinfo['title']}::{$blockinfo['bid']}", ACCESS_READ)) { return; } $dom = ZLanguage::getModuleDomain('mediashare'); // Get variables from content block $vars = pnBlockVarsFromContent($blockinfo['content']); $sessionVarName = 'mediashare_block_' . $blockinfo['bid']; $sessionVars = SessionUtil::getVar($sessionVarName); if ($sessionVars == '' || $sessionVars == null) { $sessionVars = array(); } if (isset($sessionVars['oldContent']) && isset($sessionVars['lastUpdate'])) { $past = time() - $sessionVars['lastUpdate']; if ($past < $vars['cacheTime']) { // No need to refresh - move old content into real content $blockinfo['content'] = $sessionVars['oldContent']; return themesideblock($blockinfo); } } if ($vars['type'] == 'album') { $randomInfo = pnModAPIFunc('mediashare', 'user', 'getRandomMediaItem', array('albumId' => $vars['albumId'], 'mode' => 'album')); } else { if ($vars['type'] == 'latest') { $randomInfo = pnModAPIFunc('mediashare', 'user', 'getRandomMediaItem', array('latest' => true, 'mode' => 'latest')); } else { $randomInfo = pnModAPIFunc('mediashare', 'user', 'getRandomMediaItem'); } } if ($randomInfo === false) { return false; } $mediaId = $randomInfo['mediaId']; $albumId = $randomInfo['albumId']; if (empty($mediaId)) { return; } // Get image info $mediaInfo = pnModAPIFunc('mediashare', 'user', 'getMediaItem', array('mediaId' => $mediaId)); // Get album info $albumInfo = pnModAPIFunc('mediashare', 'user', 'getAlbum', array('albumId' => $albumId)); $originalURL = pnModAPIFunc('mediashare', 'user', 'getMediaUrl', array('mediaItem' => $mediaInfo, 'src' => 'originalRef')); $previewURL = pnModAPIFunc('mediashare', 'user', 'getMediaUrl', array('mediaItem' => $mediaInfo, 'src' => 'previewRef')); $thumbnailURL = pnModAPIFunc('mediashare', 'user', 'getMediaUrl', array('mediaItem' => $mediaInfo, 'src' => 'thumbnailRef')); $albumURL = pnModUrl('mediashare', 'user', 'view', array('aid' => $albumId, 'mid' => $mediaId)); // Create the final HTML by substituting various macros into the user specified HTML code $substitutes = array('originalURL' => $originalURL, 'previewURL' => $previewURL, 'thumbnailURL' => $thumbnailURL, 'albumURL' => $albumURL, 'title' => $mediaInfo['title'], 'owner' => __('Unknown', $dom), 'albumTitle' => $albumInfo['title']); $html = $vars['html']; foreach ($substitutes as $key => $value) { $pattern = '${' . $key . '}'; $html = str_replace($pattern, $value, $html); } $blockinfo['content'] = $html; $sessionVars['oldContent'] = $html; $sessionVars['lastUpdate'] = time(); SessionUtil::setVar($sessionVarName, $sessionVars); // ... and return encapsulated in a theme block return themesideblock($blockinfo); }
function postcalendar_user_delete() { if (!(bool) PC_ACCESS_ADD) { return _POSTCALENDAR_NOAUTH; } $output = new pnHTML(); $output->SetInputMode(_PNH_VERBATIMINPUT); $uname = $_SESSION['authUser']; list($action, $pc_event_id) = pnVarCleanFromInput('action', 'pc_event_id'); $event =& postcalendar_userapi_pcGetEventDetails($pc_event_id); if ($uname != $event['uname']) { if (!validateGroupStatus($uname, getUsername($event['uname']))) { return _PC_CAN_NOT_DELETE; } } //if($uname != $event['uname']) { // return _PC_CAN_NOT_DELETE; //} unset($event); $output->FormStart(pnModUrl(__POSTCALENDAR__, 'user', 'deleteevents')); $output->FormHidden('pc_eid', $pc_event_id); $output->Text(_PC_DELETE_ARE_YOU_SURE . ' '); $output->FormSubmit(_PC_ADMIN_YES); $output->FormEnd(); $output->Linebreak(2); $output->Text(pnModAPIFunc(__POSTCALENDAR__, 'user', 'eventDetail', array('eid' => $pc_event_id, 'cacheid' => '', 'print' => 0, 'Date' => ''))); $output->Linebreak(2); return $output->GetOutput(); }
function postcalendar_admin_modifyconfig($msg = '', $showMenu = true) { if (!PC_ACCESS_ADMIN) { return _POSTCALENDAR_NOAUTH; } $output = new pnHTML(); $pcModInfo = pnModGetInfo(pnModGetIDFromName(__POSTCALENDAR__)); $pcDir = pnVarPrepForOS($pcModInfo['directory']); $defaultsURL = pnModURL(__POSTCALENDAR__, 'admin', 'resetDefaults'); $defaultsText = _EDIT_PC_CONFIG_DEFAULT; $jsColorPicker = <<<EOF <script LANGUAGE="Javascript" SRC="modules/{$pcDir}/pnincludes/AnchorPosition.js"></SCRIPT> <script LANGUAGE="Javascript" SRC="modules/{$pcDir}/pnincludes/PopupWindow.js"></SCRIPT> <script LANGUAGE="Javascript" SRC="modules/{$pcDir}/pnincludes/ColorPicker2.js"></SCRIPT> <script LANGUAGE="JavaScript"> var cp = new ColorPicker('window'); // Runs when a color is clicked function pickColor(color) { \t field.value = color; \t} var field; function pick(anchorname) { \t field = document.forms.pcConfig.pcDayHighlightColor; \t cp.show(anchorname); \t} </SCRIPT> EOF; $output->SetInputMode(_PNH_VERBATIMINPUT); $header = <<<EOF \t<html> \t<head></head> \t<body bgcolor= EOF; $header .= '"' . $GLOBALS['style']['BGCOLOR2'] . '">'; $output->Text($header); $output->Text($jsColorPicker); if ($showMenu) { $output->Text(postcalendar_adminmenu()); } if (!empty($msg)) { $output->Text('<center><div style="padding:5px; border:1px solid green; background-color: lightgreen;">'); $output->Text("<b>{$msg}</b>"); $output->Text('</div></center><br />'); } $formURL = pnModUrl(__POSTCALENDAR__, 'admin', 'updateconfig'); /*$output->Text("<form action=\"$formURL\" method=\"post\" enctype=\"application/x-www-form-urlencoded\" name=\"pcConfig\" id=\"pcConfig\">"); $output->Text('<table border="1" cellpadding="5" cellspacing="1">'); $output->Text('<tr><td align="left">'._PC_ADMIN_GLOBAL_SETTINGS,'</td>'); $output->Text("<td nowrap><a href=\"$defaultsURL\">$defaultsText</a></td></tr>"); $settings = array(); $output->SetOutputMode(_PNH_RETURNOUTPUT); $i=0; // global PostCalendar config options $settings[$i][] = $output->Text(_PC_NOTIFY_ADMIN); $settings[$i++][] = $output->FormCheckBox('pcNotifyAdmin', pnModGetVar(__POSTCALENDAR__,'pcNotifyAdmin')); $settings[$i][] = $output->Text(_PC_NOTIFY_EMAIL); $settings[$i++][] = $output->FormText('pcNotifyEmail', pnModGetVar(__POSTCALENDAR__,'pcNotifyEmail')); $settings[$i][] = $output->Text(_PC_ALLOW_DIRECT_SUBMIT); $settings[$i++][] = $output->FormCheckBox('pcAllowDirectSubmit', pnModGetVar(__POSTCALENDAR__,'pcAllowDirectSubmit')); $settings[$i][] = $output->Text(_PC_ALLOW_USER_CALENDAR); $settings[$i++][] = $output->FormCheckBox('pcAllowUserCalendar', pnModGetVar(__POSTCALENDAR__,'pcAllowUserCalendar')); $settings[$i][] = $output->Text(_PC_ALLOW_SITEWIDE_SUBMIT); $settings[$i++][] = $output->FormCheckBox('pcAllowSiteWide', pnModGetVar(__POSTCALENDAR__,'pcAllowSiteWide')); $settings[$i][] = $output->Text(_PC_LIST_HOW_MANY); $settings[$i++][] = $output->FormText('pcListHowManyEvents', pnModGetVar(__POSTCALENDAR__,'pcListHowManyEvents'),5); $settings[$i][] = $output->Text(_PC_TIME24HOURS); $settings[$i++][] = $output->FormCheckBox('pcTime24Hours', pnModGetVar(__POSTCALENDAR__,'pcTime24Hours')); $settings[$i][] = $output->Text(_PC_TIME_INCREMENT); $settings[$i++][] = $output->FormText('pcTimeIncrement', pnModGetVar(__POSTCALENDAR__,'pcTimeIncrement'),5); $settings[$i][] = $output->Text(_PC_EVENTS_IN_NEW_WINDOW); $settings[$i++][] = $output->FormCheckBox('pcEventsOpenInNewWindow', pnModGetVar(__POSTCALENDAR__,'pcEventsOpenInNewWindow')); $settings[$i][] = $output->Text(_PC_INTERNATIONAL_DATES); $settings[$i++][] = $output->FormCheckBox('pcUseInternationalDates', pnModGetVar(__POSTCALENDAR__,'pcUseInternationalDates')); $settings[$i][] = $output->Text(_PC_EVENT_DATE_FORMAT); $settings[$i++][] = $output->FormText('pcEventDateFormat', pnModGetVar(__POSTCALENDAR__,'pcEventDateFormat')); $settings[$i][] = $output->Text(_PC_DISPLAY_TOPICS); //$settings[$i++][] = $output->FormCheckBox('pcDisplayTopics', pnModGetVar(__POSTCALENDAR__,'pcDisplayTopics')); $settings[$i][] = $output->Text(_PC_FIRST_DAY_OF_WEEK); $options = array(); $selected = pnModGetVar(__POSTCALENDAR__,'pcFirstDayOfWeek'); $options[0]['id'] = '0'; $options[0]['selected'] = ($selected == 0); $options[0]['name'] = _PC_SUNDAY; $options[1]['id'] = '1'; $options[1]['selected'] = ($selected == 1); $options[1]['name'] = _PC_MONDAY; $options[2]['id'] = '6'; $options[2]['selected'] = ($selected == 6); $options[2]['name'] = _PC_SATURDAY; $settings[$i++][] = $output->FormSelectMultiple('pcFirstDayOfWeek', $options); $settings[$i][] = $output->Text(_PC_DEFAULT_VIEW); $options = array(); $selected = pnModGetVar(__POSTCALENDAR__,'pcDefaultView'); $options[0]['id'] = 'day'; $options[0]['selected'] = ($selected == 'day'); $options[0]['name'] = _CAL_DAYVIEW; $options[1]['id'] = 'week'; $options[1]['selected'] = ($selected == 'week'); $options[1]['name'] = _CAL_WEEKVIEW; $options[2]['id'] = 'month'; $options[2]['selected'] = ($selected == 'month'); $options[2]['name'] = _CAL_MONTHVIEW; $options[3]['id'] = 'year'; $options[3]['selected'] = ($selected == 'year'); $options[3]['name'] = _CAL_YEARVIEW; $settings[$i++][] = $output->FormSelectMultiple('pcDefaultView', $options); $settings[$i][] = $output->Text(_PC_DAY_HIGHLIGHT_COLOR . ' [<a HREF="#" onClick="pick(\'pick\');return false;" NAME="pick" ID="pick">pick</a>]'); $settings[$i++][] = $output->FormText('pcDayHighlightColor', pnModGetVar(__POSTCALENDAR__,'pcDayHighlightColor')); $settings[$i][] = $output->Text(_PC_USE_JS_POPUPS); $settings[$i++][] = $output->FormCheckBox('pcUsePopups', pnModGetVar(__POSTCALENDAR__,'pcUsePopups')); $settings[$i][] = $output->Text(_PC_USE_CACHE); $settings[$i++][] = $output->FormCheckBox('pcUseCache', pnModGetVar(__POSTCALENDAR__,'pcUseCache')); $settings[$i][] = $output->Text(_PC_CACHE_LIFETIME); $settings[$i++][] = $output->FormText('pcCacheLifetime', pnModGetVar(__POSTCALENDAR__,'pcCacheLifetime')); $templatelist = array(); $handle = opendir('modules/'.$pcDir.'/pntemplates'); $hide_list = array('.','..','CVS','compiled','cache'); while($f=readdir($handle)) { if(!in_array($f,$hide_list) && !ereg("[.]",$f)) { $templatelist[] = $f; } } closedir($handle); unset($hide_list); sort($templatelist); $tcount = count($templatelist); $settings[$i][] = $output->Text(_PC_DEFAULT_TEMPLATE); $options = array(); $selected = pnModGetVar(__POSTCALENDAR__,'pcTemplate'); for($t=0;$t<$tcount;$t++) { $options[$t]['id'] = $templatelist[$t]; $options[$t]['selected'] = ($selected == $templatelist[$t]); $options[$t]['name'] = $templatelist[$t]; } $settings[$i++][] = $output->FormSelectMultiple('pcTemplate', $options); $output->SetOutputMode(_PNH_KEEPOUTPUT); // Add row for($i = 0 ; $i < count($settings) ; $i++) { $output->TableAddRow($settings[$i], 'left'); } $output->Text('</table>'); $output->FormSubmit(_PC_ADMIN_SUBMIT); $output->FormEnd();*/ $output->Text("</body></html>"); return $output->GetOutput(); }
/** * View items in slideshow */ function mediashare_user_slideshow($args) { $albumId = mediashareGetIntUrl('aid', $args, 1); $mediaId = mediashareGetIntUrl('mid', $args, 0); $delay = mediashareGetIntUrl('delay', $args, 5); $mode = mediashareGetStringUrl('mode', $args, 'stopped'); $viewkey = FormUtil::getPassedValue('viewkey'); $center = isset($args['center']) ? '_center' : ''; $back = mediashareGetIntUrl('back', $args, 0); // Check access to album (media ID won't do a difference if not from this album) if (!mediashareAccessAlbum($albumId, mediashareAccessRequirementViewSomething)) { return LogUtil::registerPermissionError(); } // Fetch current album if (!($album = pnModAPIFunc('mediashare', 'user', 'getAlbum', array('albumId' => $albumId)))) { return false; } if ($album === true) { return LogUtil::registerError(__('Unknown album.', $dom)); } // Fetch media items if (($items = pnModAPIFunc('mediashare', 'user', 'getMediaItems', array('albumId' => $albumId))) === false) { return false; } // Find current, previous and next items if ($mediaId == 0 && count($items) > 0) { $mediaId = $items[0]['id']; } $mediaItem = null; if (count($items) > 0) { $prevMediaId = $items[count($items) - 1]['id']; $nextMediaId = $items[0]['id']; foreach ($items as $item) { if ($mediaItem != null) { // Media-Current item found, so this must be next $nextMediaId = $item['id']; break; } if ($item['id'] == $mediaId) { $mediaItem = $item; } else { // Media-item not found, so this must become prev $prevMediaId = $item['id']; } } } else { $prevMediaId = -1; $nextMediaId = -1; } // Add media display HTML $mediadir = pnModAPIFunc('mediashare', 'user', 'getRelativeMediadir'); for ($i = 0, $cou = count($items); $i < $cou; ++$i) { if (!($handler = pnModAPIFunc('mediashare', 'mediahandler', 'loadHandler', array('handlerName' => $items[$i]['mediaHandler'])))) { return false; } $result = $handler->getMediaDisplayHtml($mediadir . $items[$i]['originalRef'], null, null, 'mediaItem', array()); $items[$i]['html'] = str_replace(array("\r", "\n"), array(' ', ' '), $result); } $viewUrl = pnModUrl('mediashare', 'user', 'slideshow', array('mid' => $mediaItem['id'])); if ($back) { SessionUtil::setVar('mediashareQuitUrl', isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : null); } $quitUrl = SessionUtil::getVar('mediashareQuitUrl'); if ($quitUrl == null) { $quitUrl = pnModUrl('mediashare', 'user', 'view', array('aid' => $album['id'])); } // Build the output $render =& pnRender::getInstance('mediashare', false); $render->assign('viewUrl', $viewUrl); $render->assign('mediaId', $mediaId); $render->assign('mediaItem', $mediaItem); $render->assign('prevMediaId', $prevMediaId); $render->assign('nextMediaId', $nextMediaId); $render->assign('mediaItems', $items); $render->assign('album', $album); $render->assign('albumId', $albumId); $render->assign('delay', $delay); $render->assign('mode', $mode); $render->assign('thumbnailSize', pnModGetVar('mediashare', 'thumbnailSize')); $render->assign('theme', pnUserGetTheme()); $render->assign('templateName', "slideshow{$center}.html"); $render->assign('quitUrl', $quitUrl); // Add the access array if (!mediashareAddAccess($render, $album)) { return false; } $render->load_filter('output', 'pagevars_notcombined'); if (pnConfigGetVar('shorturls')) { $render->load_filter('output', 'shorturls'); } $render->display('mediashare_user_slideshow.html'); return true; }
function postcalendar_adminapi_buildAdminList($args) { extract($args); $output = new pnHTML(); $output->SetInputMode(_PNH_VERBATIMINPUT); pnThemeLoad(pnUserGetTheme()); // get the theme globals :: is there a better way to do this? global $bgcolor1, $bgcolor2, $bgcolor3, $bgcolor4, $bgcolor5; global $textcolor1, $textcolor2; $formUrl = pnModUrl(__POSTCALENDAR__, 'admin', 'adminevents'); $output->FormStart($formUrl); $output->Text('<table border="0" cellpadding="1" cellspacing="0" width="100%" bgcolor="' . $bgcolor2 . '"><tr><td>'); $output->Text('<table border="0" cellpadding="5" cellspacing="0" width="100%" bgcolor="' . $bgcolor1 . '"><tr><td>'); $output->Text('<center><font size="4"><b>' . $title . '</b></font></center>'); $output->Text('</td></tr></table>'); $output->Text('</td></tr></table>'); $output->Linebreak(); $output->Text('<table border="0" cellpadding="1" cellspacing="0" width="100%" bgcolor="' . $bgcolor2 . '"><tr><td>'); $output->Text('<table border="0" cellpadding="5" cellspacing="0" width="100%" bgcolor="' . $bgcolor1 . '">'); if (!$result || $result->EOF) { $output->Text('<tr><td width="100%" bgcolor="' . $bgcolor1 . '" align="center"><b>' . _PC_NO_EVENTS . '</b></td></tr>'); } else { $output->Text('<tr><td bgcolor="' . $bgcolor1 . '" align="center"><b>' . _PC_EVENTS . '</b></td></tr>'); $output->Text('<table border="0" cellpadding="2" cellspacing="0" width="100%" bgcolor="' . $bgcolor1 . '">'); // build sorting urls if (!isset($sdir)) { $sdir = 1; } else { $sdir = $sdir ? 0 : 1; } $title_sort_url = pnModUrl(__POSTCALENDAR__, 'admin', $function, array('offset' => $offset, 'sort' => 'title', 'sdir' => $sdir)); $time_sort_url = pnModUrl(__POSTCALENDAR__, 'admin', $function, array('offset' => $offset, 'sort' => 'time', 'sdir' => $sdir)); $output->Text('<tr><td>select</td><td><a href="' . $title_sort_url . '">title</a></td><td><a href="' . $time_sort_url . '">timestamp</a><td></tr>'); // output the queued events $count = 0; for (; !$result->EOF; $result->MoveNext()) { list($eid, $title, $timestamp) = $result->fields; $output->Text('<tr>'); $output->Text('<td align="center" valign="top">'); $output->FormCheckbox('pc_event_id[]', false, $eid); $output->Text('</td>'); $output->Text('<td align="left" valign="top" width="100%">'); $output->URL(pnModURL(__POSTCALENDAR__, 'admin', 'edit', array('pc_event_id' => $eid)), pnVarPrepHTMLDisplay(postcalendar_removeScriptTags($title))); $output->Text('</td>'); $output->Text('<td align="left" valign="top" nowrap>'); $output->Text($timestamp); $output->Text('</td>'); $output->Text('</tr>'); $count++; } $output->Text('</table>'); } $output->Text('</td></tr></table>'); if ($result->NumRows()) { $output->Linebreak(); // action to take? $output->Text('<table border="0" cellpadding="1" cellspacing="0" width="100%" bgcolor="' . $bgcolor2 . '"><tr><td>'); $output->Text('<table border="0" cellpadding="5" cellspacing="0" width="100%" bgcolor="' . $bgcolor1 . '"><tr>'); $output->Text('<td align="left" valign="middle">'); $seldata[0]['id'] = _ADMIN_ACTION_VIEW; $seldata[0]['selected'] = 1; $seldata[0]['name'] = _PC_ADMIN_ACTION_VIEW; $seldata[1]['id'] = _ADMIN_ACTION_APPROVE; $seldata[1]['selected'] = 0; $seldata[1]['name'] = _PC_ADMIN_ACTION_APPROVE; $seldata[2]['id'] = _ADMIN_ACTION_HIDE; $seldata[2]['selected'] = 0; $seldata[2]['name'] = _PC_ADMIN_ACTION_HIDE; $seldata[3]['id'] = _ADMIN_ACTION_DELETE; $seldata[3]['selected'] = 0; $seldata[3]['name'] = _PC_ADMIN_ACTION_DELETE; $output->FormSelectMultiple('action', $seldata); $output->FormHidden('thelist', $function); $output->FormSubmit(_PC_PERFORM_ACTION); $output->Text('</td>'); $output->Text('</tr></table>'); $output->Text('</td></tr></table>'); $output->Linebreak(); // start previous next links $output->Text('<table border="0" cellpadding="1" cellspacing="0" width="100%" bgcolor="' . $bgcolor2 . '"><tr><td>'); $output->Text('<table border="0" cellpadding="5" cellspacing="0" width="100%" bgcolor="' . $bgcolor1 . '"><tr>'); if ($offset > 1) { $output->Text('<td align="left">'); $next_link = pnModUrl(__POSTCALENDAR__, 'admin', $function, array('offset' => $offset - $offset_increment, 'sort' => $sort, 'sdir' => $sdir)); $output->Text('<a href="' . $next_link . '"><< ' . _PC_PREV . ' ' . $offset_increment . '</a>'); $output->Text('</td>'); } else { $output->Text('<td align="left"><< ' . _PC_PREV . '</td>'); } if ($result->NumRows() >= $offset_increment) { $output->Text('<td align="right">'); $next_link = pnModUrl(__POSTCALENDAR__, 'admin', $function, array('offset' => $offset + $offset_increment, 'sort' => $sort, 'sdir' => $sdir)); $output->Text('<a href="' . $next_link . '">' . _PC_NEXT . ' ' . $offset_increment . ' >></a>'); $output->Text('</td>'); } else { $output->Text('<td align="right">' . _PC_NEXT . ' >></td>'); } $output->Text('</tr></table>'); } $output->Text('</td></tr></table>'); // end previous next links $output->FormEnd(); return $output->GetOutput(); }
function mediashare_invitation_viewlink($args) { $dom = ZLanguage::getModuleDomain('mediashare'); $invitationId = mediashareGetIntUrl('iid', $args, -1); if ($invitationId < 0) { return LogUtil::registerError(__f('Missing URL parameter (%s).', 'iid', $dom)); } $invitation = pnModAPIFunc('mediashare', 'invitation', 'getById', array('id' => $invitationId)); if ($invitation == null) { return LogUtil::registerError(__('Unknown invitation.', $dom)); } $albumId = $invitation['albumId']; // Check access if (!mediashareAccessAlbum($albumId, mediashareAccessRequirementEditAccess, '')) { return LogUtil::registerPermissionError(); } $link = pnModUrl('mediashare', 'invitation', 'open', array('inv' => $invitation['key'])); if (!($album = pnModAPIFunc('mediashare', 'user', 'getAlbum', array('albumId' => $albumId)))) { return false; } $render =& pnRender::getInstance('mediashare', false); $render->assign('album', $album); $render->assign('link', $link); $render->assign('accessSelected', 0); $render->assign('sendSelected', 1); $render->assign('listSelected', 0); return $render->fetch('mediashare_invitation_link.html'); }