function run() { try { $election_input_path = Director::baseFolder() . '/' . ELECTION_VOTERS_INGEST_PATH; $files = scandir($election_input_path); $manager = new ElectionManager(new SapphireElectionRepository(), new SapphireFoundationMemberRepository(), new SapphireVoteRepository(), new SapphireVoterFileRepository(), new VoteFactory(), new VoterFileFactory(), new ElectionFactory(), SapphireTransactionManager::getInstance()); foreach ($files as $file_name) { if ($this->isCSV($file_name) && (list($election_id, $open_date, $close_date) = $this->isValidElectionFileName($file_name))) { try { echo printf('processing file %s' . PHP_EOL, $file_name); list($count, $not_processed) = $manager->ingestVotersForElection($election_input_path . '/' . $file_name, $election_id, $open_date, $close_date); echo printf('file %s - processed %d rows - not processed %d rows' . PHP_EOL, $file_name, $count, count($not_processed)); if (count($not_processed) > 0) { echo 'not processed details ... ' . PHP_EOL; echo var_dump($not_processed) . PHP_EOL; } echo printf('deleting file %s ...' . PHP_EOL, $file_name); unlink($election_input_path . '/' . $file_name); } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } } } return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
/** * @var ITeamInvitationRepository */ public function __construct() { parent::__construct(); $this->member_repository = new SapphireCLAMemberRepository(); $this->invitation_repository = new SapphireTeamInvitationRepository(); $this->team_manager = new CCLATeamManager($this->invitation_repository, $this->member_repository, new TeamInvitationFactory(), new TeamFactory(), new CCLAValidatorFactory(), new SapphireTeamRepository(), SapphireTransactionManager::getInstance()); }
function init() { parent::init(); Requirements::javascript("marketplace/code/ui/frontend/js/marketplace.common.js"); $this->review_repository = new SapphireReviewRepository(); $this->review_manager = new ReviewManager(new SapphireReviewRepository(), new SapphireJobAlertEmailRepository(), new ReviewFactory(), SapphireTransactionManager::getInstance()); }
public function __construct() { parent::__construct(); $this->company_repository = new SapphireICLACompanyRepository(); $this->member_repository = new SapphireCLAMemberRepository(); $this->invitation_repository = new SapphireTeamInvitationRepository(); $this->company_manager = new CCLACompanyService($this->company_repository, SapphireTransactionManager::getInstance()); $this->team_manager = new CCLATeamManager($this->invitation_repository, $this->member_repository, new TeamInvitationFactory(), new TeamFactory(), new CCLAValidatorFactory(), new SapphireTeamRepository(), SapphireTransactionManager::getInstance()); //filters... $this_var = $this; $this->addBeforeFilter('signCompanyCCLA', 'check_sign', function ($request) use($this_var) { if (!Permission::check("SANGRIA_ACCESS")) { return $this_var->permissionFailure(); } }); $this->addBeforeFilter('unsignCompanyCCLA', 'check_unsign', function ($request) use($this_var) { if (!Permission::check("SANGRIA_ACCESS")) { return $this_var->permissionFailure(); } }); $this->addBeforeFilter('searchCCLAMembers', 'check_members_search', function () use($this_var) { return $this_var->checkCCLAdmin(); }); $this->addBeforeFilter('addInvitation', 'check_add_invitation', function () use($this_var) { return $this_var->checkCCLAdmin(); }); $this->addBeforeFilter('deleteInvitation', 'check_delete_invitation', function () use($this_var) { return $this_var->checkCCLAdmin(); }); }
public function __construct() { parent::__construct(); $this->securityToken = new SecurityToken(); $this->summit_repository = new SapphireSummitRepository(); $this->summitevent_repository = new SapphireSummitEventRepository(); $this->summitpresentation_repository = new SapphireSummitPresentationRepository(); $this->eventfeedback_repository = new SapphireEventFeedbackRepository(); $this->speakerfeedback_repository = new SapphireSpeakerFeedbackRepository(); $this->attendee_repository = new SapphireSummitAttendeeRepository(); $this->schedule_manager = new ScheduleManager($this->summitevent_repository, $this->summitpresentation_repository, $this->eventfeedback_repository, new EventFeedbackFactory(), $this->speakerfeedback_repository, $this->attendee_repository, SapphireTransactionManager::getInstance()); $this_var = $this; $security_token = $this->securityToken; $this->addBeforeFilter('addFeedback', 'check_access_reject', function ($request) use($this_var, $security_token) { $data = $this_var->getJsonRequest(); if (!$data) { return $this->serverError(); } if (!$security_token->checkRequest($request)) { return $this->forbiddenError(); } if ($data['field_98438688'] != '') { return $this->forbiddenError(); } }); }
function init() { parent::init(); $google_geo_coding_api_key = null; $google_geo_coding_client_id = null; $google_geo_coding_private_key = null; if (defined('GOOGLE_GEO_CODING_API_KEY')) { $google_geo_coding_api_key = GOOGLE_GEO_CODING_API_KEY; } else { if (defined('GOOGLE_GEO_CODING_CLIENT_ID') && defined('GOOGLE_GEO_CODING_PRIVATE_KEY')) { $google_geo_coding_client_id = GOOGLE_GEO_CODING_CLIENT_ID; $google_geo_coding_private_key = GOOGLE_GEO_CODING_PRIVATE_KEY; } } //managers $this->factory = new EventRegistrationRequestFactory(); $this->event_registration_request_manager = new EventRegistrationRequestManager(new SapphireEventRegistrationRequestRepository(), new SapphireEventRepository(), $this->factory, new GoogleGeoCodingService(new SapphireGeoCodingQueryRepository(), new UtilFactory(), SapphireTransactionManager::getInstance(), $google_geo_coding_api_key, $google_geo_coding_client_id, $google_geo_coding_private_key), new SapphireEventPublishingService(), new EventValidatorFactory(), SapphireTransactionManager::getInstance()); //js files Requirements::css("themes/openstack/css/chosen.css", "screen,projection"); Requirements::css(THIRDPARTY_DIR . '/jquery-ui-themes/smoothness/jquery-ui.css'); Requirements::javascript(THIRDPARTY_DIR . '/jquery-ui/jquery-ui.js'); Requirements::javascript(Director::protocol() . "ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"); Requirements::javascript(Director::protocol() . "ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/additional-methods.min.js"); Requirements::combine_files('event_registration_request_page.js', array("themes/openstack/javascript/chosen.jquery.min.js", "themes/openstack/javascript/jquery.ui.datepicker.validation.package-1.0.1/jquery.ui.datepicker.validation.js", "themes/openstack/javascript/jquery.validate.custom.methods.js", 'events/js/event.registration.request.page.js')); }
public function __construct() { parent::__construct(); $this->notification_repository = new SapphireFoundationMemberRevocationNotificationRepository(); $this->notification_manager = new RevocationNotificationManager(new SapphireFoundationMemberRepository(), new SapphireFoundationMemberRevocationNotificationRepository(), new SapphireElectionRepository(), new RevocationNotificationFactory(), SapphireTransactionManager::getInstance()); Requirements::css('elections/css/revocation.action.page.css'); }
function init() { parent::init(); Requirements::css(THIRDPARTY_DIR . '/jquery-ui-themes/smoothness/jquery-ui.css'); Requirements::javascript(THIRDPARTY_DIR . '/jquery-ui/jquery-ui.js'); Requirements::customScript("jQuery(document).ready(function(\$) {\n \$('#consulting','.marketplace-nav').addClass('current');\n });"); Requirements::css("themes/openstack/css/chosen.css", "screen,projection"); Requirements::javascript(Director::protocol() . "maps.googleapis.com/maps/api/js?sensor=false"); Requirements::combine_files('marketplace_consultants_directory_page.js', array("marketplace/code/ui/frontend/js/markerclusterer.js", "marketplace/code/ui/frontend/js/oms.min.js", "marketplace/code/ui/frontend/js/infobubble-compiled.js", "marketplace/code/ui/frontend/js/google.maps.jquery.js", "themes/openstack/javascript/chosen.jquery.min.js", "marketplace/code/ui/frontend/js/consultants.directory.page.js")); Requirements::customScript($this->GATrackingCode()); $this->consultant_repository = new SapphireConsultantRepository(); $this->region_repository = new SapphireRegionRepository(); $this->consultants_locations_query = new ConsultantsOfficesLocationsQueryHandler(); $this->consultants_service_query = new ConsultantsServicesQueryHandler(); $google_geo_coding_api_key = null; $google_geo_coding_client_id = null; $google_geo_coding_private_key = null; if (defined('GOOGLE_GEO_CODING_API_KEY')) { $google_geo_coding_api_key = GOOGLE_GEO_CODING_API_KEY; } else { if (defined('GOOGLE_GEO_CODING_CLIENT_ID') && defined('GOOGLE_GEO_CODING_PRIVATE_KEY')) { $google_geo_coding_client_id = GOOGLE_GEO_CODING_CLIENT_ID; $google_geo_coding_private_key = GOOGLE_GEO_CODING_PRIVATE_KEY; } } $this->manager = new ConsultantManager($this->consultant_repository, new SapphireMarketPlaceVideoTypeRepository(), new SapphireMarketPlaceTypeRepository(), new SapphireOpenStackApiVersionRepository(), new SapphireOpenStackComponentRepository(), new SapphireOpenStackReleaseRepository(), new SapphireRegionRepository(), new SapphireSupportChannelTypeRepository(), new SapphireSpokenLanguageRepository(), new SapphireConfigurationManagementTypeRepository(), new SapphireConsultantServiceOfferedTypeRepository(), new ConsultantAddPolicy($this->consultant_repository, new SapphireMarketPlaceTypeRepository()), new CompanyServiceCanAddResourcePolicy(), new CompanyServiceCanAddVideoPolicy(), new ConsultantFactory(), new MarketplaceFactory(), new ValidatorFactory(), new OpenStackApiFactory(), new GoogleGeoCodingService(new SapphireGeoCodingQueryRepository(), new UtilFactory(), SapphireTransactionManager::getInstance(), $google_geo_coding_api_key, $google_geo_coding_client_id, $google_geo_coding_private_key), null, new SessionCacheService(), SapphireTransactionManager::getInstance()); }
function up() { echo "Starting Migration Proc ...<BR>"; //check if migration already had ran ... $migration = Migration::get()->filter('Name', $this->title)->first(); if (!$migration) { $marketplace_types = array('Private Cloud'); $factory = new MarketplaceFactory(); $service = new MarketplaceTypeManager(new SapphireMarketPlaceTypeRepository(), new SapphireSecurityGroupRepository(), SapphireTransactionManager::getInstance()); foreach ($marketplace_types as $marketplace_type) { try { $service->store($factory->buildMarketplaceType($marketplace_type)); } catch (Exception $ex) { } } DB::query("INSERT INTO CloudServiceOffered_PricingSchemas (CloudServiceOfferedID, PricingSchemaTypeID) SELECT PublicCloudServiceOfferedID, PricingSchemaTypeID FROM PublicCloudServiceOffered_PricingSchemas;"); DB::query("UPDATE OpenStackImplementationApiCoverage SET ClassName='CloudServiceOffered'\nWHERE ImplementationID IN (SELECT ID FROM CompanyService where ClassName='PublicCloudService');"); DB::query("UPDATE DataCenterRegion SET CloudServiceID = PublicCloudID;"); DB::query("ALTER TABLE `CloudServiceOffered_PricingSchemas`\n\t\t\tADD UNIQUE INDEX `CloudServiceOffered_PricingSchemaType` (`CloudServiceOfferedID` ASC, `PricingSchemaTypeID` ASC);"); DB::query("ALTER TABLE `DataCenterRegion` DROP INDEX `Name_PublicCloud`;"); DB::query("ALTER TABLE `DataCenterRegion`\n\t\t\tADD UNIQUE INDEX `Name_CloudService` (`Name` ASC, `CloudServiceID` ASC);"); $migration = new Migration(); $migration->Name = $this->title; $migration->Description = $this->description; $migration->Write(); } echo "Ending Migration Proc ...<BR>"; }
public function __construct() { parent::__construct(); $this->delete_request_repository = new SapphireDupeMemberDeleteRequestRepository(); $this->merge_request_repository = new SapphireDupeMemberMergeRequestRepository(); $this->manager = new DupesMembersManager(new SapphireDupesMemberRepository(), new DupeMemberMergeRequestFactory(), new DupeMemberDeleteRequestFactory(), $this->merge_request_repository, $this->delete_request_repository, new SapphireDeletedDupeMemberRepository(), new DeletedDupeMemberFactory(), new SapphireCandidateNominationRepository(), new SapphireNotMyAccountActionRepository(), new NotMyAccountActionFactory(), SapphireTransactionManager::getInstance(), SapphireBulkQueryRegistry::getInstance()); }
function down() { SapphireTransactionManager::getInstance()->transaction(function () { echo sprintf("downgrading migration # %s ...", $this->title) . PHP_EOL; Migration::get()->filter('Name', $this->title)->removeAll(); $this->doDown(); }); }
function run() { $init_time = time(); $manager = new GerritIngestManager(new GerritAPI(GERRIT_BASE_URL, GERRIT_USER, GERRIT_PASSWORD), new SapphireGerritUserRepository(), SapphireTransactionManager::getInstance()); $processed = $manager->processCommits(); $finish_time = time() - $init_time; echo 'processed records ' . $processed . ' - time elapsed : ' . $finish_time . ' seconds.' . PHP_EOL; }
public function __construct() { parent::__construct(); // TODO: set by IOC $this->summit_repository = new SapphireSummitRepository(); $this->summitevent_repository = new SapphireSummitEventRepository(); $this->summitpresentation_repository = new SapphireSummitPresentationRepository(); $this->summit_service = new SummitService($this->summit_repository, $this->summitevent_repository, SapphireTransactionManager::getInstance()); }
public function __construct() { parent::__construct(); $this->factory = new OpenStackApiFactory(); $this->release_repository = new SapphireOpenStackReleaseRepository(); $this->component_repository = new SapphireOpenStackComponentRepository(); $this->version_repository = new SapphireOpenStackApiVersionRepository(); $this->manager = new OpenStackApiManager($this->release_repository, $this->component_repository, $this->version_repository, SapphireTransactionManager::getInstance()); }
function run() { try { $manager = new JobRegistrationRequestManager(new SapphireJobRegistrationRequestRepository(), new SapphireJobRepository(), new SapphireJobAlertEmailRepository(), new JobFactory(), new JobsValidationFactory(), new SapphireJobPublishingService(), SapphireTransactionManager::getInstance()); $manager->makePurge(); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
function run() { $batch_size = PullCommitsFromGerritTaskBatchSize; if (isset($_GET['batch_size'])) { $batch_size = intval(trim(Convert::raw2sql($_GET['batch_size']))); echo sprintf('batch_size set to %s', $batch_size); } $manager = new GerritIngestManager(new GerritAPI(GERRIT_BASE_URL, GERRIT_USER, GERRIT_PASSWORD), new SapphireBatchTaskRepository(), new SapphireCLAMemberRepository(), new BatchTaskFactory(), SapphireTransactionManager::getInstance()); $members_updated = $manager->processCommits($batch_size); echo $members_updated; }
/** * */ public function run() { SapphireTransactionManager::getInstance()->transaction(function () { $pageToken = null; while (true) { if ($this->videosUpdated >= SummitVideoApp::config()->popular_video_limit) { break; } // Prevent an infinite loop if the YouTube service is acting strange if ($this->sanityCheck === 5) { $e = new Exeception('Task has run too many times. Seems to be an infinite loop. Could be something wrong with the YouTube service?'); SS_Log::log($e, SS_Log::ERR); throw $e; } try { $response = $this->api->getPopularVideos($pageToken); } catch (\Exception $e) { SS_Log::log("YouTube Search failed" . $e->getMessage(), SS_Log::ERR); } $this->sanityCheck++; $body = $response->getBody()->getContents(); $data = Convert::json2array($body); $nextPageToken = @$data['nextPageToken']; $ids = []; foreach ($data['items'] as $item) { if ($item['id']['kind'] === 'youtube#video') { $ids[] = $item['id']['videoId']; } } try { $response = $this->api->getVideoStatsById($ids); } catch (\Exception $e) { SS_Log::log("YouTube video stats failed" . $e->getMessage(), SS_Log::ERR); } $body = $response->getBody()->getContents(); $data = Convert::json2array($body); foreach ($data['items'] as $v) { $video = PresentationVideo::get()->filter(['YouTubeID' => $v['id']])->first(); if ($video) { $video->Views = $v['statistics']['viewCount']; $video->write(); $this->videosUpdated++; } } // If there are no more pages, then bail if ($nextPageToken === $pageToken) { break; } $pageToken = $nextPageToken; } echo "{$this->videosUpdated} videos updated.\n"; }); }
public function __construct() { $this->private_cloud_repository = new SapphirePrivateCloudRepository(); $this->private_cloud_draft_repository = new SapphirePrivateCloudRepository(true); $this->marketplace_type_repository = new SapphireMarketPlaceTypeRepository(); //google geo coding settings $google_geo_coding_api_key = null; $google_geo_coding_client_id = null; $google_geo_coding_private_key = null; if (defined('GOOGLE_GEO_CODING_API_KEY')) { $google_geo_coding_api_key = GOOGLE_GEO_CODING_API_KEY; } else { if (defined('GOOGLE_GEO_CODING_CLIENT_ID') && defined('GOOGLE_GEO_CODING_PRIVATE_KEY')) { $google_geo_coding_client_id = GOOGLE_GEO_CODING_CLIENT_ID; $google_geo_coding_private_key = GOOGLE_GEO_CODING_PRIVATE_KEY; } } $manager = new PrivateCloudManager($this->private_cloud_repository, new SapphireMarketPlaceVideoTypeRepository(), $this->marketplace_type_repository, new SapphireGuestOSTypeRepository(), new SapphireHyperVisorTypeRepository(), new SapphireOpenStackApiVersionRepository(), new SapphireOpenStackComponentRepository(), new SapphireOpenStackReleaseRepository(), new SapphireRegionRepository(), new SapphireSupportChannelTypeRepository(), new SapphireOpenStackReleaseSupportedApiVersionRepository(), new PrivateCloudAddPolicy($this->private_cloud_repository, $this->marketplace_type_repository), new CompanyServiceCanAddResourcePolicy(), new CompanyServiceCanAddVideoPolicy(), new PrivateCloudFactory(), new MarketplaceFactory(), new ValidatorFactory(), new OpenStackApiFactory(), new GoogleGeoCodingService(new SapphireGeoCodingQueryRepository(), new UtilFactory(), SapphireTransactionManager::getInstance(), $google_geo_coding_api_key, $google_geo_coding_client_id, $google_geo_coding_private_key), null, new SessionCacheService(), SapphireTransactionManager::getInstance()); $draft_manager = new PrivateCloudManager($this->private_cloud_draft_repository, new SapphireMarketPlaceVideoTypeRepository(), $this->marketplace_type_repository, new SapphireGuestOSTypeRepository(), new SapphireHyperVisorTypeRepository(), new SapphireOpenStackApiVersionRepository(), new SapphireOpenStackComponentRepository(), new SapphireOpenStackReleaseRepository(), new SapphireRegionRepository(), new SapphireSupportChannelTypeRepository(), new SapphireOpenStackReleaseSupportedApiVersionRepository(), new PrivateCloudAddPolicy($this->private_cloud_draft_repository, $this->marketplace_type_repository), new CompanyServiceCanAddResourcePolicy(), new CompanyServiceCanAddVideoPolicy(), new PrivateCloudDraftFactory(), new MarketplaceDraftFactory(), new ValidatorFactory(), new OpenStackApiFactory(), new GoogleGeoCodingService(new SapphireGeoCodingQueryRepository(), new UtilFactory(), SapphireTransactionManager::getInstance(), $google_geo_coding_api_key, $google_geo_coding_client_id, $google_geo_coding_private_key), null, new SessionCacheService(), SapphireTransactionManager::getInstance()); parent::__construct($manager, $draft_manager, new PrivateCloudFactory(), new PrivateCloudDraftFactory()); // filters ... $this_var = $this; $current_user = $this->current_user; $repository = $this->private_cloud_repository; $draft_repository = $this->private_cloud_draft_repository; $this->addBeforeFilter('addCompanyService', 'check_add_company', function ($request) use($this_var, $current_user) { $data = $this_var->getJsonRequest(); if (!$data) { return $this_var->serverError(); } $company_id = intval(@$data['company_id']); if (!$current_user->isMarketPlaceAdminOfCompany(IPrivateCloudService::MarketPlaceGroupSlug, $company_id)) { return $this_var->permissionFailure(); } }); $this->addBeforeFilter('updateCompanyService', 'check_update_company', function ($request) use($this_var, $current_user) { $data = $this_var->getJsonRequest(); if (!$data) { return $this_var->serverError(); } if (!$current_user->isMarketPlaceAdminOfCompany(IPrivateCloudService::MarketPlaceGroupSlug, intval(@$data['company_id']))) { return $this_var->permissionFailure(); } }); $this->addBeforeFilter('deleteCompanyService', 'check_delete_company', function ($request) use($this_var, $current_user, $repository, $draft_repository) { $company_service_id = intval($request->param('COMPANY_SERVICE_ID')); $is_draft = intval($this->request->param('IS_DRAFT')); $company_service = $is_draft ? $draft_repository->getById($company_service_id) : $repository->getById($company_service_id); if (!$current_user->isMarketPlaceAdminOfCompany(IPrivateCloudService::MarketPlaceGroupSlug, $company_service->getCompany()->getIdentifier())) { return $this_var->permissionFailure(); } }); }
public function __construct() { parent::__construct(); // TODO: set by IOC $this->securityToken = new SecurityToken(); $this->summit_repository = new SapphireSummitRepository(); $this->summitevent_repository = new SapphireSummitEventRepository(); $this->summitpresentation_repository = new SapphireSummitPresentationRepository(); $this->eventfeedback_repository = new SapphireEventFeedbackRepository(); $this->attendee_repository = new SapphireSummitAttendeeRepository(); $this->schedule_manager = new ScheduleManager($this->summitevent_repository, $this->summitpresentation_repository, $this->eventfeedback_repository, new EventFeedbackFactory(), $this->attendee_repository, SapphireTransactionManager::getInstance()); }
/** * SummitAppApi constructor. */ public function __construct() { parent::__construct(); $this->summit_repository = new SapphireSummitRepository(); $this->summittype_repository = new SapphireSummitTypeRepository(); $this->summit_manager = new SummitManager($this->summit_repository, new SummitFactory(), $this->summittype_repository, new SummitTypeFactory(), SapphireTransactionManager::getInstance()); $this_var = $this; $this->addBeforeFilter('createSummit', 'check_create', function ($request) use($this_var) { if (!$this_var->checkAdminPermissions($request)) { return $this_var->permissionFailure(); } }); }
function init() { parent::init(); Requirements::css("themes/openstack/css/chosen.css", "screen,projection"); Requirements::css(THIRDPARTY_DIR . '/jquery-ui-themes/smoothness/jquery-ui.css'); Requirements::javascript(THIRDPARTY_DIR . '/jquery-ui/jquery-ui.js'); Requirements::combine_files('marketplace_training_landing.js', array("themes/openstack/javascript/chosen.jquery.min.js", "marketplace/code/ui/frontend/js/training.directory.page.js")); Requirements::customScript("jQuery(document).ready(function(\$) {\n \$('#training','.marketplace-nav').addClass('current');\n });"); $this->training_facade = new TrainingFacade($this, new TrainingManager(new SapphireTrainingServiceRepository(), new SapphireMarketPlaceTypeRepository(), new TrainingAddPolicy(), new TrainingShowPolicy(), new SessionCacheService(), new MarketplaceFactory(), SapphireTransactionManager::getInstance()), new SapphireCourseRepository(new MarketplaceFactory())); $this->course_location_query = new TrainingCoursesLocationQueryHandler(); $this->course_level_query = new TrainingCoursesLevelQueryHandler(); Requirements::customScript($this->GATrackingCode()); }
function run() { set_time_limit(0); try { $manager = new NewsRequestManager(new SapphireNewsRepository(), new SapphireSubmitterRepository(), new NewsFactory(), new NewsValidationFactory(), new SapphireFileUploadService(), SapphireTransactionManager::getInstance()); $manager->activateNews(); $manager->removeExpired(); $manager->archiveOld(); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
function init() { parent::init(); //managers $this->factory = new EventRegistrationRequestFactory(); $this->event_registration_request_manager = new EventRegistrationRequestManager(new SapphireEventRegistrationRequestRepository(), new SapphireEventRepository(), $this->factory, new GoogleGeoCodingService(new SapphireGeoCodingQueryRepository(), new UtilFactory(), SapphireTransactionManager::getInstance()), new SapphireEventPublishingService(), new EventValidatorFactory(), SapphireTransactionManager::getInstance()); //js files Requirements::css("themes/openstack/css/chosen.css", "screen,projection"); Requirements::css(THIRDPARTY_DIR . '/jquery-ui-themes/smoothness/jquery-ui.css'); Requirements::javascript(THIRDPARTY_DIR . '/jquery-ui/jquery-ui.js'); Requirements::javascript(Director::protocol() . "ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"); Requirements::javascript(Director::protocol() . "ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/additional-methods.min.js"); Requirements::combine_files('event_registration_request_page.js', array("themes/openstack/javascript/chosen.jquery.min.js", "themes/openstack/javascript/jquery.ui.datepicker.validation.package-1.0.1/jquery.ui.datepicker.validation.js", "themes/openstack/javascript/jquery.validate.custom.methods.js", 'events/js/event.registration.request.page.js')); }
/** * */ public function run() { SapphireTransactionManager::getInstance()->transaction(function () { $unprocessedVideos = PresentationVideo::get()->filter(['Processed' => false])->limit(50); if (!$unprocessedVideos->exists()) { return; } $summit = Summit::get_active(); $dateUTC = $summit->convertDateFromTimeZone2UTC(SS_DateTime::now()->Rfc2822()); $dateUTCTimestamp = strtotime($dateUTC); $maxAge = SummitVideoApp::config()->abandon_unprocessed_videos_after; $ids = []; foreach ($unprocessedVideos as $video) { $age = $dateUTCTimestamp - strtotime($video->DateUploaded); if ($age > $maxAge) { SS_Log::log("Video {$video->Title} has been unprocessed for a long time. ({$age} seconds). It should be deleted.", SS_Log::WARN); continue; } $ids[] = $video->YouTubeID; } try { $response = $this->api->getVideoStatusById($ids); } catch (\Exception $e) { SS_Log::log("YouTube check for status failed" . $e->getMessage(), SS_Log::ERR); return; } $body = $response->getBody()->getContents(); $data = Convert::json2array($body); $items = $data['items']; if (empty($items)) { echo "No videos are marked as processing. Exiting.\n"; return; } foreach ($items as $item) { $currentStatus = $item['status']['uploadStatus']; if ($currentStatus == 'processed') { $video = PresentationVideo::get()->filter(['YouTubeID' => $item['id']])->first(); if (!$video) { SS_Log::log("Tried to update processing status for " . $item['id'] . " but no PresentationVideo with that YouTubeID was found.", SS_Log::WARN); continue; } $video->Processed = true; $video->write(); $this->videosUpdated++; } } echo "{$this->videosUpdated} videos updated.\n"; }); }
function run() { try { $batch_size = 15; if (isset($_GET['batch_size'])) { $batch_size = intval(trim(Convert::raw2sql($_GET['batch_size']))); } $manager = new JobRegistrationRequestManager(new SapphireJobRegistrationRequestRepository(), new SapphireJobRepository(), new SapphireJobAlertEmailRepository(), new JobFactory(), new JobsValidationFactory(), new SapphireJobPublishingService(), SapphireTransactionManager::getInstance()); $manager->makeDigest($batch_size, NEW_JOBS_REGISTRATION_REQUEST_EMAIL_ALERT_TO, Director::absoluteURL('sangria/ViewJobsDetails')); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
function run() { try { $repository = new SapphireEventRepository(); $tx_manager = SapphireTransactionManager::getInstance(); $event_manager = new EventManager($repository, new EventRegistrationRequestFactory(), null, new SapphireEventPublishingService(), new EventValidatorFactory(), $tx_manager); $rss_events = $event_manager->rssEvents(10000); $events_array = $event_manager->rss2events($rss_events); $event_manager->saveRssEvents($events_array); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
function run() { try { $repository = new SapphireRssNewsRepository(); $tx_manager = SapphireTransactionManager::getInstance(); $rss_news_manager = new RssNewsManager($repository, $tx_manager); $rss_news = $rss_news_manager->getNewsItemsFromSource(); $rss_news_manager->deleteAllNewsItems(); $rss_news_manager->saveNewsItems($rss_news); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
function run() { try { $batch_size = 1000; if (isset($_GET['batch_size'])) { $batch_size = intval(trim(Convert::raw2sql($_GET['batch_size']))); } $manager = new RevocationNotificationManager(new SapphireFoundationMemberRepository(), new SapphireFoundationMemberRevocationNotificationRepository(), new SapphireElectionRepository(), new RevocationNotificationFactory(), SapphireTransactionManager::getInstance()); $manager->revokeIgnoredNotifications($batch_size); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
function init() { parent::init(); Requirements::css(THIRDPARTY_DIR . '/jquery-ui-themes/smoothness/jquery-ui.css'); Requirements::javascript(THIRDPARTY_DIR . '/jquery-ui/jquery-ui.js'); Requirements::customScript("jQuery(document).ready(function(\$) {\n \$('#distros','.marketplace-nav').addClass('current');\n });"); Requirements::css("themes/openstack/css/chosen.css", "screen,projection"); Requirements::combine_files('marketplace_distros_landing.js', array("themes/openstack/javascript/chosen.jquery.min.js", "marketplace/code/ui/frontend/js/implementation.directory.page.js")); Requirements::customScript($this->GATrackingCode()); $this->distribution_repository = new SapphireDistributionRepository(); $this->appliance_repository = new SapphireApplianceRepository(); $this->appliance_manager = new ApplianceManager($this->appliance_repository, new SapphireMarketPlaceVideoTypeRepository(), new SapphireMarketPlaceTypeRepository(), new SapphireGuestOSTypeRepository(), new SapphireHyperVisorTypeRepository(), new SapphireOpenStackApiVersionRepository(), new SapphireOpenStackComponentRepository(), new SapphireOpenStackReleaseRepository(), new SapphireRegionRepository(), new SapphireSupportChannelTypeRepository(), new SapphireOpenStackReleaseSupportedApiVersionRepository(), new ApplianceAddPolicy($this->appliance_repository, new SapphireMarketPlaceTypeRepository()), new CompanyServiceCanAddResourcePolicy(), new CompanyServiceCanAddVideoPolicy(), new ApplianceFactory(), new MarketplaceFactory(), new ValidatorFactory(), new OpenStackApiFactory(), null, new SessionCacheService(), SapphireTransactionManager::getInstance()); $this->distribution_manager = new DistributionManager($this->distribution_repository, new SapphireMarketPlaceVideoTypeRepository(), new SapphireMarketPlaceTypeRepository(), new SapphireGuestOSTypeRepository(), new SapphireHyperVisorTypeRepository(), new SapphireOpenStackApiVersionRepository(), new SapphireOpenStackComponentRepository(), new SapphireOpenStackReleaseRepository(), new SapphireRegionRepository(), new SapphireSupportChannelTypeRepository(), new SapphireOpenStackReleaseSupportedApiVersionRepository(), new DistributionAddPolicy($this->distribution_repository, new SapphireMarketPlaceTypeRepository()), new CompanyServiceCanAddResourcePolicy(), new CompanyServiceCanAddVideoPolicy(), new DistributionFactory(), new MarketplaceFactory(), new ValidatorFactory(), new OpenStackApiFactory(), null, new SessionCacheService(), SapphireTransactionManager::getInstance()); $this->implementations_services_query = new OpenStackImplementationServicesQueryHandler(); }
/** * @return void */ public function run() { try { $batch_size = 15; if (isset($_GET['batch_size'])) { $batch_size = intval(trim(Convert::raw2sql($_GET['batch_size']))); } $manager = new DupesMembersManager(new SapphireDupesMemberRepository(), new DupeMemberMergeRequestFactory(), new DupeMemberDeleteRequestFactory(), new SapphireDupeMemberMergeRequestRepository(), new SapphireDupeMemberDeleteRequestRepository(), new SapphireDeletedDupeMemberRepository(), new DeletedDupeMemberFactory(), new SapphireCandidateNominationRepository(), new SapphireNotMyAccountActionRepository(), new NotMyAccountActionFactory(), SapphireTransactionManager::getInstance(), SapphireBulkQueryRegistry::getInstance()); $manager->purgeActionRequests($batch_size); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }