Skip to content

Commit

Permalink
Add Position Sets
Browse files Browse the repository at this point in the history
增加看板娘位置的设置功能
  • Loading branch information
Dreamer-Paul committed Jul 15, 2018
1 parent 81bae65 commit baf40e2
Showing 1 changed file with 27 additions and 17 deletions.
44 changes: 27 additions & 17 deletions Plugin.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,16 @@
*
* @package Pio
* @author Dreamer-Paul
* @version 1.2
* @version 1.3
* @link https://paugram.com
*/

class Pio_Plugin implements Typecho_Plugin_Interface{

/* 激活插件方法 */
public static function activate(){
Typecho_Plugin::factory('Widget_Archive')->header = array('Pio_Plugin', 'header');
Typecho_Plugin::factory('Widget_Archive')->footer = array('Pio_Plugin', 'footer');
Typecho_Plugin::factory('Widget_Archive') -> header = array('Pio_Plugin', 'header');
Typecho_Plugin::factory('Widget_Archive') -> footer = array('Pio_Plugin', 'footer');
}

/* 禁用插件方法 */
Expand All @@ -39,7 +39,7 @@ function paul_update($name, $version){

echo "</div>";
}
paul_update("Pio", "1.2");
paul_update("Pio", "1.3");

// 读取模型文件夹
$models = array();
Expand All @@ -52,30 +52,40 @@ function paul_update($name, $version){

// 自定义模型选择
$choose_models = new Typecho_Widget_Helper_Form_Element_Select('choose_models', $models, 'pio', _t('选择模型'), _t('选择插件 Models 目录下的模型,每个模型为一个文件夹,并确定配置文件名为 <a>model.json</a>'));
$form->addInput($choose_models);
$form -> addInput($choose_models);

// 自定义定位
$position = new Typecho_Widget_Helper_Form_Element_Radio('position',
array(
'left' => _t('靠左'),
'right' => _t('靠右'),
),
'left', _t('自定义位置'), _t('自定义看板娘所在的位置'));
$form -> addInput($position);

// 自定义宽高
$custom_width = new Typecho_Widget_Helper_Form_Element_Text('custom_width', NULL, NULL, _t('自定义宽度'), _t('在这里填入自定义宽度,部分模型需要修改'));
$form->addInput($custom_width);
$form -> addInput($custom_width);

$custom_height = new Typecho_Widget_Helper_Form_Element_Text('custom_height', NULL, NULL, _t('自定义高度'), _t('在这里填入自定义高度,部分模型需要修改'));
$form->addInput($custom_height);
$form -> addInput($custom_height);

// 自定义模型
$custom_model = new Typecho_Widget_Helper_Form_Element_Text('custom_model', NULL, NULL, _t('自定义配置文件地址'), _t('在这里填入一个模型 JSON 配置文件地址,可供使用外链模型,不填则使用插件目录下的模型'));
$form->addInput($custom_model);
$form -> addInput($custom_model);
}

/* 个人用户的配置方法 */
public static function personalConfig(Typecho_Widget_Helper_Form $form){}

/* 插件实现方法 */
public static function header(){
echo "<style>#pio{ left: 0; bottom: 0; z-index: 520; position: fixed; pointer-events: none; } @media screen and (max-width: 768px){ #pio{ width: 8em; } }</style>";
$pos = Typecho_Widget::widget('Widget_Options') -> Plugin('Pio') -> position;
echo "<style>#pio{ $pos: 0; bottom: 0; z-index: 520; position: fixed; pointer-events: none; } @media screen and (max-width: 768px){ #pio{ width: 8em; } }</style>";
}
public static function footer(){
$height = Typecho_Widget::widget('Widget_Options')->Plugin('Pio')->custom_height;
$width = Typecho_Widget::widget('Widget_Options')->Plugin('Pio')->custom_width;
$height = Typecho_Widget::widget('Widget_Options') -> Plugin('Pio') -> custom_height;
$width = Typecho_Widget::widget('Widget_Options') -> Plugin('Pio') -> custom_width;

if($height && $width){
echo "<canvas id='pio' width='".$width."' height='".$height."'></canvas>";
Expand All @@ -90,16 +100,16 @@ public static function footer(){
echo "<canvas id='pio' width='280' height='250'></canvas>";
}

echo "<script src='" . Helper::options()->pluginUrl . "/Pio/l2d.js'></script>" . "\n";
echo "<script src='" . Helper::options() -> pluginUrl . "/Pio/l2d.js'></script>" . "\n";

if(Typecho_Widget::widget('Widget_Options')->Plugin('Pio')->custom_model){
echo "<script>loadlive2d('pio', '" . Typecho_Widget::widget('Widget_Options')->Plugin('Pio')->custom_model . "');</script>". "\n";
if(Typecho_Widget::widget('Widget_Options') -> Plugin('Pio') -> custom_model){
echo "<script>loadlive2d('pio', '" . Typecho_Widget::widget('Widget_Options') -> Plugin('Pio') -> custom_model . "');</script>". "\n";
}
else if(Typecho_Widget::widget('Widget_Options')->Plugin('Pio')->choose_models){
echo "<script>loadlive2d('pio', '" . Helper::options()->pluginUrl . "/Pio/models/" . Typecho_Widget::widget('Widget_Options')->Plugin('Pio')->choose_models . "/model.json');</script>". "\n";
else if(Typecho_Widget::widget('Widget_Options') -> Plugin('Pio') -> choose_models){
echo "<script>loadlive2d('pio', '" . Helper::options() -> pluginUrl . "/Pio/models/" . Typecho_Widget::widget('Widget_Options') -> Plugin('Pio') -> choose_models . "/model.json');</script>". "\n";
}
else{
echo "<script>loadlive2d('pio', '" . Helper::options()->pluginUrl . "/Pio/models/pio/model.json');</script>". "\n";
echo "<script>loadlive2d('pio', '" . Helper::options() -> pluginUrl . "/Pio/models/pio/model.json');</script>". "\n";
}
}
}

0 comments on commit baf40e2

Please sign in to comment.