protected function initialize() { $context = array(AMForm::kDataKey => $_GET); $form = AMForm::formWithContext($context); $form->addValidator(new ApplicationIdValidator('id', true, 'Invalid application id')); if ($form->isValid) { $id = $_GET['id']; $applications = Renegade::database(RenegadeConstants::kDatabaseMongoDB, RenegadeConstants::kDatabaseApplications); $app = $applications->findOne(array('_id' => $id, 'owner' => $this->session->user)); if (!$app) { Renegade::redirect('/applications'); } $this->application = $app; } else { Renegade::redirect('/applications'); } }
protected function initialize() { $id = $_GET['id']; $this->application_id = Renegade::applicationIdForChannelId($id); if ($this->isPostBack) { $this->processForm(); } $options = array('default' => Renegade::databaseForId($this->application_id)); $database = Renegade::database(RenegadeConstants::kDatabaseMongoDB, null, $options); $channels = $database->selectCollection(RenegadeConstants::kDatabaseChannels); $this->channel = $channels->findOne(array('_id' => $id)); if ($this->channel) { $subscriptions = $database->selectCollection(RenegadeConstants::kDatabaseSubscriptions); /* TODO index 'application' on subscriptions */ $this->subscriptions = $subscriptions->find(array('application' => array('$ne' => $this->application_id))); } else { Renegade::redirect('/applications'); } }
* @author Adam Venturella <*****@*****.**> * @copyright Copyright (C) 2010 Adam Venturella * @license http://www.apache.org/licenses/LICENSE-2.0 Apache 2.0 * **/ require $_SERVER['DOCUMENT_ROOT'] . '/application/lib/axismundi/forms/AMForm.php'; require $_SERVER['DOCUMENT_ROOT'] . '/application/forms/validators/ApplicationIdValidator.php'; $session = Renegade::session(); if (count($_POST)) { $session = Renegade::session(); if (strlen($session->user) > 0) { $context = array(AMForm::kDataKey => $_POST); $form = AMForm::formWithContext($context); $form->addValidator(new ApplicationIdValidator('inputApplicationId', true, 'Invalid application id')); if ($form->isValid) { $applications = Renegade::database(RenegadeConstants::kDatabaseMongoDB, RenegadeConstants::kDatabaseApplications); $app = $applications->findOne(array('_id' => $form->inputApplicationId, 'owner' => $session->user)); if (!$app) { Renegade::redirect('/applications'); } else { $read = $form->inputRead ? RenegadeConstants::kPermissionRead : 0; $write = $form->inputWrite ? RenegadeConstants::kPermissionWrite : 0; $delete = $form->inputDelete ? RenegadeConstants::kPermissionDelete : 0; $app['defaultPermissions'] = $read | $write | $delete; $applications->update(array('_id' => $app['_id']), $app); } } } } Renegade::redirect('/applications');
$channel->setLabel($remote_channel['label']); $channel->setDescription($remote_channel['description']); $channel->setDefaultPermissions($remote_channel['defaultPermissions']); $certificate = $channel->generate_certificate($remote_channel['defaultPermissions']); $metadata = $channel->generate_metadata(); $metadata['requests'] = $remote_channel['requests']; $subscription = new Subscription(); $subscription->setCertificate($certificate['key']); $subscription->setApplication($form->inputApplicationId); $subscription->setChannel($metadata['_id']); $subscription->setMaster(false); $db_remote_options = array('default' => Renegade::databaseForId($remote_application)); $db_remote_subscriptions = Renegade::database(RenegadeConstants::kDatabaseMongoDB, RenegadeConstants::kDatabaseSubscriptions, $db_remote_options); $certificates = Renegade::database(RenegadeConstants::kDatabaseRedis, RenegadeConstants::kDatabaseCertificates); $db_remote_subscriptions->insert($subscription->toArray()); $db_channels->insert($metadata); $certificates->set($certificate['key'], $certificate['value']); // All Done Renegade::redirect('/applications/' . $form->inputApplicationId . '/channels'); } } else { echo 'channel not found'; //Renegade::redirect('/applications/'.$form->inputApplicationId.'./channels'); } } } } } } Renegade::redirect('/');