当前位置: 首页>>代码示例>>PHP>>正文


PHP gpFiles::Unlock方法代码示例

本文整理汇总了PHP中gpFiles::Unlock方法的典型用法代码示例。如果您正苦于以下问题:PHP gpFiles::Unlock方法的具体用法?PHP gpFiles::Unlock怎么用?PHP gpFiles::Unlock使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在gpFiles的用法示例。


在下文中一共展示了gpFiles::Unlock方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: Init

 /**
  * Set variables for blog display
  *
  */
 public static function Init()
 {
     global $addonPathData;
     if (isset(self::$data)) {
         return;
     }
     self::$data_dir = $addonPathData;
     self::$index_file = self::$data_dir . '/index.php';
     self::$root_url = 'Special_Blog';
     if (is_callable(array('common', 'SpecialHref'))) {
         self::$root_url = common::SpecialHref('Special_Blog');
     }
     self::GetBlogData();
     self::AddCSS();
     //regenerate if there are pending posts that need to be published
     if (!is_null(SimpleBlogCommon::$data['next_regen']) && SimpleBlogCommon::$data['next_regen'] < time()) {
         if (@gpFiles::WriteLock()) {
             self::GenStaticContent();
             SimpleBlogCommon::NextGenTime();
             SimpleBlogCommon::SaveIndex();
             gpFiles::Unlock('write', gp_random);
         }
     }
 }
开发者ID:a2exfr,项目名称:Simple-Blog,代码行数:28,代码来源:SimpleBlogCommon.php

