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


PHP get_theme_path函数代码示例

本文整理汇总了PHP中get_theme_path函数的典型用法代码示例。如果您正苦于以下问题:PHP get_theme_path函数的具体用法?PHP get_theme_path怎么用?PHP get_theme_path使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


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

示例1: _parse_theme_components

 function _parse_theme_components($string)
 {
     global $active_show;
     if (FALSE === ($matches = $this->_match_methods($string, "theme"))) {
         return $string;
     }
     foreach ($matches[0] as $match) {
         $result = str_replace($this->l_delim . "theme:", '', $match);
         $result = str_replace($this->r_delim, '', $result);
         $view_path = "../.." . get_theme_path() . $result . ".php";
         $theme_view = $active_show->controller->load->view($view_path, null, true);
         $string = str_replace($match, $theme_view, $string);
     }
     return $string;
 }
开发者ID:hscale,项目名称:builder-engine,代码行数:15,代码来源:module_parser.php

示例2: index

 public function index()
 {
     if ($this->user->is_logged_in()) {
         redirect("/user/main/dashboard", 'location');
     } else {
         $this->load->model("builderengine");
         $data['builderengine'] =& $this->builderengine;
         if ($data['builderengine']->get_option('background_img')) {
             $url = base_url($data['builderengine']->get_option('background_img'));
         } else {
             $url = get_theme_path() . "assets/img/login-bg/bg-2.jpg";
         }
         $data['url'] = $url;
         $this->show->set_user_backend();
         $this->show->user_backend('registration', $data);
     }
 }
开发者ID:hyrmedia,项目名称:builderengine,代码行数:17,代码来源:User_registration.php

示例3: bum_get_show_view

 /**
  * Controller.
  * 
  * This function will locate the associated element and display it in the
  * place of this function call
  * 
  * @param string $name
  */
 function bum_get_show_view($name = null)
 {
     //initializing variables
     $paths = set_controller_path();
     $theme = get_theme_path();
     $html = '';
     if (!($view = bum_find(array($theme), "views" . DS . $name . ".php"))) {
         $view = bum_find($paths, "views" . DS . $name . ".php");
     }
     if (!($model = bum_find(array($theme), "models" . DS . $name . ".php"))) {
         $model = bum_find($paths, "models" . DS . $name . ".php");
     }
     if (is_null($name)) {
         return false;
     }
     if (!$view && !$model) {
         return false;
     }
     do_action("byrd-controller", $model, $view);
     $path = $view;
     $html = false;
     if (file_exists($model)) {
         ob_start();
         $args = func_get_args();
         require $model;
         unset($html);
         $html = ob_get_clean();
     } else {
         ob_start();
         $args = func_get_args();
         require $path;
         unset($html);
         $html = ob_get_clean();
     }
     $html = apply_filters("byrd-controller-html", $html);
     return $html;
 }
开发者ID:Jonathonbyrd,项目名称:better-user-management,代码行数:45,代码来源:bootstrap.php

