publicCDNSelcet){
case 0:
@define('PUBLIC_CDN',serialize(Handsome_Config::$BOOT_CDN));
break;
case 1:
@define('PUBLIC_CDN',serialize(Handsome_Config::$BAIDU_CDN));
break;
case 2:
@define('PUBLIC_CDN',serialize(Handsome_Config::$SINA_CDN));
break;
case 3:
@define('PUBLIC_CDN',serialize(Handsome_Config::$QINIU_CDN));
break;
case 4:
@define('PUBLIC_CDN',serialize(Handsome_Config::$JSDELIVR_CDN));
break;
case 5:
@define('PUBLIC_CDN',serialize(Handsome_Config::$CAT_CDN));
break;
default:
@define('PUBLIC_CDN',serialize(Handsome_Config::$SINA_CDN));
break;
}
}
}
/**
* 随机选取背景颜色
* @return mixed
*/
public static function getBackgroundColor(){
$colors = array(
array('#673AB7', '#512DA8'),
array('#20af42', '#1a9c39'),
array('#336666', '#2d4e4e'),
array('#2e3344', '#232735')
);
$randomKey = array_rand($colors, 1);
$randomColor = $colors[$randomKey];
return $randomColor;
}
/**
* 输出用户欢迎信息
* @return string
*/
public static function useIntro(){
self::$version = self::returnHandsomeVersion();
$version = (string)self::$version;
$randomColor = self::getBackgroundColor();
Handsome::initCdnSetting();
$PUBLIC_CDN_ARRAY = unserialize(PUBLIC_CDN);
$db = Typecho_Db::get();
$backupInfo = "";
if ($db->fetchRow($db->select()->from ('table.options')->where ('name = ?', 'theme:HandsomePro-X-Backup'))){
$backupInfo = '
数据库存在主题数据备份
';
}else{
$backupInfo = '没有主题数据备份
';
}
return <<
EOF;
}
/**
* 检查更新逻辑
* @return string
*/
public static function checkupdatejs(){
//self::$version = self::returnHandsomeVersion();
$current_version = self::$version;
//echo $current_version;
Handsome::initCdnSetting();
$PUBLIC_CDN_ARRAY = unserialize(PUBLIC_CDN);
$options = mget();
$blog_url = $options->rootUrl;
return <<
EOF;
}
/**
* 返回handsome主题的信息(版本号和介绍),以便进行检查和显示
* @return mixed
*/
public static function returnHandsomeVersion(){
$version = "";
$themes = null;
Typecho_Widget::widget('Widget_Themes_List')->to($themes);
while($themes->next()){
if ($themes->name == 'handsome'){
$version = $themes->version;
break;
}
}
if (trim($version) == ""){
$version = "5.0.0";
}
return $version;
}
/**
* 输出到后台外观设置的css
* @return string
*/
public static function styleoutput(){
$randomColor = self::getBackgroundColor();
//$randomColor[0] = "#fff";
return <<
/*后台外观全局控制*/
.mdui-panel-item-sub-header{
color: #999;
margin-left: 25px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.typecho-option span{
display: block;
}
.description {
margin: .5em 0 0;
color: #999;
font-size: .92857em;
}
.description:hover{
color:#333;
transition: 0.3s;
}
.checking{
margin-top: 10px;
}
#update_notification {
margin-top: 10px;
}
button.btn.primary {
display: none;
}
.mdui-btn[class*=mdui-color-]:hover, .mdui-fab[class*=mdui-color-]:hover {
opacity: .87;
background: #00BCD4;
}
label.settings-subtitle {
color: #999;
font-size: 10px;
font-weight: normal;
}
.settingsbutton{
margin-bottom:10px;
display:block
}
.settingsbutton a{
margin-right: 10px;
}
@media screen and (min-device-width: 1024px) {
::-webkit-scrollbar-track {
background-color: rgba(255,255,255,0);
}
::-webkit-scrollbar {
width: 6px;
background-color: rgba(255,255,255,0);
}
::-webkit-scrollbar-thumb {
border-radius: 3px;
background-color: rgba(193,193,193,1);
}
}
.row {
margin: 0px;
}
code, pre, .mono {
background: #e8e8e8;
}
#use-intro {
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px;
padding: 8px;
padding-left: 20px;
margin-bottom: 40px;
}
.message{
background-color:{$randomColor[0]} !important;
color:#fff;
}
.success{
background-color:{$randomColor[0]};
color:#fff;
}
#typecho-nav-list{display:none;}
.typecho-head-nav {
padding: 0 10px;
background: {$randomColor[0]};
}
.typecho-head-nav .operate a{
border: none;
padding-top: 0px;
padding-bottom: 0px;
color: rgba(255,255,255,.6);
}
.typecho-head-nav .operate a:hover {
background-color: rgba(0, 0, 0, 0.05);
color: #fff;
}
ul.typecho-option-tabs.fix-tabs.clearfix {
background: {$randomColor[1]};
}
.col-mb-12 {
padding: 0px!important;
}
.typecho-page-title {
margin:0;
height: 70px;
background: {$randomColor[0]};
background-size: cover;
padding: 30px;
}
.typecho-page-title h2{
margin: 0px;
font-size: 2.28571em;
color: #fff;
}
.typecho-option-tabs{
padding: 0px;
background: #fff;
}
.typecho-option-tabs a:hover{
background-color: rgba(0, 0, 0, 0.05);
color: rgba(255,255,255,.8);
}
.typecho-option-tabs a{
border: none;
height: auto;
color: rgba(255,255,255,.6);
padding: 15px;
}
li.current {
background-color: #FFF;
height: 4px;
padding: 0 !important;
bottom: 0px;
}
.typecho-option-tabs li.current a, .typecho-option-tabs li.active a{
background:none;
}
.container{
margin:0;
padding:0;
}
.body.container {
min-width: 100% !important;
padding: 0px;
}
.typecho-option-tabs{
margin:0;
}
.typecho-option-submit button {
float: right;
background: #00BCD4;
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);
color: #FFF;
}
.typecho-option-tabs li{
margin-left:20px;
}
.typecho-option{
border-radius: 3px;
background: #fff;
padding: 12px 16px;
}
.col-mb-12{
padding-left: 0px!important;
}
.typecho-option-submit{
background:none!important;
}
.typecho-option {
float: left;
}
.typecho-option span {
margin-right: 0;
}
.typecho-option label.typecho-label {
font-weight: 500;
margin-bottom: 10px;
margin-top: 10px;
font-size: 16px;
padding-bottom: 5px;
border-bottom: 1px solid rgba(0,0,0,0.2);
}
.typecho-page-main .typecho-option input.text {
width: 100%;
}
input[type=text], textarea {
border: none;
border-bottom: 1px solid rgba(0,0,0,.60);
outline: none;
border-radius: 0;
}
.typecho-option-submit {
position: fixed;
right: 32px;
bottom: 32px;
}
.typecho-foot {
padding: 16px 40px;
color: rgb(158, 158, 158);
background-color: rgb(66, 66, 66);
margin-top: 80px;
}
.typecho-option .description{
font-weight: normal;
}
@media screen and (max-width: 480px){
.typecho-option {
width: 94% !important;
margin-bottom: 20px !important;
}
}
/*大标题样式控制*/
label.typecho-label.settings-title{
font-size: 30px;
font-weight: bold;
border: none;
}
.settings-title:hover {
text-decoration: underline;
}
.appearanceTitle{
float: inherit;
margin-bottom: 0px;
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px 1%;
padding: 8px 2%;
width: 94%;
display: table;
background-color: #f6f8f8;
}
/*组件大小为94%*/
.length-94{
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px 1%;
padding: 8px 2%;
width: 94%;
margin-bottom:20px;
}
/*组件大小为60%*/
.length-60{
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px 1%;
padding: 8px 2%;
width: 60%;
}
/*组件大小为44%*/
.length-44{
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px 1%;
padding: 8px 2%;
width: 44%;
margin-bottom: 30px;
}
/*组件大小为27%*/
.length-27{
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px 1%;
padding: 8px 2%;
width: 27.333%;
margin-bottom: 40px;
}
/*组件大小为29%*/
.length-29 {
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px 1%;
padding: 8px 2%;
width: 29%;
}
/*组件大小为59%*/
.length-59{
box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);
background-color: #fff;
margin: 8px 1%;
padding: 8px 2%;
width: 59%;
margin-bottom: 30px;
}
#typecho-option-item-BGtype-2 {
margin-bottom: 0px;
}
#typecho-option-item-bgcolor-4 {
margin-bottom: 20px;
}
#typecho-option-item-BlogJob-10 {
margin-bottom: 55px;
}
#typecho-option-item-titleintro-8{
margin-bottom: 50px;
}
EOF;
}
/**
* 输出到后台编辑器的js和css
* @return string
*/
public static function outputEditorJS(){
$options = mget();
if (!defined('THEME_URL')){//主题目录的绝对地址
define("THEME_URL", rtrim(preg_replace('/^'.preg_quote($options->siteUrl, '/').'/', $options->rootUrl.'/', $options->themeUrl, 1),'/').'/');
}
$themeUrl = THEME_URL;
$url = $themeUrl.'libs/Get.php';
$versionPrefix = Handsome::$version.Handsome::$versionTag;
Handsome::$times ++;
self::initCdnSetting();
$PUBLIC_CDN_ARRAY = unserialize(PUBLIC_CDN);
return "
";
}
public static function returnCheckHtml(){
return <<