示例2: BufferOut

 /**
  * Complete the response by adding final content to the <head> of the document
  * @static
  * @since 2.4.1
  * @param string $buffer html content
  * @return string finalized response
  */
 static function BufferOut($buffer)
 {
     global $config, $gp_head_content, $addonFolderName, $dataDir, $addon_current_id, $wbErrorBuffer;
     //add error notice if there was a fatal error
     if (!ini_get('display_errors') && function_exists('error_get_last')) {
         //check for fatal error
         $fatal_errors = array(E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR);
         $last_error = error_get_last();
         if (is_array($last_error) && in_array($last_error['type'], $fatal_errors)) {
             $last_error['request'] = $_SERVER['REQUEST_URI'];
             if ($addon_current_id) {
                 $last_error['addon_name'] = $config['addons'][$addonFolderName]['name'];
                 $last_error['addon_id'] = $addon_current_id;
             }
             $last_error['file'] = realpath($last_error['file']);
             //may be redundant
             showError($last_error['type'], $last_error['message'], $last_error['file'], $last_error['line'], false);
             //send error to logger
             $reload = false;
             //disable execution
             if (count(self::$catchable)) {
                 $last_error['time'] = time();
                 $last_error['request_method'] = $_SERVER['REQUEST_METHOD'];
                 if (!empty($last_error['file'])) {
                     $last_error['file_modified'] = filemtime($last_error['file']);
                     $last_error['file_size'] = filesize($last_error['file']);
                 }
                 //error text, check for existing fatal notice
                 if (count(self::$fatal_notices)) {
                     $content = end(self::$fatal_notices);
                     reset(self::$fatal_notices);
                     if ($content[0] == '{' && ($temp = json_decode($content, true))) {
                         $last_error = $temp;
                     }
                 } else {
                     $content = json_encode($last_error);
                 }
                 //$buffer .= pre(self::$catchable).'<hr/>';
                 //$buffer .= '<h3>Existing Fatal Notices</h3>'.pre(self::$fatal_notices).'<hr/>';
                 $temp = array_reverse(self::$catchable);
                 foreach ($temp as $error_hash => $info) {
                     $file = $dataDir . '/data/_site/fatal_' . $error_hash;
                     gpFiles::Save($file, $content);
                     $reload = true;
                     if ($info['catchable_type'] == 'exec') {
                         break;
                     }
                 }
             }
             //reload non-logged in users automatically, display message to admins
             $buffer .= '<p>Oops, an error occurred while generating this page.<p>';
             if (!common::LoggedIn()) {
                 if ($reload) {
                     $buffer .= 'Reloading... <script type="text/javascript">window.setTimeout(function(){window.location.href = window.location.href},1000);</script>';
                 } else {
                     $buffer .= '<p>If you are the site administrator, you can troubleshoot the problem by changing php\'s display_errors setting to 1 in the gpconfig.php file.</p>' . '<p>If the problem is being caused by an addon, you may also be able to bypass the error by enabling gpEasy\'s safe mode in the gpconfig.php file.</p>' . '<p>More information is available in the <a href="http://docs.gpeasy.com/Main/Troubleshooting">gpEasy documentation</a>.</p>' . '<p><a href="">Reload this page to continue</a>.</p>';
                 }
             } else {
                 $buffer .= '<h3>Error Details</h3>' . pre($last_error) . '<p><a href="">Reload this page</a></p>';
                 if ($reload) {
                     $buffer .= '<p><a href="">Reload this page with the faulty component disabled</a></p>' . '<p><a href="?cmd=enable_component&hash=' . $error_hash . '">Reload this page with the faulty component enabled</a></p>';
                 }
                 $buffer .= '<p style="font-size:90%">Note: Error details are only displayed for logged in administrators</p>' . common::ErrorBuffer(true, false);
             }
         }
     }
     //remove lock
     if (defined('gp_has_lock') && gp_has_lock) {
         gpFiles::Unlock('write', gp_random);
     }
     //replace the <head> placeholder with header content
     $placeholder = '<!-- get_head_placeholder ' . gp_random . ' -->';
     $pos = strpos($buffer, $placeholder);
     if ($pos === false) {
         return $buffer;
     }
     $buffer = substr_replace($buffer, $gp_head_content, $pos, strlen($placeholder));
     //add jquery if needed
     $placeholder = '<!-- jquery_placeholder ' . gp_random . ' -->';
     $pos = strpos($buffer, $placeholder);
     if ($pos !== false) {
         $replacement = '';
         if (strpos($buffer, '<script') !== false) {
             if ($config['jquery'] != 'local') {
                 $replacement = "\n<script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js\"></script>";
             } else {
                 $replacement = "\n<script type=\"text/javascript\" src=\"" . common::GetDir('/include/thirdparty/js/jquery.js') . "\"></script>";
             }
         }
         $buffer = substr_replace($buffer, $replacement, $pos, strlen($placeholder));
     }
     //messages
     $pos = strpos($buffer, '<!-- message_start ' . gp_random . ' -->');
//.........这里部分代码省略.........
开发者ID:Bomberus,项目名称:gpEasy-CMS,代码行数:101,代码来源:gpOutput.php

示例3: Install_DataFiles_New


//.........这里部分代码省略.........
		<li>Runs on PHP</li>
		<li>File Upload Manager</li>
		<li>Drag \'n Drop Theme Content</li>
		<li>Deleted File Trash Can</li>
		<li>Multiple User Administration</li>
		<li>Flat File Storage</li>
		<li>Fast Page Loading</li>
		<li>Fast and Easy Installation</li>
		<li>reCaptcha for Contact Form</li>
		<li>HTML Tidy (when available)</li>
		</ul>';
        self::NewTitle($destination, 'About', $content, $config, $new_index);
        //Side_Menu
        $file = $destination . '/data/_extra/Side_Menu.php';
        $content = '<h3>Join the ' . CMS_NAME . ' Community</h3>
		<p>Visit ' . CMS_READABLE_DOMAIN . ' to access the many <a href="' . CMS_DOMAIN . '/Resources" title="' . CMS_NAME . ' Community Resources">available resources</a> to help you get the most out of our CMS.</p>
		<ul>
		<li><a href="' . CMS_DOMAIN . '/Themes" title="' . CMS_NAME . ' Themes">Download Themes</a></li>
		<li><a href="' . CMS_DOMAIN . '/Plugins" title="' . CMS_NAME . ' Plugin">Download Plugins</a></li>
		<li><a href="' . CMS_DOMAIN . '/Forum" title="' . CMS_NAME . ' Forum">Get Help in the Forum</a></li>
		<li><a href="' . CMS_DOMAIN . '/Powered_by" title="Sites using ' . CMS_NAME . '">Show off Your Site</a></li>
		<li><a href="' . CMS_DOMAIN . '/Resources" title="' . CMS_NAME . ' Community Resources">And Much More...</a></li>
		</ul>
		<p class="sm">(Edit this content by clicking &quot;Edit&quot;, it&#39;s that easy!)</p>';
        self::NewExtra($file, $content);
        //Header
        $file = $destination . '/data/_extra/Header.php';
        $content = '<h1>' . $config['title'] . '</h1>
		<h4>' . 'The Fast and Easy CMS' . '</h4>';
        self::NewExtra($file, $content);
        //Footer
        $file = $destination . '/data/_extra/Footer.php';
        $content = '<h3><a href="' . CMS_DOMAIN . '/Our_CMS" title="Features of Our CMS">' . CMS_NAME . ' Features</a></h3>
		<p>Easy to use True WYSIWYG Editing.</p>
		<p>Flat-file data storage and advanced resource management for fast websites.</p>
		<p>Community driven development</p>
		<p><a href="' . CMS_DOMAIN . '/Our_CMS" title="Features of Our CMS">And More...</a></p>
		<p>If you like ' . CMS_NAME . ', then you might also like
		<a href="http://lessphp.gpeasy.com" title="A Less to CSS compiler based on the official lesscss project">Less.php</a>,
		<a href="http://whatcms.org" title="What CMS? Find out what CMS a site is using">WhatCMS.org</a> and
		<a href="http://whichcms.org" title="Which CMS? Find out which CMS has the features you\'re looking for.">WhichCMS.org</a>.
		</p>';
        self::NewExtra($file, $content);
        //Another example area
        $file = $destination . '/data/_extra/Lorem.php';
        $content = '<h3>Heading</h3>
		<p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>';
        self::NewExtra($file, $content);
        //contact html
        $file = $destination . '/data/_extra/Contact.php';
        self::NewExtra($file, '<h2>Contact Us</h2><p>Use the form below to contact us, and be sure to enter a valid email address if you want to hear back from us.</p>');
        //users
        echo '<li>';
        $user_info = array();
        $user_info['password'] = common::hash($_POST['password'], 'sha512');
        $user_info['passhash'] = 'sha512';
        $user_info['granted'] = 'all';
        $user_info['editing'] = 'all';
        $user_info['email'] = $_POST['email'];
        $users = array();
        $username = $_POST['username'];
        //log user in here to finish user_info
        if ($base_install) {
            includeFile('tool/sessions.php');
            gp_defined('gp_session_cookie', gpsession::SessionCookie($config['gpuniq']));
            gpsession::create($user_info, $username, $sessions);
        }
        $users[$username] = $user_info;
        if (!gpFiles::SaveData($destination . '/data/_site/users.php', 'users', $users)) {
            echo '<span class="failed">';
            echo sprintf($langmessage['COULD_NOT_SAVE'], 'users.php');
            echo '</span>';
            echo '</li>';
            return false;
        }
        echo '<span class="passed">';
        echo sprintf($langmessage['_SAVED'], 'users.php');
        echo '</span>';
        echo '</li>';
        //save config
        //not using SaveConfig() because $config is not global here
        echo '<li>';
        $config['file_count'] = self::$file_count;
        if (!gpFiles::SaveData($destination . '/data/_site/config.php', 'config', $config)) {
            echo '<span class="failed">';
            echo sprintf($langmessage['COULD_NOT_SAVE'], 'config.php');
            echo '</span>';
            echo '</li>';
            return false;
        }
        echo '<span class="passed">';
        echo sprintf($langmessage['_SAVED'], 'config.php');
        echo '</span>';
        echo '</li>';
        if ($base_install) {
            Install_Tools::InstallHtaccess($destination, $config);
        }
        gpFiles::Unlock('write', gp_random);
        return true;
    }
开发者ID:stegrams,项目名称:Typesetter,代码行数:101,代码来源:install.php

示例4: BufferOut

 /**
  * Complete the response by adding final content to the <head> of the document
  * @static
  * @since 2.4.1
  * @param string $buffer html content
  * @return string finalized response
  */
 static function BufferOut($buffer)
 {
     global $config, $gp_head_content;
     //add error notice if there was a fatal error
     if (!ini_get('display_errors')) {
         $last_error = self::LastFatal();
         if ($last_error) {
             self::RecordFatal($last_error);
             $buffer .= self::FatalMessage($last_error);
         }
     }
     //remove lock
     if (defined('gp_has_lock') && gp_has_lock) {
         gpFiles::Unlock('write', gp_random);
     }
     //make sure whe have a complete html request
     $placeholder = '<!-- get_head_placeholder ' . gp_random . ' -->';
     if (strpos($buffer, $placeholder) === false) {
         return $buffer;
     }
     $replacements = array();
     //performace stats
     if (class_exists('admin_tools')) {
         $replacements = self::PerformanceStats();
     }
     //head content
     $replacements[$placeholder] = $gp_head_content;
     //add jquery if needed
     $placeholder = '<!-- jquery_placeholder ' . gp_random . ' -->';
     $replacement = '';
     if (strpos($gp_head_content, '<script') !== false || strpos($buffer, '<script') !== false) {
         if ($config['jquery'] != 'local') {
             $replacement = "\n<script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js\"></script>";
         } else {
             $replacement = "\n<script type=\"text/javascript\" src=\"" . common::GetDir('/include/thirdparty/js/jquery.js') . "\"></script>";
         }
     }
     $replacements[$placeholder] = $replacement;
     //messages
     $pos = strpos($buffer, '<!-- message_start ' . gp_random . ' -->');
     $len = strpos($buffer, '<!-- message_end -->') - $pos;
     if ($pos && $len) {
         $replacement = GetMessages(false);
         $buffer = substr_replace($buffer, $replacement, $pos, $len + 20);
     }
     return str_replace(array_keys($replacements), array_values($replacements), $buffer);
 }
开发者ID:VTAMAGNO,项目名称:gpEasy-CMS,代码行数:54,代码来源:gpOutput.php

示例5: LogOut

 static function LogOut()
 {
     global $langmessage;
     if (!isset($_COOKIE[gp_session_cookie])) {
         return false;
     }
     $session_id = $_COOKIE[gp_session_cookie];
     gpFiles::Unlock('admin', sha1(sha1($session_id)));
     self::cookie(gp_session_cookie);
     self::CleanSession($session_id);
     msg($langmessage['LOGGED_OUT']);
 }
开发者ID:barbrick,项目名称:gpEasy-CMS,代码行数:12,代码来源:sessions.php


注:本文中的gpFiles::Unlock方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。