示例4: resize_image

 /**
  * Resizes the specified image to the specified dimensions.
  * 
  * The crop will be centered relative to the image.
  * If the files do not exists will be created and saved into the tmp/ folder.
  * After first creation, the same file will be served in response to calling
  * this function.
  * 
  * @param string $src
  *   The path to the image to be resized.
  * @param int $width
  *   The width at which the image will be cropped.
  * @param int $height
  *   The height at which the image will be cropped.
  * @return string
  *   The valid URL to the resized image.
  * 
  * @ingroup helperfunc
  */
 function resize_image($src, $width, $height)
 {
     // initializing
     $save_path = get_theme_path() . '/tmp/';
     $img_filename = $save_path . md5($width . 'x' . $height . '_' . basename($src)) . '.jpg';
     // if file doesn't exists, create it ( else simply returns the image )
     if (!file_exists($img_filename)) {
         $to_scale = FALSE;
         $to_crop = FALSE;
         // Get orig dimensions
         list($width_orig, $height_orig, $type_orig) = getimagesize($src);
         // get original image ... to improve!
         switch ($type_orig) {
             case IMAGETYPE_JPEG:
                 $image = imagecreatefromjpeg($src);
                 break;
             case IMAGETYPE_PNG:
                 $image = imagecreatefrompng($src);
                 break;
             case IMAGETYPE_GIF:
                 $image = imagecreatefromgif($src);
                 break;
             default:
                 return;
         }
         // which is the new smallest?
         if ($width < $height) {
             $min_dim = $width;
         } else {
             $min_dim = $height;
         }
         // which is the orig smallest?
         if ($width_orig < $height_orig) {
             $min_orig = $width_orig;
         } else {
             $min_orig = $height_orig;
         }
         // image of the right size
         if ($height_orig == $height && $width_orig == $width) {
         } else {
             if ($width_orig < $width) {
                 $to_scale = TRUE;
                 $ratio = $width / $width_orig;
             } else {
                 if ($height_orig < $height) {
                     $to_scale = TRUE;
                     $ratio = $height / $height_orig;
                 } else {
                     if ($height_orig > $height && $width_orig > $width) {
                         $to_scale = TRUE;
                         $ratio_dest = $width / $height;
                         $ratio_orig = $width_orig / $height_orig;
                         if ($ratio_dest > $ratio_orig) {
                             $ratio = $width / $width_orig;
                         } else {
                             $ratio = $height / $height_orig;
                         }
                     } else {
                         if ($width == $width_orig && $height_orig > $height || $height == $height_orig && width_orig > $width) {
                             $to_crop = TRUE;
                         } else {
                             echo "ALARM";
                         }
                     }
                 }
             }
         }
         // we need to zoom to get the right size
         if ($to_scale) {
             $new_width = $width_orig * $ratio;
             $new_height = $height_orig * $ratio;
             $image_scaled = imagecreatetruecolor($new_width, $new_height);
             // scaling!
             imagecopyresampled($image_scaled, $image, 0, 0, 0, 0, $new_width, $new_height, $width_orig, $height_orig);
             $image = $image_scaled;
             if ($new_width > $width || $new_height > $height) {
                 $to_crop = TRUE;
             }
         } else {
             $new_width = $width_orig;
             $new_height = $height_orig;
//.........这里部分代码省略.........
开发者ID:nebirhos,项目名称:wordless,代码行数:101,代码来源:image_helper.php

示例5: stylesheet_tag

?>
"
	</script>

	<?php 
echo stylesheet_tag("lib/dijit/themes/claro/claro.css");
?>
	<?php 
echo stylesheet_tag("css/layout.css");
?>

	<?php 
if ($_SESSION["uid"]) {
    $theme = get_pref("USER_CSS_THEME", $_SESSION["uid"], false);
    if ($theme && theme_valid("{$theme}")) {
        echo stylesheet_tag(get_theme_path($theme));
    } else {
        echo stylesheet_tag("themes/default.css");
    }
}
?>

	<?php 
print_user_stylesheet();
?>

	<link rel="shortcut icon" type="image/png" href="images/favicon.png"/>
	<link rel="icon" type="image/png" sizes="72x72" href="images/favicon-72px.png" />

	<?php 
foreach (array("lib/prototype.js", "lib/scriptaculous/scriptaculous.js?load=effects,controls", "lib/dojo/dojo.js", "lib/dojo/tt-rss-layer.js", "errors.php?mode=js") as $jsfile) {
开发者ID:XelaRellum,项目名称:tt-rss,代码行数:31,代码来源:prefs.php

示例6: get_theme_path

   All Emoncms code is released under the GNU Affero General Public License.
   See COPYRIGHT.txt and LICENSE.txt.

    ---------------------------------------------------------------------
    Emoncms - open source energy visualisation
    Part of the OpenEnergyMonitor project:
    http://openenergymonitor.org
*/
if (!isset($session['read']) || !$session['read']) {
    return;
}
if (isset($_SESSION['editmode']) && $_SESSION['editmode'] == TRUE) {
    $logo = get_theme_path() . "/emoncms logo off.png";
    $viewl = $session['username'];
} else {
    $logo = get_theme_path() . "/emoncms logo.png";
    if ($session['write']) {
        $viewl = 'dashboard/list';
    } else {
        $viewl = '';
    }
}
/*<button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
</button>*/
if (isset($_SESSION['editmode']) && $_SESSION['editmode'] == TRUE) {
    echo "<a class='brand' href='#'>Emoncms3</a>";
}
?>
开发者ID:jan-munneke,项目名称:emoncms3,代码行数:31,代码来源:menu_view.php

示例7: test_get_theme_path

 function test_get_theme_path()
 {
     $this->assertEqual('/mocked/file/path/to/mocked_root/mocked_theme', get_theme_path());
 }
开发者ID:AnnaNee,项目名称:wordless,代码行数:4,代码来源:theme_helper_test.php

示例8: admin_select

    function admin_select($var, $options, $title, $value = "")
    {
        echo '
			<link href="' . get_theme_path() . 'css/bootstrap.min.css" rel="stylesheet">
			<div class="form-group">
				<label>' . $title . '</label>
				<select name=' . $var . ' class="form-control">';
        foreach ($options as $val => $name) {
            if ($value == $val) {
                echo '<option selected value=' . $val . '>' . $name . '</option>';
            } else {
                echo '<option value=' . $val . '>' . $name . '</option>';
            }
        }
        echo '
				</select>
			</div>
			';
        /*echo"
        		<div class=\"control-group\">
                    <label class=\"control-label\" for=\"required\" style='width: 80px'><b>$title</b></label>
                    <div class=\"controls controls-row\" style='margin-left: 85px'>
                        <select name=\"$var\" class=\"span12\" >
                        ";
                        foreach($options as $val => $name)
                        {
                        	if($value == $val)
                        		echo "<option selected value='$val'>$name</option>";
                        	else
                        		echo "<option value='$val'>$name</option>";
                        }
                        echo"
                        </select>
                    </div>
                </div><!-- End .control-group  -->
                ";*/
    }
开发者ID:hyrmedia,项目名称:builderengine,代码行数:37,代码来源:block_handler.php

示例9: Block

?>
            <?php 
$line3->add_block($block1);
?>
            <?php 
$block2 = new Block('be-theme-pro-home-line-3-col-2');
?>
            <?php 
$block2->set_size('span6');
?>
            <?php 
$block2->html("{content}");
?>
            <?php 
$block2->set_content('
                <img src="' . get_theme_path() . 'img/beland1.jpg" alt="" />
                ');
?>
            <?php 
$line3->add_block($block2);
?>
			
<!-- 4th Line of Blocks --> 
			
            <?php 
$line4 = new Block("rpost-test");
?>
            <?php 
$line4->set_type('pro_rpost');
?>
            <?php 
开发者ID:hscale,项目名称:builder-engine,代码行数:31,代码来源:home.php

示例10: integrate_builderengine_js

    function integrate_builderengine_js()
    {
        global $active_show;
        $user = $active_show->controller->user;
        ?>

            <script src="/builderengine/public/js/jquery.js"></script>
            <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js" ></script>
            
            <script src="/builderengine/public/js/editor/ckeditor.js"></script>

            <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script>
            <script src="http://vitalets.github.io/angular-xeditable/dist/js/xeditable.js"></script>

            
            <script type="text/javascript">
                var page_path = "<?php 
        echo get_page_path();
        ?>
";
                var theme_path = "<?php 
        echo get_theme_path();
        ?>
";
                var blocks_for_reload = {};
                var disable_auto_block_reload = false;
                var getting_block = false;

                var has_focus = true;
                var var_editor_mode = "";

            </script>
            <script src="/builderengine/public/js/frontend-editor.js"></script>
            <script type="text/javascript">
                function reload_block(block_name, page_path, forced)
                {
                    //if(!has_focus)
                    //    return;
                    if(!forced && disable_auto_block_reload ){
                        alert('nope ' + forced);
                        return;
                    }
                    var getting_block = true;

                    jQuery.ajax({
                        type: "POST",
                        data: { page_path: page_path },
                         url:    '/layout_system/ajax/get_block/' +block_name + '?time='+new Date().getTime(),
                         success: function(data) {
                                    $('.block').each(function(){
                                        if($(this).attr("name") == block_name){

                                            old_data = $(this).html();

                                            cloned = $(this).clone();
                                            cloned = cloned.replaceWith(data);
                                            cloned_data = cloned.html();
                                            $(this).attr('class', cloned.attr('class'));
                                            cloned.remove();
                                            if(old_data != cloned_data || forced)
                                                $(this).replaceWith(data);
                                            if(var_editor_mode == "edit")
                                                initializeCustomEditorClickEvent();
                                            if(var_editor_mode == "style")
                                                initializeStyleEditorClickEvent();
                                                                            
                                        }
                                    }); 

                                    var getting_block = false;
                                    },
                         async:   true
                    });

                    
                }
                $(document).ready(function(){
                    if(window.parent.page_url_change)
                    window.parent.page_url_change(page_path);
                    jQuery(document).bind('editor_mode_change',  function (event, action){
                        if(action == "editModeEnable")
                            var_editor_mode = "edit";
                        if(action == "blockStyleModeEnable")
                            var_editor_mode = "style";

                        console.log('Received event '+action);
                        if(action == "blockStyleModeEnable" || action == "editModeEnable" || action == 'resizeModeEnable' || action == 'moveModeEnable' || action == 'addBlockModeEnable' || action == 'deleteBlockModeEnable')
                        {
                            disable_auto_block_reload = true;
                        }

                        if(action == "blockStyleModeDisable" || action == "editModeDisable" || action == 'resizeModeDisable' || action == 'moveModeDisable' || action == 'addBlockModeDisable' || action == 'deleteBlockModeDisable')
                        {
                            var_editor_mode = "";
                            disable_auto_block_reload = false;
                        }
                    });
                    <?php 
        $copied_block = $this->user->get_session_data("copied_block");
        if ($copied_block) {
//.........这里部分代码省略.........
开发者ID:hscale,项目名称:builder-engine,代码行数:101,代码来源:builderengine.php

示例11: Block

?>
                        <?php 
$block5->set_content('
                              <h4>Fusce imperdiet ornare</h4>
                              <p>Fusce imperdiet ornare dignissim. Donec aliquet convallis tortor, et placerat quam posuere posuere. Morbi tincidunt posuere turpis eu laoreet.</p>
                              <div class="button"><a href="#">Learn More</a></div>
                              ');
?>
                        <?php 
$block6 = new Block('business-commodore-1-theme-features-line4-col2');
?>
                        <?php 
$block6->set_size('span6');
?>
                        <?php 
$block6->set_content('<img src="' . get_theme_path() . 'img/beland3.jpg" alt="" />');
?>
                        <?php 
$line4->add_block($block5);
?>
                        <?php 
$line4->add_block($block6);
?>

<!-- 5th Line of Blocks -->
         
                        <?php 
$line5 = new Block('business-commodore-1-theme-features-cta');
?>
                        <?php 
$line5->add_css_class('row');
开发者ID:hscale,项目名称:builder-engine,代码行数:31,代码来源:features.php

示例12: Block

?>
     
                        <?php 
$block1 = new Block('business-commodore-1-theme-features-line3-col1');
?>
                        <?php 
$block1->set_size('span8');
?>
                        <?php 
$block1->set_content('<!-- Product title -->
                                    <h3>Project #1</h3>
                                    <!-- Product para -->
                                    <p>Sed justo dui, scelerisque ut consectetur vel, eleifend id erat. Morbi auctor adipiscing tempor. Phasellus condimentum rutrum aliquet. Quisque eu consectetur erat. Sed justo dui, scelerisque ut consectetur vel, eleifend id erat. Morbi auctor adipiscing tempor. Phasellus condimentum rutrum aliquet. Quisque eu consectetur erat.</p>
                                    <!-- Product image -->
                                    <div class="pimg">
                                       <a href="#"><img src="' . get_theme_path() . 'img/photos/1.jpg" alt="" /></a>
                                    </div>
									');
?>
                        
						<?php 
$block2 = new Block('business-commodore-1-theme-features-line3-col2');
?>
                        <?php 
$block2->set_size('span4');
?>
                        <?php 
$block2->set_content('
                               <div class="pdetails">
                                       <div class="ptable">
                                          <!-- Product details with font awesome icon. Don\'t forget the span class "pull-right". -->
开发者ID:hscale,项目名称:builder-engine,代码行数:31,代码来源:projects.php

示例13: array

ClassLoader::addDirectories(File::directories(app_path() . '/plugins'));
/*
|--------------------------------------------------------------------------
| Theme functions
|--------------------------------------------------------------------------
|
| Built on top of Laravel is our custom theme functions, we need to make
| sure they're all loaded so there's no errors
|
*/
$functions = array('metadata', 'theme', 'page');
foreach ($functions as $function) {
    require app_path() . '/functions/' . $function . '.php';
}
View::addNamespace('theme', 'public/themes/' . Metadata::item('theme', 'default'));
View::addLocation(get_theme_path('layouts'));
/*
|--------------------------------------------------------------------------
| Application Error Logger
|--------------------------------------------------------------------------
|
| Here we will configure the error logger setup for the application which
| is built on top of the wonderful Monolog library. By default we will
| build a basic log file setup which creates a single file for logs.
|
*/
Log::useFiles(storage_path() . '/logs/laravel.log');
/*
|--------------------------------------------------------------------------
| Application Error Handler
|--------------------------------------------------------------------------
开发者ID:BinaryGeometry,项目名称:aviate,代码行数:31,代码来源:global.php

示例14: generate_content

    public function generate_content()
    {
        $title = $this->block->data('title');
        $text = $this->block->data('text');
        $button_text = $this->block->data('button_text');
        $button_link = $this->block->data('button_link');
        $icon = $this->block->data('icon');
        $icon_font_color = $this->block->data('icon_font_color');
        $icon_font_size = $this->block->data('icon_font_size');
        $icon_font_weight = $this->block->data('icon_font_weight');
        $icon_animation = $this->block->data('icon_animation');
        $icon_animation_state = $this->block->data('icon_animation_state');
        $icon_animation_type = $this->block->data('icon_animation_type');
        $icon_animation_duration = $this->block->data('icon_animation_duration');
        $icon_animation_event = $this->block->data('icon_animation_event');
        $icon_animation_delay = $this->block->data('icon_animation_delay');
        $title_font_color = $this->block->data('title_font_color');
        $title_font_weight = $this->block->data('title_font_weight');
        $title_font_size = $this->block->data('title_font_size');
        $title_animation = $this->block->data('title_animation');
        $title_animation_state = $this->block->data('title_animation_state');
        $title_animation_type = $this->block->data('title_animation_type');
        $title_animation_duration = $this->block->data('title_animation_duration');
        $title_animation_event = $this->block->data('title_animation_event');
        $title_animation_delay = $this->block->data('title_animation_delay');
        $subtitle_font_color = $this->block->data('subtitle_font_color');
        $subtitle_font_weight = $this->block->data('subtitle_font_weight');
        $subtitle_font_size = $this->block->data('subtitle_font_size');
        $subtitle_animation = $this->block->data('subtitle_animation');
        $subtitle_animation_state = $this->block->data('subtitle_animation_state');
        $subtitle_animation_type = $this->block->data('subtitle_animation_type');
        $subtitle_animation_duration = $this->block->data('subtitle_animation_duration');
        $subtitle_animation_event = $this->block->data('subtitle_animation_event');
        $subtitle_animation_delay = $this->block->data('subtitle_animation_delay');
        $button_animation_type = $this->block->data('button_animation_type');
        $button_animation_duration = $this->block->data('button_animation_duration');
        $button_animation_event = $this->block->data('button_animation_event');
        $button_animation_delay = $this->block->data('button_animation_delay');
        $background_image = $this->block->data('background_image');
        $settings[0][0] = 'icon' . $this->block->get_id();
        $settings[0][1] = $icon_animation_event;
        $settings[0][2] = $icon_animation_duration . ' ' . $icon_animation_delay . ' ' . $icon_animation_type;
        $settings[1][0] = 'title' . $this->block->get_id();
        $settings[1][1] = $title_animation_event;
        $settings[1][2] = $title_animation_duration . ' ' . $title_animation_delay . ' ' . $title_animation_type;
        $settings[2][0] = 'subtitle' . $this->block->get_id();
        $settings[2][1] = $subtitle_animation_event;
        $settings[2][2] = $subtitle_animation_duration . ' ' . $subtitle_animation_delay . ' ' . $subtitle_animation_type;
        $settings[3][0] = 'button' . $this->block->get_id();
        $settings[3][1] = $button_animation_event;
        $settings[3][2] = $button_animation_duration . ' ' . $button_animation_delay . ' ' . $button_animation_type;
        add_action("be_foot", generate_animation_events($settings));
        if ($background_image == '') {
            $background_image = get_theme_path() . 'images/action-bg.jpg';
        }
        if ($title == '') {
            $title = 'CHECK OUT OUR CMS PLATFORM!';
        }
        if ($text == '') {
            $text = 'BuilderEngine CMS Platform Version 3 is Open Source software and is under the MIT License agreement.';
        }
        if ($button_text == '') {
            $button_text = 'Download Here';
        }
        if ($button_link == '') {
            $button_link = 'http://builderengine.org/page-cms-download.html';
        }
        if ($icon == '') {
            $icon = 'fa-check';
        }
        $icon_style = 'style="
                    color: ' . $icon_font_color . ' !important;
                    font-size: ' . $icon_font_size . ' !important;
                "';
        $title_style = 'style="
                    color: ' . $title_font_color . ' !important;
                    font-weight: ' . $title_font_weight . ' !important;
                    font-size: ' . $title_font_size . ' !important;
                "';
        $subtitle_style = 'style="
                    color: ' . $subtitle_font_color . ' !important;
                    font-weight: ' . $subtitle_font_weight . ' !important;
                    font-size: ' . $subtitle_font_size . ' !important;
                "';
        $output = '
			<link href="' . base_url('blocks/action_bar/style.css') . '" rel="stylesheet">
			<link href="' . base_url('builderengine/public/animations/css/animate.min.css') . '" rel="stylesheet" />
			<div id="action-box" class="blockcontent-action has-bg custom-content" data-scrollview="true" style="padding-left:15px;padding-right:15px;">
	            <div class="content-bg">
	                
	            </div>
	            <div data-animation="true" data-animation-type="fadeInRight">
	                <div class="row action-box" id="action_box">
	                    <!-- Column & Block -->
	                    <div class="col-md-9 col-sm-9">
	                        <div class="icon-large text-theme" id="icon' . $this->block->get_id() . '">
	                            <i ' . $icon_style . ' class="fa ' . $icon . '"></i>
	                        </div> 
	                        <h3 id="title' . $this->block->get_id() . '" ' . $title_style . '>' . $title . '</h3>
	                        <p id="subtitle' . $this->block->get_id() . '" ' . $subtitle_style . '>
//.........这里部分代码省略.........
开发者ID:hyrmedia,项目名称:builderengine,代码行数:101,代码来源:action_bar.php

示例15: backend

 function backend($string, $data = array())
 {
     global $active_show;
     $data['BuilderEngine'] = $active_show->controller->get_builderengine();
     if (isset($active_show->breadcrumb[0])) {
         $data['breadcrumb'] = $active_show->breadcrumb;
     } else {
         $uri = $active_show->controller->uri->segment(2);
         $name = explode("_", $uri);
         foreach ($name as &$segment) {
             $segment[0] = strtoupper($segment[0]);
         }
         $name = implode(" ", $name);
         $data['breadcrumb'][0]['name'] = $name;
         $data['breadcrumb'][0]['url'] = "";
         $uri = $active_show->controller->uri->segment(3);
         $name = explode("_", $uri);
         foreach ($name as &$segment) {
             $segment[0] = strtoupper($segment[0]);
         }
         $name = implode(" ", $name);
         $data['breadcrumb'][1]['name'] = $name;
         $data['breadcrumb'][1]['url'] = "";
     }
     $data['user'] = $active_show->controller->get_user();
     $active_show->controller->load->view("../.." . get_theme_path() . $string . ".php", $data);
 }
开发者ID:hscale,项目名称:builder-engine,代码行数:27,代码来源:show.php


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