GetIconsFiles() public static method

Gets files available as marker icons
public static GetIconsFiles ( string $p_htmlDir = '', string $p_websiteUrl = '' ) : array
$p_htmlDir string
$p_websiteUrl string
return array
 /**
  * @Route("/admin/preferences")
  * @Template("NewscoopNewscoopBundle:SystemPref:index.html.twig")
  */
 public function indexAction(Request $request)
 {
     $em = $this->container->get('em');
     $preferencesService = $this->container->get('system_preferences_service');
     $schedulerService = $this->container->get('newscoop.scheduler');
     $locations = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\CityLocations')->createQueryBuilder('a')->select('count(a)')->getQuery()->getOneOrNullResult();
     $cities = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\CityNames')->createQueryBuilder('a')->select('count(a)')->getQuery()->getOneOrNullResult();
     $jobs = $em->getRepository('Newscoop\\Entity\\CronJob')->createQueryBuilder('j')->getQuery()->getArrayResult();
     foreach ($jobs as $key => $job) {
         $jobs[$key]['nextRun'] = $schedulerService->getNextRunDate($job['schedule']);
         $jobs[$key]['prevRun'] = $schedulerService->getPreviousRunDate($job['schedule']);
     }
     $hasManagePermission = false;
     // TODO: 4.5 check for permissions from acl
     if (true) {
         $hasManagePermission = true;
     }
     $max_upload_filesize = $preferencesService->MaxUploadFileSize;
     if (empty($max_upload_filesize) || $this->convertToBytes($max_upload_filesize) == 0) {
         $preferencesService->MaxUploadFileSize = ini_get('upload_max_filesize');
     }
     $currentUser = $this->get('user')->getCurrentUser();
     $translator = $this->get('translator');
     $sp_session_lifetime = 0 + $preferencesService->SiteSessionLifeTime;
     $php_ini_max_seconds = 0;
     $php_ini_gc_works = ini_get('session.gc_probability');
     if (!empty($php_ini_gc_works)) {
         $php_ini_max_seconds = 0 + ini_get('session.gc_maxlifetime');
         if (!empty($php_ini_max_seconds)) {
             if ($sp_session_lifetime > $php_ini_max_seconds) {
                 $sp_session_lifetime = $php_ini_max_seconds;
             }
         }
     }
     $upload_min_filesize = $this->formatBytes(min($this->convertToBytes(ini_get('post_max_size')), $this->convertToBytes(ini_get('upload_max_filesize'))), 0);
     $mysql_client_command_path = $preferencesService->MysqlClientCommandPath;
     if (!$locations || !$cities) {
         $mysql_client_command_path_def = '/usr/bin/mysql';
         if (empty($mysql_client_command_path) && file_exists($mysql_client_command_path_def)) {
             $mysql_client_command_path = $mysql_client_command_path_def;
         }
     }
     $geo_preferred_lang = $preferencesService->GeoSearchPreferredLanguage;
     if (empty($geo_preferred_lang)) {
         $geo_preferred_lang = 'en';
     }
     $default_marker_source = $preferencesService->MapMarkerSourceDefault;
     $marker_icons = \Geo_Preferences::GetIconsFiles();
     if (0 < count($marker_icons)) {
         $default_marker_source = array();
         foreach ($marker_icons as $one_icon) {
             $default_marker_source[$one_icon] = $one_icon;
         }
     }
     $form = $this->container->get('form.factory')->create(new PreferencesType(), array('siteonline' => $preferencesService->SiteOnline, 'title' => $preferencesService->SiteTitle, 'meta_keywords' => $preferencesService->SiteMetaKeywords, 'meta_description' => $preferencesService->SiteMetaDescription, 'timezone' => $preferencesService->TimeZone, 'cache_engine' => $preferencesService->DBCacheEngine, 'cache_engine_host' => $preferencesService->DBCacheEngineHost, 'cache_engine_port' => $preferencesService->DBCacheEnginePort, 'cache_template' => $preferencesService->TemplateCacheHandler, 'cache_image' => $preferencesService->ImagecacheLifetime, 'allow_recovery' => $preferencesService->PasswordRecovery, 'secret_key' => $preferencesService->SiteSecretKey, 'session_lifetime' => $sp_session_lifetime, 'separator' => $preferencesService->KeywordSeparator, 'captcha' => $preferencesService->LoginFailedAttemptsNum, 'max_upload_size' => $preferencesService->MaxUploadFileSize, 'automatic_collection' => $preferencesService->CollectStatistics, 'smtp_host' => $preferencesService->SMTPHost, 'smtp_port' => $preferencesService->SMTPPort, 'email_from' => $preferencesService->EmailFromAddress, 'mediaRichTextCaptions' => $preferencesService->MediaRichTextCaptions, 'mediaCaptionLength' => $preferencesService->MediaCaptionLength, 'image_ratio' => $preferencesService->EditorImageRatio, 'image_width' => (int) $preferencesService->EditorImageResizeWidth, 'image_height' => (int) $preferencesService->EditorImageResizeHeight, 'zoom' => $preferencesService->EditorImageZoom, 'use_replication_host' => $preferencesService->DBReplicationHost, 'use_replication_user' => $preferencesService->DBReplicationUser, 'use_replication_password' => $preferencesService->DBReplicationPass, 'use_replication' => $preferencesService->UseDBReplication, 'use_replication_port' => $preferencesService->DBReplicationPort, 'template_filter' => $preferencesService->TemplateFilter, 'mysql_client_command_path' => $mysql_client_command_path, 'center_latitude_default' => (double) $preferencesService->MapCenterLatitudeDefault, 'center_longitude_default' => (double) $preferencesService->MapCenterLongitudeDefault, 'map_display_resolution_default' => (int) $preferencesService->MapDisplayResolutionDefault, 'map_view_width_default' => $preferencesService->MapViewWidthDefault, 'map_view_height_default' => $preferencesService->MapViewHeightDefault, 'map_auto_focus_default' => $preferencesService->MapAutoFocusDefault == '0' ? false : true, 'map_auto_focus_max_zoom' => $preferencesService->MapAutoFocusMaxZoom, 'map_auto_focus_border' => $preferencesService->MapAutoFocusBorder, 'map_auto_cSS_file' => $preferencesService->MapAutoCSSFile, 'map_provider_available_google_v3' => $preferencesService->MapProviderAvailableGoogleV3 == '0' ? false : true, 'map_provider_available_map_quest' => $preferencesService->MapProviderAvailableMapQuest == '0' ? false : true, 'map_provider_available_oSM' => $preferencesService->MapProviderAvailableOSM == '0' ? false : true, 'map_provider_default' => $preferencesService->MapProviderDefault, 'geo_search_local_geonames' => $preferencesService->GeoSearchLocalGeonames == '0' ? false : true, 'geo_search_mapquest_nominatim' => $preferencesService->GeoSearchMapquestNominatim == '0' ? false : true, 'geo_search_preferred_language' => $geo_preferred_lang, 'map_marker_directory' => $preferencesService->MapMarkerDirectory, 'map_popup_width_min' => $preferencesService->MapPopupWidthMin, 'map_popup_height_min' => $preferencesService->MapPopupHeightMin, 'map_video_width_you_tube' => $preferencesService->MapVideoWidthYouTube, 'map_video_height_you_tube' => $preferencesService->MapVideoHeightYouTube, 'map_video_width_vimeo' => $preferencesService->MapVideoWidthVimeo, 'map_video_height_vimeo' => $preferencesService->MapVideoHeightVimeo, 'map_video_width_flash' => $preferencesService->MapVideoWidthFlash, 'map_video_height_flash' => $preferencesService->MapVideoHeightFlash, 'geo_flash_server' => $preferencesService->FlashServer, 'geo_flash_directory' => $preferencesService->FlashDirectory, 'facebook_appid' => $preferencesService->facebook_appid, 'facebook_appsecret' => $preferencesService->facebook_appsecret, 'recaptchaPublicKey' => $preferencesService->RecaptchaPublicKey, 'recaptchaPrivateKey' => $preferencesService->RecaptchaPrivateKey, 'recaptchaSecure' => $preferencesService->RecaptchaSecure, 'userGarbageActive' => $preferencesService->userGarbageActive ?: 'N', 'userGarbageDays' => $preferencesService->userGarbageDays ?: 90, 'smartyUseProtocol' => $preferencesService->SmartyUseProtocol, 'cronJobNotificationEmail' => $preferencesService->CronJobsNotificationEmail, 'cronJobSmtpSender' => $preferencesService->CronJobsSenderEmail, 'cronJobSmtpSenderName' => $preferencesService->CronJobsSenderName), array('cacheService' => $this->container->get('newscoop.cache')));
     if ($request->isMethod('POST')) {
         $form->bind($request);
         if ($form->isValid()) {
             if (!$currentUser->hasPermission('ChangeSystemPreferences')) {
                 camp_html_display_error($translator->trans('newscoop.preferences.error.noaccess', array(), 'system_pref'));
                 exit;
             }
             $data = $form->getData();
             $geoLocation = array('map_display_resolution_default' => $data['map_display_resolution_default'], 'map_view_width_default' => $hasManagePermission ? $data['map_view_width_default'] : $preferencesService->MapViewWidthDefault, 'map_view_height_default' => $hasManagePermission ? $data['map_view_height_default'] : $preferencesService->MapViewHeightDefault, 'map_auto_cSS_file' => strip_tags($data['map_auto_cSS_file']), 'map_auto_focus_default' => $data['map_auto_focus_default'] ? '1' : '0', 'map_auto_focus_max_zoom' => $data['map_auto_focus_max_zoom'], 'map_auto_focus_border' => $data['map_auto_focus_border'], 'map_provider_available_google_v3' => $data['map_provider_available_google_v3'] ? '1' : '0', 'map_provider_available_map_quest' => $data['map_provider_available_map_quest'] ? '1' : '0', 'map_provider_available_oSM' => $data['map_provider_available_oSM'] ? '1' : '0', 'map_provider_default' => $data['map_provider_default'], 'geo_search_local_geonames' => $data['geo_search_local_geonames'] ? '1' : '0', 'geo_search_mapquest_nominatim' => $data['geo_search_mapquest_nominatim'] ? '1' : '0', 'geo_search_preferred_language' => $data['geo_search_preferred_language'], 'map_marker_directory' => $hasManagePermission ? strip_tags($data['map_marker_directory']) : $preferencesService->MapMarkerDirectory, 'map_marker_source_default' => strip_tags($data['map_marker_source_default']), 'map_popup_width_min' => $hasManagePermission ? $data['map_popup_width_min'] : $preferencesService->MapPopupWidthMin, 'map_popup_height_min' => $hasManagePermission ? $data['map_popup_height_min'] : $preferencesService->MapPopupHeightMin, 'map_video_width_you_tube' => $hasManagePermission ? $data['map_video_width_you_tube'] : $preferencesService->MapVideoWidthYouTube, 'map_video_height_you_tube' => $hasManagePermission ? $data['map_video_height_you_tube'] : $preferencesService->MapVideoHeightYouTube, 'map_video_width_vimeo' => $hasManagePermission ? $data['map_video_width_vimeo'] : $preferencesService->MapVideoWidthVimeo, 'map_video_height_vimeo' => $hasManagePermission ? $data['map_video_height_vimeo'] : $preferencesService->MapVideoHeightVimeo, 'map_video_width_flash' => $hasManagePermission ? $data['map_video_width_flash'] : $preferencesService->MapVideoWidthFlash, 'map_video_height_flash' => $hasManagePermission ? $data['map_video_height_flash'] : $preferencesService->MapVideoHeightFlash, 'flash_server' => $hasManagePermission ? strip_tags($data['geo_flash_server']) : $preferencesService->FlashServer, 'flash_directory' => $hasManagePermission ? strip_tags($data['geo_flash_directory']) : $preferencesService->FlashDirectory);
             // Max Upload File Size
             $uploadSettings = $this->maxUpload($data['max_upload_size'], $translator);
             if ($uploadSettings instanceof RedirectResponse) {
                 return $uploadSettings;
             }
             //geolocation
             $geolocationSettings = $this->geolocation($data['center_latitude_default'], $data['center_longitude_default'], $geoLocation, $translator);
             if ($geolocationSettings instanceof RedirectResponse) {
                 return $geolocationSettings;
             }
             if ($hasManagePermission) {
                 // DB Caching
                 $databaseCacheSettings = $this->databaseCache($data['cache_engine'], $data['cache_engine_host'], $data['cache_engine_port']);
                 if ($databaseCacheSettings instanceof RedirectResponse) {
                     return $databaseCacheSettings;
                 }
                 // Template Caching
                 $templateCacheSettings = $this->templateCache($data['cache_template'], $translator);
                 if ($templateCacheSettings instanceof RedirectResponse) {
                     return $templateCacheSettings;
                 }
                 $replicationSettings = $this->useReplication($data['use_replication_user'], $data['use_replication_host'], $data['use_replication_password'], $data['use_replication'], $data['use_replication_port'], $translator);
                 if ($replicationSettings instanceof RedirectResponse) {
                     return $replicationSettings;
                 }
                 // Statistics collecting
                 $this->collectStats($data['automatic_collection']);
                 // SMTP Host/Port
                 $this->smtpConfiguration($data['smtp_host'], $data['smtp_port']);
                 // Image resizing for WYSIWYG editor
                 $this->imageResizing($data['image_ratio'], $data['image_width'], $data['image_height'], $data['zoom']);
                 // Rich text captions, set default
                 $preferencesService->set('MediaRichTextCaptions', $data['mediaRichTextCaptions']);
                 if ($data['mediaRichTextCaptions'] == 'Y') {
                     $preferencesService->set('MediaCaptionLength', $data['mediaCaptionLength']);
                 } else {
                     // Override and set to 255 chars max
                     $preferencesService->set('MediaCaptionLength', 255);
                 }
                 // template filter
                 $this->templateFilter($data['template_filter']);
                 // users garbage settings
                 $preferencesService->set('userGarbageActive', $data['userGarbageActive']);
                 $preferencesService->set('userGarbageDays', $data['userGarbageDays']);
                 // smarty use protocol settings
                 $preferencesService->set('SmartyUseProtocol', $data['smartyUseProtocol']);
                 // cron jobs settings
                 $preferencesService->set('CronJobsNotificationEmail', $data['cronJobNotificationEmail']);
                 $preferencesService->set('CronJobsSenderEmail', $data['cronJobSmtpSender']);
                 $preferencesService->set('CronJobsSenderName', $data['cronJobSmtpSenderName']);
             }
             // General Settings
             $this->generalSettings($data['siteonline'], $data['title'], $data['meta_keywords'], $data['meta_description'], $data['timezone'], $data['cache_image'], $data['allow_recovery'], $data['email_from'], $data['session_lifetime'], $data['separator'], $data['captcha'], $data['mysql_client_command_path']);
             //Facebook
             $this->facebook($data['facebook_appid'], $data['facebook_appsecret']);
             //ReCaptcha
             $this->recaptcha($data['recaptchaPublicKey'], $data['recaptchaPrivateKey'], $data['recaptchaSecure']);
             $this->get('session')->getFlashBag()->add('success', $translator->trans('newscoop.preferences.success.saved', array(), 'system_pref'));
             return $this->redirect($this->generateUrl('newscoop_newscoop_systempref_index'));
         }
     }
     return array('form' => $form->createView(), 'php_ini_max_seconds' => $php_ini_max_seconds, 'upload_min_filesize' => $upload_min_filesize, 'hasManagePermission' => $hasManagePermission, 'mysql_client_command_path' => $mysql_client_command_path, 'map_marker_source_default' => $default_marker_source, 'map_marker_source_selected' => $preferencesService->MapMarkerSourceDefault, 'jobs' => $jobs);
 }
示例#2
0
文件: index.php 项目: nidzix/Newscoop
    ?>
" maxlength="80" size="40" class="input_text" />
    </td>
</tr>
<?php 
}
?>
<tr>
    <td align="left" width="400px">
        <?php 
putGS("Map Marker Default:");
?>
    </td>
    <td align="left" valign="top">
<?php 
$marker_icons = Geo_Preferences::GetIconsFiles();
if (0 < count($marker_icons)) {
    echo '<select name="f_map_marker_source_default" class="input_select">' . "\n";
    foreach ($marker_icons as $one_icon) {
        camp_html_select_option($one_icon, SystemPref::Get('MapMarkerSourceDefault'), $one_icon);
    }
    echo "</select>\n";
} else {
    ?>
        <input type="text" name="f_map_marker_source_default" value="<?php 
    p(SystemPref::Get('MapMarkerSourceDefault'));
    ?>
" maxlength="80" size="40" class="input_text" />
<?php 
}
?>