function updateINI_1_1_0() { showMessage2("Updating INI-files..."); $siteaccessList = getUserInput("Please specify the eZ Flow siteaccesses on your site (separated with space, for example eng nor): "); $siteaccessList = explode(' ', $siteaccessList); $translationSA = array(); foreach ($siteaccessList as $siteaccess) { if (!file_exists('settings/siteaccess/' . $siteaccess)) { continue; } /* Update override.ini.append.php part */ $settings = array('full_silverlight' => array('Source' => 'node/view/full.tpl', 'MatchFile' => 'full/silverlight.tpl', 'Subdir' => 'templates', 'Match' => array('class_identifier' => 'silverlight')), 'line_silverlight' => array('Source' => 'node/view/line.tpl', 'MatchFile' => 'line/silverlight.tpl', 'Subdir' => 'templates', 'Match' => array('class_identifier' => 'silverlight')), 'edit_ezsubtreesubscription_forum_topic' => array('Source' => 'content/datatype/edit/ezsubtreesubscription.tpl', 'MatchFile' => 'datatype/edit/ezsubtreesubscription/forum_topic.tpl', 'Subdir' => 'templates', 'Match' => array('class_identifier' => 'forum_topic')), 'block_item_article' => array('Source' => 'node/view/block_item.tpl', 'MatchFile' => 'block_item/article.tpl', 'Subdir' => 'templates', 'Match' => array('class_identifier' => 'article')), 'block_item_image' => array('Source' => 'node/view/block_item.tpl', 'MatchFile' => 'block_item/image.tpl', 'Subdir' => 'templates', 'Match' => array('class_identifier' => 'image')), 'dynamic_3_items1' => array('Source' => 'block/view/view.tpl', 'MatchFile' => 'block/dynamic_3_items1.tpl', 'Subdir' => 'templates', 'Match' => array('type' => 'Dynamic3Items', 'view' => '3_items1'))); $ini = eZINI::instance('override.ini', 'settings/siteaccess/' . $siteaccess, null, null, false, true); $ini->setReadOnlySettingsCheck(false); $ini->setVariables($settings); $ini->save(false, '.append.php', false, false, 'settings/siteaccess/' . $siteaccess, false); /* Update menu.ini.append.php part */ $settings = array('SelectedMenu' => array('CurrentMenu' => 'DoubleTop', 'TopMenu' => 'double_top', 'LeftMenu' => '')); $ini = eZINI::instance('menu.ini', 'settings/siteaccess/' . $siteaccess, null, null, false, true); $ini->setReadOnlySettingsCheck(false); $ini->setVariables($settings); $ini->save(false, '.append.php', false, false, 'settings/siteaccess/' . $siteaccess, false); /* Get site.ini for ContentObjectLocale code */ $ini = eZINI::instance('site.ini', 'settings/siteaccess/' . $siteaccess, null, null, false, true); $contentObjectLocale = explode('-', $ini->variable('RegionalSettings', 'ContentObjectLocale')); $translationSA[$siteaccess] = ucfirst($contentObjectLocale[0]); } $settings = array(array('name' => 'site.ini', 'settings' => array('RegionalSettings' => array('TranslationSA' => $translationSA))), array('name' => 'content.ini', 'settings' => array('table' => array('CustomAttributes' => array('0' => 'summary', '1' => 'caption')), 'td' => array('CustomAttributes' => array('0' => 'valign')), 'th' => array('CustomAttributes' => array('0' => 'scope', '1' => 'abbr', '2' => 'valign')), 'CustomTagSettings' => array('AvailableCustomTags' => array('0' => 'underline'), 'IsInline' => array('underline' => 'true')), 'embed-type_images' => array('AvailableClasses' => array()))), array('name' => 'ezoe_attributes.ini', 'settings' => array('CustomAttribute_table_summary' => array('Name' => 'Summary (WAI)', 'Required' => 'true'), 'CustomAttribute_scope' => array('Name' => 'Scope', 'Title' => 'The scope attribute defines a way to associate header cells and data cells in a table.', 'Type' => 'select', 'Selection' => array('0' => '', 'col' => 'Column', 'row' => 'Row')), 'CustomAttribute_valign' => array('Title' => 'Lets you define the vertical alignment of the table cell/ header.', 'Type' => 'select', 'Selection' => array('0' => '', 'top' => 'Top', 'middle' => 'Middle', 'bottom' => 'Bottom', 'baseline' => 'Baseline')), 'Attribute_table_border' => array('Type' => 'htmlsize', 'AllowEmpty' => 'true'), 'CustomAttribute_embed_offset' => array('Type' => 'int', 'AllowEmpty' => 'true'), 'CustomAttribute_embed_limit' => array('Type' => 'int', 'AllowEmpty' => 'true'))), array('name' => 'ezxml.ini', 'settings' => array('TagSettings' => array('TagPresets' => array('0' => '', 'mini' => 'Simple formatting'))))); foreach ($settings as $setting) { $iniName = $setting['name']; $onlyModified = false; if (file_exists('settings/override/' . $iniName . '.append') || file_exists('settings/override/' . $iniName . '.append.php')) { $ini = eZINI::instance($iniName, 'settings/override', null, null, false, true); } else { $ini = eZINI::create($iniName, 'settings/override'); $onlyModified = true; } $ini->setReadOnlySettingsCheck(false); $ini->setVariables($setting['settings']); $ini->save(false, '.append.php', false, $onlyModified, 'settings/override', false); } }
function runMenu($courthouseConfig) { $UserChoice = "I"; while ($UserChoice != "X") { clearScreen(); echo "+-------------------------------------------------------------------------+\n"; echo "| |\n"; echo "| Cryptolingus Cracking Suite (CLCS) - COURTHOUSE |\n"; echo "| |\n"; echo "+-------------------------------------------------------------------------+\n"; echo "\n"; echo "Commands:\n"; echo "---------\n"; echo "[I] Initialize Courthouse\n"; echo "[B] Build jobs... for 'murica\n"; echo "[S] Show configuration\n"; echo "[V] View status\n"; echo "[X] Exit Justice\n"; echo "\n"; $UserChoice = getUserInput("Choice:", TRUE); switch ($UserChoice) { case 'B': buildJobs($courthouseConfig); break; case 'I': initializeCourthouse($courthouseConfig); break; case 'S': $courthouseConfig->showAllSettings(); break; case 'V': showCourthouseStatus($courthouseConfig); break; case 'X': break; default: showError(); break; } } }
function downloadPackages($packageList, $packageURL, $packageDir, $packageRepository) { global $cli; showMessage2("Configuring..."); if (!is_array($packageList) || count($packageList) == 0) { showError("Package list is empty. Aborting..."); } // 1. check if packages specified in $packageList exist in $packageRepository(means already downloaded and imported). // if yes - ask user to do download or not. If not - go out foreach (array_keys($packageList) as $k) { $packageName = $packageList[$k]; $package = eZPackage::fetch($packageName); if (is_object($package)) { global $autoMode; if ($autoMode == 'on') { $action = 'y'; } else { $action = getUserInput("Package '{$packageName}' already imported. Import it anyway? [y/n]: "); } if (strpos($action, 'n') === 0) { unset($packageList[$k]); } else { eZDir::recursiveDelete(eZPackage::repositoryPath() . "/{$packageRepository}/{$packageName}"); } } } if (count($packageList) == 0) { // all packages are imported. return true; } // 2. check $packgesList exists in $packageDir(means packages downloaded but not imported) // if yes - ask user to import or not. If not - go out if (!checkDir($packageDir)) { return false; } $downloadPackageList = array(); foreach ($packageList as $packageName) { if (file_exists("{$packageDir}/{$packageName}.ezpkg")) { global $autoMode; if ($autoMode == 'on') { $action = 'y'; } else { $action = getUserInput("Package '{$packageName}' already downloaded. Download it anyway? [y/n]: "); } if (strpos($action, 'n') === 0) { continue; } } $downloadPackageList[] = $packageName; } // // download // showMessage2("Downloading..."); if (count($downloadPackageList) > 0) { // TODO: using 'eZStepSiteTypes' is hack. // need to exclude 'downloadFile' from that class. $tpl = false; $http = false; $ini = false; $persistenceList = false; $downloader = new eZStepSiteTypes($tpl, $http, $ini, $persistenceList); foreach ($downloadPackageList as $packageName) { showMessage("{$packageName}"); $archiveName = $downloader->downloadFile("{$packageURL}/{$packageName}.ezpkg", $packageDir); if ($archiveName === false) { showError("download error - " . $downloader->ErrorMsg); } } } // // import // showMessage2("Importing..."); foreach ($packageList as $packageName) { showMessage("{$packageName}"); $package = eZPackage::import("{$packageDir}/{$packageName}.ezpkg", $packageName, false, $packageRepository); if (!is_object($package)) { showError("Faild to import '{$packageName}' package: err = {$package}"); } } return true; }
private function internalClear($purge, $cacheEntries, $name, $purgeSleep = null, $purgeMax = null, $purgeExpiry = null) { $this->cli->output(($purge ? 'Purging ' : 'Clearing ') . $this->cli->stylize('emphasize', $name ? $name : 'All cache') . ': '); $warnPaths = array(); foreach ($cacheEntries as $cacheEntry) { $absPath = realpath(eZSys::cacheDirectory() . DIRECTORY_SEPARATOR . $cacheEntry['path']); $absPathElementCount = count(explode(DIRECTORY_SEPARATOR, rtrim($absPath, DIRECTORY_SEPARATOR))); // Refuse to delete root directory ('/' or 'C:\') // 2 => since one path element ('/foo') produces two exploded elements if ($absPath && $absPathElementCount < 2) { $this->cli->error('Refusing to delete root directory! Please check your cache settings. Path: ' . $absPath); $this->script->shutdown(1); exit; } // Warn if the cache entry is not function based, and the path is outside ezp root, and the path has less than 2 elements if ($absPath && (!$purge || !isset($cacheEntry['purge-function'])) && !isset($cacheEntry['function']) && $absPathElementCount < 3 && strpos(dirname($absPath) . DIRECTORY_SEPARATOR, realpath(eZSys::rootDir()) . DIRECTORY_SEPARATOR) === false) { $warnPaths[] = $absPath; } } if (!empty($warnPaths)) { $this->cli->warning('The following cache paths are outside of the eZ Publish root directory, and have less than 2 path elements. ' . 'Are you sure you want to ' . ($purge ? 'purge' : 'clear') . ' them?'); foreach ($warnPaths as $warnPath) { $this->cli->output($warnPath); } if (function_exists("getUserInput")) { $input = getUserInput(($purge ? 'Purge' : 'Clear') . '? yes/no:', array('yes', 'no')); } else { $validInput = false; $readlineExists = function_exists("readline"); while (!$validInput) { if ($readlineExists) { $input = readline($query); } else { echo $prompt . ' '; $input = trim(fgets(STDIN)); } if ($acceptValues === false || in_array($input, $acceptValues)) { $validInput = true; } } } if ($input === 'no') { $this->script->shutdown(); exit; } } $firstItem = true; foreach ($cacheEntries as $cacheEntry) { if ($firstItem) { $firstItem = false; } else { $this->cli->output(', ', false); } $this->cli->output($this->cli->stylize('emphasize', $cacheEntry['name']), false); if ($purge) { eZCache::clearItem($cacheEntry, true, array($this, 'reportProgress'), $purgeSleep, $purgeMax, $purgeExpiry); } else { eZCache::clearItem($cacheEntry); } } $this->cli->output(); }
<form action="ValidateCredentials.action" method="post"> <div class="label">Email Address</div> <div class="contents"><input type="text" name="email" value="<?php echo getUserInput("email"); ?> " /></div> <div class="label">Password</div> <div class="contents"><input type="password" name="password" value="<?php echo getUserInput("password"); ?> " /></div> <div class="contents"><input type="submit" name="submit" value="Log In" /></div> <input type="hidden" name="referringPage" value="<?php echo get("referringPage"); ?> " /> </form>
// $packageURL = $scriptOptions['url']; if (!$packageURL) { $packageINI = eZINI::instance('package.ini'); $packageURL = $packageINI->variable('RepositorySettings', 'RemotePackagesIndexURL'); } // // 'auto-mode' option // global $autoMode; $autoMode = $scriptOptions['auto-mode']; if ($autoMode != 'off') { $autoMode = 'on'; $importDir = eZPackage::repositoryPath() . "/{$packageRepository}"; showWarning("Processing in auto-mode: \n" . "- packages will be downloaded to '{$packageDir}';\n" . "- packages will be imported to '{$importDir}';\n" . "- installing of existing classes will be skipped;\n" . "- all files(extesion, design, downloaded and imported packages) will be overwritten;"); $action = getUserInput("Continue? [y/n]: "); if (strpos($action, 'y') !== 0) { $script->shutdown(0, 'Done'); } } /************************************************************** * do the work * ***************************************************************/ if (downloadPackages($packageList, $packageURL, $packageDir, $packageRepository)) { if (file_exists(installScriptDir($packageRepository))) { // // Prepare siteaccesses access info. // $locales = eZContentLanguage::fetchLocaleList(); $primaryLanguage = eZContentLanguage::topPriorityLanguage(); $siteINI = eZINI::instance();
function checkPaths( $cacheEntries, $purge ) { global $cli, $script; $warnPaths = array(); foreach ( $cacheEntries as $cacheEntry ) { $absPath = realpath( eZSys::cacheDirectory() . DIRECTORY_SEPARATOR . $cacheEntry['path'] ); $absPathElementCount = count( explode( DIRECTORY_SEPARATOR, rtrim( $absPath, DIRECTORY_SEPARATOR ) ) ); // Refuse to delete root directory ('/' or 'C:\') if ( $absPath && $absPathElementCount < 2 ) // 2, since one path element ('/foo') produces two exploded elements { $cli->error( 'Refusing to delete root directory! Please check your cache settings. Path: ' . $absPath ); $script->shutdown( 1 ); exit(); } // Warn if the cache entry is not function based, and the path is outside ezp root, and the path has less than 2 elements if ( $absPath && ( !$purge || !isset( $cacheEntry['purge-function'] ) ) && !isset( $cacheEntry['function'] ) && $absPathElementCount < 3 && /* 3, since two path elements ('/foo/bar') produce three exploded elements */ strpos( dirname( $absPath ) . DIRECTORY_SEPARATOR, realpath( eZSys::rootDir() ) . DIRECTORY_SEPARATOR ) === false ) { $warnPaths[] = $absPath; } } if ( count( $warnPaths ) > 0 ) { $cli->warning( 'The following cache paths are outside of the eZ Publish root directory, and have less than 2 path elements. ' . 'Are you sure you want to ' . ( $purge ? 'purge' : 'clear' ) . ' them?' ); foreach ( $warnPaths as $warnPath ) { $cli->output( $warnPath ); } $input = getUserInput( ( $purge ? 'Purge' : 'Clear' ) . '? yes/no:', array( 'yes', 'no' ) ); if ( $input == 'no' ) { $script->shutdown(); exit(); } } }
function initializeJustice($jConfig) { resetCLCSdb("Justice", $jConfig); $processTargetsDirectory = getUserInput("Process the targets directory to load targets [Y/N]?", TRUE); if ($processTargetsDirectory == "Y") { loadTargets(TRUE, "Justice", $jConfig); } $processWordlistsDirectory = getUserInput("Process the wordlists directory to load wordlists [Y/N]?", TRUE); if ($processWordlistsDirectory == "Y") { loadWordlist(TRUE, "Justice", $jConfig); } userAck(); }
/** * Assigns a title attribute value to a selected asset * * @param int $asset_id The asset ID * @param string $asset_title The title to be set for the asset * * @return boolean * @access public */ function setAssetTitle($asset_id, $asset_title) { $success = FALSE; $asset =& $GLOBALS['SQ_SYSTEM']->am->getAsset($asset_id); if ($asset->id) { // Make sure that we have a 'title' attribute $current_title = $asset->attr('title'); if ($current_title == NULL) { printStdErr('* Asset ID ' . $asset_id . " does not have a title field, so one cannot be assigned.\n"); printStdErr('User Options ------------'); printStdErr('(I)gnore this asset and continue with modification of titles'); printStdErr('(C)ancel modification script'); $user_choice = getUserInput(array('i', 'c')); if ($user_choice == 'c') { printStdErr("\n- Titles modification cancelled by user"); exit(-7); } } else { // Set the 'title' attribute for the asset $asset->setAttrValue('title', $asset_title); $asset->saveAttributes(); // Read back the title to ensure that it is set as expected $success = $asset->attr('title') == $asset_title; if (!$success) { printStdErr('* The title "' . $asset_title . '" could not be set for asset ID ' . $asset_id . "\n"); printStdErr('User Options ------------'); printStdErr('(I)gnore this asset and continue with modification of titles'); printStdErr('(C)ancel modification script'); $user_choice = getUserInput(array('i', 'c')); if ($user_choice == 'c') { printStdErr("\n- Titles modification cancelled by user"); exit(-8); } } } } //end if return $success; }
echo $message->getMessage(); ?> </li> <?php } ?> </ul> </div> <?php } ?> <div class="contents">Name: <input type="text" size="40" name="name" value="<?php echo getUserInput("name"); ?> " /></div> <div class="contents"><textarea rows="5" cols="50" name="contents"><?php echo getUserInput("contents"); ?> </textarea></div> <div class="contents"><input type="submit" name="submit" value="Comment" /></div> <input type="hidden" name="blogId" value="<?php echo $post->getId(); ?> " /> </form> </div> </div> <?php }