Browse Source

first commit

master
qiaodan 1 year ago
commit
caa983410d
  1. 0
      .htaccess
  2. 8
      .idea/.gitignore
  3. 8
      .idea/gqzt.iml
  4. 8
      .idea/modules.xml
  5. 22
      .idea/php.xml
  6. 0
      README.md
  7. 8
      admin.php
  8. BIN
      api/.DS_Store
  9. BIN
      api/ckplayer/.DS_Store
  10. 1391
      api/ckplayer/ckplayer.js
  11. BIN
      api/ckplayer/ckplayer.swf
  12. 280
      api/ckplayer/ckplayer.xml
  13. 46
      api/ckplayer/config/code.html
  14. 68
      api/ckplayer/config/config.js
  15. 109
      api/ckplayer/config/offlights.js
  16. 61
      api/ckplayer/config/share.xml
  17. 73
      api/ckplayer/language.xml
  18. 121
      api/ckplayer/related.xml
  19. BIN
      api/ckplayer/share/feixin.png
  20. BIN
      api/ckplayer/share/google.png
  21. BIN
      api/ckplayer/share/kaixin001.png
  22. BIN
      api/ckplayer/share/msn.png
  23. BIN
      api/ckplayer/share/qq.png
  24. BIN
      api/ckplayer/share/qq2.png
  25. BIN
      api/ckplayer/share/qzone.png
  26. BIN
      api/ckplayer/share/rr.png
  27. BIN
      api/ckplayer/share/sina.png
  28. BIN
      api/ckplayer/share/sohu.png
  29. BIN
      api/ckplayer/share/tianya.png
  30. BIN
      api/ckplayer/style.swf
  31. BIN
      api/emotions/aoman.gif
  32. BIN
      api/emotions/baiyan.gif
  33. BIN
      api/emotions/bishi.gif
  34. BIN
      api/emotions/bizui.gif
  35. BIN
      api/emotions/cahan.gif
  36. BIN
      api/emotions/caidao.gif
  37. BIN
      api/emotions/chajin.gif
  38. BIN
      api/emotions/cheer.gif
  39. BIN
      api/emotions/chong.gif
  40. BIN
      api/emotions/ciya.gif
  41. BIN
      api/emotions/da.gif
  42. BIN
      api/emotions/dabian.gif
  43. BIN
      api/emotions/dabing.gif
  44. BIN
      api/emotions/dajiao.gif
  45. BIN
      api/emotions/daku.gif
  46. BIN
      api/emotions/dangao.gif
  47. BIN
      api/emotions/danu.gif
  48. BIN
      api/emotions/dao.gif
  49. BIN
      api/emotions/deyi.gif
  50. BIN
      api/emotions/diaoxie.gif
  51. BIN
      api/emotions/e.gif
  52. BIN
      api/emotions/fadai.gif
  53. BIN
      api/emotions/fadou.gif
  54. BIN
      api/emotions/fan.gif
  55. BIN
      api/emotions/fanu.gif
  56. BIN
      api/emotions/feiwen.gif
  57. BIN
      api/emotions/fendou.gif
  58. BIN
      api/emotions/gangga.gif
  59. BIN
      api/emotions/geili.gif
  60. BIN
      api/emotions/gouyin.gif
  61. BIN
      api/emotions/guzhang.gif
  62. BIN
      api/emotions/haha.gif
  63. BIN
      api/emotions/haixiu.gif
  64. BIN
      api/emotions/haqian.gif
  65. BIN
      api/emotions/hua.gif
  66. BIN
      api/emotions/huaixiao.gif
  67. BIN
      api/emotions/hufen.gif
  68. BIN
      api/emotions/huishou.gif
  69. BIN
      api/emotions/huitou.gif
  70. BIN
      api/emotions/jidong.gif
  71. BIN
      api/emotions/jingkong.gif
  72. BIN
      api/emotions/jingya.gif
  73. BIN
      api/emotions/kafei.gif
  74. BIN
      api/emotions/keai.gif
  75. BIN
      api/emotions/kelian.gif
  76. BIN
      api/emotions/ketou.gif
  77. BIN
      api/emotions/kiss.gif
  78. BIN
      api/emotions/ku.gif
  79. BIN
      api/emotions/kuaikule.gif
  80. BIN
      api/emotions/kulou.gif
  81. BIN
      api/emotions/kun.gif
  82. BIN
      api/emotions/lanqiu.gif
  83. BIN
      api/emotions/lenghan.gif
  84. BIN
      api/emotions/liuhan.gif
  85. BIN
      api/emotions/liulei.gif
  86. BIN
      api/emotions/liwu.gif
  87. BIN
      api/emotions/love.gif
  88. BIN
      api/emotions/ma.gif
  89. BIN
      api/emotions/meng.gif
  90. BIN
      api/emotions/nanguo.gif
  91. BIN
      api/emotions/no.gif
  92. BIN
      api/emotions/ok.gif
  93. BIN
      api/emotions/peifu.gif
  94. BIN
      api/emotions/pijiu.gif
  95. BIN
      api/emotions/pingpang.gif
  96. BIN
      api/emotions/pizui.gif
  97. BIN
      api/emotions/qiang.gif
  98. BIN
      api/emotions/qinqin.gif
  99. BIN
      api/emotions/qioudale.gif
  100. BIN
      api/emotions/qiu.gif

0
.htaccess

8
.idea/.gitignore

@ -0,0 +1,8 @@
# 默认忽略的文件
/shelf/
/workspace.xml
# 基于编辑器的 HTTP 客户端请求
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

8
.idea/gqzt.iml

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

8
.idea/modules.xml

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/gqzt.iml" filepath="$PROJECT_DIR$/.idea/gqzt.iml" />
</modules>
</component>
</project>

22
.idea/php.xml

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MessDetectorOptionsConfiguration">
<option name="transferred" value="true" />
</component>
<component name="PHPCSFixerOptionsConfiguration">
<option name="transferred" value="true" />
</component>
<component name="PHPCodeSnifferOptionsConfiguration">
<option name="highlightLevel" value="WARNING" />
<option name="transferred" value="true" />
</component>
<component name="PhpProjectSharedConfiguration" php_language_level="7.0">
<option name="suggestChangeDefaultLanguageLevel" value="false" />
</component>
<component name="PhpStanOptionsConfiguration">
<option name="transferred" value="true" />
</component>
<component name="PsalmOptionsConfiguration">
<option name="transferred" value="true" />
</component>
</project>

0
README.md

8
admin.php

@ -0,0 +1,8 @@
<?php
define('IS_ADMIN', TRUE); // 项目标识
define('SELF', pathinfo(__FILE__, PATHINFO_BASENAME)); // 该文件的名称
$_GET['d'] = 'admin'; // 将项目标识作为directory
require('index.php'); // 引入主文件

BIN
api/.DS_Store

BIN
api/ckplayer/.DS_Store

1391
api/ckplayer/ckplayer.js
File diff suppressed because it is too large
View File

BIN
api/ckplayer/ckplayer.swf

280
api/ckplayer/ckplayer.xml

@ -0,0 +1,280 @@
<?xml version="1.0" encoding="utf-8"?>
<ckplayer>
<style>
<cpath></cpath>
<!--
播放器风格压缩包文件的路径,默认的是style.swf
如果调用不出来可以试着设置成绝对路径试试
如果不知道路径并且使用的是默认配置,可以直接留空,播放器会自动寻找
-->
<language></language>
<!--
播放器所使用的语言配置文件,需要和播放器在同目录下,默认是language.xml
-->
<flashvars>{b->1}{p->1}</flashvars>
<!--
这里是用来做为对flashvars值的补充,除了c和x二个参数以外的设置都可以在这里进行配置
1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 4 4 4 4
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
-->
<setup>1,1,1,1,1,2,0,1,2,0,0,1,200,0,2,1,0,1,1,1,0,10,3,0,1,2,3000,0,0,0,0,1,1,1,1,1,1,250,0,90,0,0,0</setup>
<!--
这是配置文件里比较重要的一个参数,共有N个功能控制参数,并且以后会继续的增加,各控制参数以英文逗号(,)隔开。下面列出各参数的说明:
1、鼠标经过按钮是否使用手型,0普通鼠标,1手型鼠标,2是只有按钮手型,3是控制栏手型
2、是否支持单击暂停,0不支持,1是支持
3、是否支持双击全屏,0不支持,1是支持
4、在播放前置广告时是否同时加载视频,0不加载,1加载
5、广告显示的参考对象,0是参考视频区域,1是参考播放器区域
6、广告大小的调整方式,只针对swf和图片有效,视频是自动缩放的
=0是自动调整大小,意思是说大的话就变小,小的话就变大
=1是大的化变小,小的话不变
=2是什么也不变,就这么大
=3是跟参考对像(第5个控制)参数设置的一样宽高
7、前置广告播放顺序,0是顺序播放,1是随机播放,>1则随机取所有广告中的(N-1)个进行播放
8、对于视频广告是否采用修正,0是不使用,1是使用,如果是1,则用户在网速慢的情况下会按设定的倒计时进行播放广告,计时结束则放正片(比较人性化),设置成0的话,则强制播放完广告才能播放正片
9、是否开启滚动文字广告,0是不开启,1是开启且不使用关闭按钮,2是开启并且使用关闭按钮,开启后将在加载视频的时候加载滚动文字广告
10、视频的调整方式
=0是自动调整大小,意思是说大的话就变小,小的话就变大,同时保持长宽比例不变
=1是大的化变小,小的话不变
=2是什么也不变,就这么大
=3是跟参考对像(pm_video的设置)参数设置的一样宽高
11、是否在多视频时分段加载,0不是,1是
12、缩放视频时是否进行平滑处理,0不是,1是
13、视频缓冲时间,单位:毫秒,建议不超过300
14、初始图片调整方式(
=0是自动调整大小,意思是说大的话就变小,小的话就变大,同时保持长宽比例不变
=1是大的化变小,小的话不变
=2是什么也不变,就这么大
=3是跟pm_video参数设置的一样宽高
15、暂停广告调整方式(
=0是自动调整大小,意思是说大的话就变小,小的话就变大,同时保持长宽比例不变
=1是大的化变小,小的话不变
=2是什么也不变,就这么大
=3是跟pm_video参数设置的一样宽
16、暂停广告是否使用关闭广告设置,0不使用,1使用
17、缓冲时是否播放广告,0是不显示,1是显示并同时隐藏掉缓冲图标和进度,2是显示并不隐藏缓冲图标
18、是否支持键盘空格键控制播放和暂停0不支持,1支持
19、是否支持键盘左右方向键控制快进快退0不支持,1支持
20、是否支持键盘上下方向键控制音量0不支持,1支持
21、播放器返回js交互函数的等级,0-2,等级越高,返回的参数越多
0是返回少量常用交互
1返回播放器在播放的时候的参数,不返回广告之类的参数
2返回全部参数
3返回全部参数,并且在参数前加上"播放器ID->",用于多播放器的监听
22、快进和快退的秒数
23、界面上图片元素加载失败重新加载次数
24、开启加载皮肤压缩文件包的加载进度提示
25、使用隐藏控制栏时显示简单进度条的功能,0是不使用,1是使用,2是只在普通状态下使用
26、控制栏隐藏设置(0不隐藏,1全屏时隐藏,2都隐藏
27、控制栏隐藏延时时间,即在鼠标离开控制栏后多少毫秒后隐藏控制栏
28、左右滚动时是否采用无缝,默认0采用,1是不采用
29、0是正常状态,1是控制栏默认隐藏,播放状态下鼠标经过播放器显示控制栏,2是一直隐藏控制栏
30、在播放rtmp视频时暂停后点击播放是否采用重新链接的方式,这里一共分0-3四个等级
31、当采用网址形式(flashvars里s=1/2时)读取视频地址时是采用默认0=get方法,1=post方式
32、是否启用播放按钮和暂停按钮
33、是否启用中间暂停按钮
34、是否启用静音按钮
35、是否启用全屏按钮
36、是否启用进度调节栏,0不启用,1是启用,2是只能前进(向右拖动),3是只能后退,4是只能前进但能回到第一次拖动时的位置,5是看过的地方可以随意拖动,
37、是否启用调节音量
38、计算时间的间隔,毫秒
39、前置logo至少显示的时间,单位:毫秒
40、前置视频广告的默认音量
41、当s=3/4时加载插件是否从压缩包里加载,0不是,1是
42、加载风格是否采用加密方式传送,该功能普通用户不能使用
43、在s=1/2时,调用地址里的地址是否是相对地址(相对于调用文件),0不是,1是
-->
<pm_bg>0x000000,100,230,180</pm_bg>
<!--播放器整体的背景配置
1、整体背景颜色
2、背景透明度
3、播放器最小宽度
4、播放器最小高度
这里只是初始化时的设置,最终加载完播放器后显示的效果需要在style.swf/style.xml里设置该参数
-->
<mylogo>logo.swf</mylogo>
<!--
视频加载前显示的logo文件,不使用设置成<mylogo>null</mylogo>
-->
<pm_mylogo>1,1,-100,-55</pm_mylogo>
<!--
视频加载前显示的logo文件(mylogo参数的)的位置
本软件所有的四个参数控制位置的方式全部都是统一的意思,如下
1、水平对齐方式,0是左,1是中,2是右
2、垂直对齐方式,0是上,1是中,2是下
3、水平偏移量,举例说明,如果第1个参数设置成0左对齐,第3个偏移量设置成10,就是离左边10个像素,第一个参数设置成2,偏移量如果设置的是正值就会移到播放器外面,只有设置成负值才行,设置成-1,按钮就会跑到播放器外面
4、垂直偏移量
-->
<logo>cklogo.png</logo>
<!--
默认右上角一直显示的logo,不使用设置成<logo>null</logo>
-->
<pm_logo>2,0,-100,20</pm_logo>
<!--
播放器右上角的logo的位置
1、水平对齐方式,0是左,1是中,2是右
2、垂直对齐方式,0是上,1是中,2是下
3、水平偏移量
4、垂直偏移量
以下是播放器自带的二个插件
-->
<control_rel>related.swf,related.xml,0</control_rel>
<!--
1、视频播放结束后显示相关精彩视频的插件文件(注意,视频结束动作设置成3时(即var flashvars={e:3})有效),
2、xml文件是调用精彩视频的示例文件,可以自定义文件类型(比如asp,php,jsp,.net只要输出的是xml格式就行),实际使用中一定要注意第二个参数的路径要正确
3、第三个参数是设置配置文件的编码,0是默认的utf-8,1是gbk2312
-->
<control_pv>Preview.swf,105,2000</control_pv>
<!--
视频预览插件
1、插件文件名称(该插件和上面的精彩视频的插件都是放在风格压缩包里的)
2、离进度栏的高(指的是插件的顶部离进度栏的位置)
3、延迟时间(该处设置鼠标经过进度栏停顿多少毫秒后才显示插件)
建议一定要设置延时时间,不然当鼠标在进度栏上划过的时候就会读取视频地址进行预览,很占资源
-->
<pm_repc></pm_repc>
<!--
视频地址替换符,该功能主要是用来做简单加密的功能,使用方法很简单,请注意,只针对f值是视频地址的时候有效,其它地方不能使用。具体的请查看http://www.ckplayer.com/manual.php?id=4#title_25
-->
<pm_spac>|</pm_spac>
<!--
视频地址间隔符,这里主要是播放多段视频时使用普通调用方式或网址调用方式时使用的。默认使用|,如果视频地址里本身存在|的话需要另外设置一个间隔符,注意,即使只有一个视频也需要设置。另外在使用rtmp协议播放视频的时候,如果视频存在多级目录的话,这里要改成其它的符号,因为rtmp协议的视频地址多级的话也需要用到|隔开流地址和实例地址
-->
<pm_fpac>file->f</pm_fpac>
<!--
该参数的功能是把自定义的flashvars里的变量替换成ckplayer里对应的变量,默认的参数的意思是把flashvars里的file值替换成f值,因为ckplayer里只认f值,多个替换之间用竖线隔开
-->
<pm_advtime>2,0,-110,10,0,300,0</pm_advtime>
<!--
前置广告倒计时文本位置,播放前置 广告时有个倒计时的显示文本框,这里是设置该文本框的位置和宽高,对齐方式的。一共7个参数,分别表示:
1、水平对齐方式,0是左对齐,1是中间对齐,2是右对齐
2、垂直对齐方式,0是上对齐,1是中间对齐,2是低部对齐
3、水平位置偏移量
4、垂直位置偏移量
5、文字对齐方式,0是左对齐,1是中间对齐,2是右对齐,3是默认对齐
6、文本框宽席
7、文本框高度
-->
<pm_advstatus>1,2,2,-200,-40</pm_advstatus>
<!--
前置广告静音按钮,静音按钮只在是视频广告时显示,当然也可以控制不显示
1、是否显示0不显示,1显示
2、水平对齐方式
3、垂直对齐方式
4、水平偏移量
5、垂直偏移量
-->
<pm_advjp>1,0,2,2,-100,-40</pm_advjp>
<!--
前置广告跳过广告按钮的位置
1、是否显示0不显示,1是显示
2、跳过按钮触发对象(值0/1,0是直接跳转,1是触发js:function ckadjump(){})
3、水平对齐方式
4、垂直对齐方式
5、水平偏移量
6、垂直偏移量
-->
<pm_padvc>2,0,-10,-10</pm_padvc>
<!--
暂停广告的关闭按钮的位置
1、水平对齐方式
2、垂直对齐方式
3、水平偏移量
4、垂直偏移量
-->
<pm_advms>2,2,-46,-56</pm_advms>
<!--
滚动广告关闭按钮位置
1、水平对齐方式
2、垂直对齐方式
3、水平偏移量
4、垂直偏移量
-->
<pm_zip>1,1,-20,-8,1,0,0</pm_zip>
<!--
加载皮肤压缩包时提示文字的位置
1、水平对齐方式,0是左对齐,1是中间对齐,2是右对齐
2、垂直对齐方式,0是上对齐,1是中间对齐,2是低部对齐
3、水平位置偏移量
4、垂直位置偏移量
5、文字对齐方式,0是左对齐,1是中间对齐,2是右对齐,3是默认对齐
6、文本框宽席
7、文本框高度
-->
<pm_advmarquee>1,2,50,-60,50,18,0,0x000000,50,0,20,1,30,2000</pm_advmarquee>
<!--
滚动广告的控制,要使用的话需要在setup里的第9个参数设置成1
这里分二种情况,前六个参数是定位控制,第7个参数是设置定位方式(0:相对定位,1:绝对定位)
第一种情况:第7个参数是0的时候,相对定位,就是播放器长宽变化的时候,控制栏也跟着变
1、默认1:中间对齐
2、上中下对齐(0是上,1是中,2是下)
3、离左边的距离
4、Y轴偏移量
5、离右边的距离
6、高度
7、定位方式
第二种情况:第7个参数是1的时候,绝对定位,就是播放器长宽变化的时候,控制栏不跟着变,这种方式一般使用在控制栏大小不变的时候
1、左中右对齐方式(0是左,1是中间,2是右)
2、上中下对齐(0是上,1是中,2是下)
3、x偏移量
4、y偏移量
5、宽度
6、高度
7、定位方式
以上是前7个参数的作用
8、是文字广告的背景色
9、置背景色的透明度
10、控制滚动方向,0是水平滚动(包括左右),1是上下滚动(包括向上和向下)
11、移动的单位时长,即移动单位像素所需要的时长,毫秒
12、移动的单位像素,正数同左/上,负数向右/下
13、是行高,这个在设置向上或向下滚动的时候有用处
14、控制向上或向下滚动时每次停止的时间
-->
<pm_glowfilter>0,0x01485d, 100, 6, 3, 10, 1, 0, 0</pm_glowfilter>
<!--滚动文字广告是否采用发光滤镜
1、是否使用发光滤镜,0是不采用,1是使用
2、(default = 0xFF0000) — 光晕颜色,采用十六进制格式 0xRRGGBB。 默认值为 0xFF0000
3、(default = 100) — 颜色的 Alpha 透明度值。 有效值为 0 到 100。 例如,25 设置透明度为 25%
4、(default = 6.0) — 水平模糊量。 有效值为 0 到 255(浮点)。 2 的乘方值(如 2、4、8、16 和 32)经过优化,呈现速度比其它值更快
5、(default = 6.0) — 垂直模糊量。 有效值为 0 到 255(浮点)。 2 的乘方值(如 2、4、8、16 和 32)经过优化,呈现速度比其它值更快
6、(default = 2) — 印记或跨页的强度。 该值越高,压印的颜色越深,而且发光与背景之间的对比度也越强。 有效值为 0 到 255
7、(default = 1) — 应用滤镜的次数
8、(default = 0) — 指定发光是否为内侧发光。 值 1 指定发光是内侧发光。 值 0 指定发光是外侧发光(对象外缘周围的发光)
9、(default = 0) — 指定对象是否具有挖空效果。 值为 1 将使对象的填充变为透明,并显示文档的背景颜色背景颜色。
-->
<advmarquee>{a href='http://www.ckplayer.com'}{font color='#FFFFFF' size='12'}这里可以放文字广告,为什么要在这里放呢,{/font}{/a}{a href='http://www.ckplayer.com'}{font color='#FFFFFF' size='12'}是因为如果你想在站外调用视频并且有文字广告的话,{/a}{br}就得在这里才能被加载,在js里是不能补加载的,{br}默认使用这里的广告,如果不想在这里使用可以清空这里的内容</advmarquee>
<!--
该处是滚动文字广告的内容,如果不想在这里设置,就把这里清空并且在页面中使用js的函数定义function ckmarqueeadv(){return '广告内容'}
-->
<mainfuntion></mainfuntion>
<!--
当flashvars里s=3/4时,调用的函数包名称,默认为空,调用时间轴上的函数setAppObj
-->
<flashplayer></flashplayer>
<!--
当flashvars里的s=3/4时,也可以把swf文件放在这里
-->
<calljs>ckplayer_status,ckadjump,playerstop,ckmarqueeadv</calljs>
<!--
跳过广告和播放结束时调用的js函数
-->
<myweb></myweb>
<!--
以下内容部份是和插件相关的配置,请注意,自定义插件以及其配置的命名方式要注意,不要和系统的相重复,不然就会替换掉系统的相关设置,删除相关插件的话也可以同时删除相关的配置
以下内容定义自定义插件的相关配置,这里也可以自定义任何自己的插件需要配置的内容,当然,如果你某个插件不使用的话,也可以删除相关的配置
-->
<cpt_lights>0</cpt_lights>
<!--
该处定义是否使用开关灯,和right.swf插件配合作用,使用开灯效果时调用页面的js函数function closelights(){};
-->
<cpt_share>/ckplayer/share.xml</cpt_share>
<!--
分享插件调用的配置文件地址
调用插件开始
-->
<cpt>right.swf,2,1,0,0,2,0</cpt><!--右边开关灯,调整,分享按钮的插件-->
<cpt>share.swf,1,1,-180,-100,3,0</cpt><!--分享插件-->
<cpt>adjustment.swf,1,1,-180,-100,3,0</cpt><!--调整大小和颜色的插件-->
</style>
</ckplayer>

46
api/ckplayer/config/code.html

@ -0,0 +1,46 @@
<div id="video_{name}" style="position:relative;z-index:998;width:{width};height:{height}px;">
<div id="{name}"></div>
</div>
{js_code}
<script type="text/javascript">
//
var flashvars={
c:0,
{params}
x:'ckstyle_finecms',
loaded: 'loadedHandler_{name}',
my_pic: '{thumb}',
my_url:encodeURIComponent(window.location.href),
my_title:encodeURIComponent(document.title)
};
var video=['{file}->video/mp4'];
var param={bgcolor:'#FFF',allowFullScreen:true,allowScriptAccess:'always',wmode:'transparent'};
CKobject.embed('{server_url}ckplayer.swf', '{name}', 'ckplayer_{name}', '{width}', '{height}', false, flashvars, video, param);
//开关灯
var box = new LightBox();
function closelights(){//关灯
box.Show();
CKobject._K_('video_{name}').style.width='{width}px';
CKobject._K_('video_{name}').style.height='{height}px';
CKobject.getObjectById('ckplayer_{name}').width='{width}';
CKobject.getObjectById('ckplayer_{name}').height='{height}';
}
function openlights(){//开灯
box.Close();
CKobject._K_('video_{name}').style.width='{width}px';
CKobject._K_('video_{name}').style.height='{height}px';
CKobject.getObjectById('ckplayer_{name}').width='{width}';
CKobject.getObjectById('ckplayer_{name}').height='{height}';
}
// 下一视频
function playerstop(){
var u = "{next_url}";
if (u) {
location.href=u;
}
}
//跳过广告
function ckadjump(){
alert('这里开发者可以定跳过广告的条件');
}
</script>

68
api/ckplayer/config/config.js

@ -0,0 +1,68 @@
function ckstyle_finecms() {
var ck = {
cpath: '',
language: '',
flashvars: '',
setup: '1,1,1,1,1,2,0,1,2,0,0,1,200,0,2,1,0,1,1,1,2,10,3,0,1,2,3000,0,0,0,0,1,1,1,1,1,1,250,0,90,0,0',
pm_bg: '0x000000,100,230,180',
mylogo: 'logo.swf',
pm_mylogo: '1,1,-100,-55',
logo: 'null',
pm_logo: '2,0,-100,20',
control_rel: 'related.swf,ckplayer/related.xml,0',
control_pv: 'Preview.swf,105,2000',
pm_repc: '',
pm_spac: '|',
pm_fpac: 'file->f',
pm_advtime: '2,0,-110,10,0,300,0',
pm_advstatus: '1,2,2,-200,-40',
pm_advjp: '1,1,2,2,-100,-40',
pm_padvc: '2,0,-10,-10',
pm_advms: '2,2,-46,-56',
pm_zip: '1,1,-20,-8,1,0,0',
pm_advmarquee: '1,2,50,-60,50,20,0,0x000000,50,0,20,1,30,2000',
pm_glowfilter:'1,0x01485d, 100, 6, 3, 10, 1, 0, 0',
advmarquee: escape('{text}'),
mainfuntion:'',
flashplayer:'',
calljs:'ckplayer_status,ckadjump,playerstop,ckmarqueeadv',
myweb: escape(''),
cpt_lights: '1',
cpt_share: '{api_url}&at=share',
cpt_list: ckcpt()
}
return ck;
}

109
api/ckplayer/config/offlights.js

@ -0,0 +1,109 @@
/*
该文件是从网上收集的方法用来做开关灯的相对于原来的程序做了一些改变兼容了IE10
*/
var Offlights = {
create: function() {
return function() {
this.initialize.apply(this, arguments)
}
}
}
var OverLay = Offlights.create();
OverLay.prototype = {
initialize: function(options) {
this.SetOptions(options);
this.browser = (function(ua){
var a=new Object();
var b = {
msie: /msie/.test(ua) && !/opera/.test(ua),
opera: /opera/.test(ua),
safari: /webkit/.test(ua) && !/chrome/.test(ua),
firefox: /firefox/.test(ua),
chrome: /chrome/.test(ua)
};
var vMark = "";
for (var i in b) {
if (b[i]) { vMark = "safari" == i ? "version" : i; break; }
}
b.version = vMark && RegExp("(?:" + vMark + ")[\\/: ]([\\d.]+)").test(ua) ? RegExp.$1 : "0";
b.ie = b.msie;
b.ie6 = b.msie && parseInt(b.version, 10) == 6;
b.ie7 = b.msie && parseInt(b.version, 10) == 7;
b.ie8 = b.msie && parseInt(b.version, 10) == 8;
a.B=vMark;
a.V=b.version;
return a;
})(window.navigator.userAgent.toLowerCase());
this.isIE = this.browser['B']=='msie' ? true : false;
this.isIE6 = (this.isIE && this.browser['V']==6)?true:false;
this._K_ = function(id) {return "string" == typeof id ? document.getElementById(id) : id};
this.Lay = this._K_(this.options.Lay) || document.body.insertBefore(document.createElement("div"), document.body.childNodes[0]);
this.Color = this.options.Color;
this.Opacity = parseInt(this.options.Opacity);
this.zIndex = parseInt(this.options.zIndex);
with(this.Lay.style) {
display = "none";
zIndex = this.zIndex;
left = top = 0;
position = "fixed";
width = height = "100%"
}
if (this.isIE6) {
this.Lay.style.position = "absolute";
this._resize = this.Bind(this,
function() {
this.Lay.style.width = Math.max(document.documentElement.scrollWidth, document.documentElement.clientWidth) + "px";
this.Lay.style.height = Math.max(document.documentElement.scrollHeight, document.documentElement.clientHeight) + "px"
});
this.Lay.innerHTML = ''
}
},
Bind:function(object, fun) {
return function() {
return fun.apply(object, arguments)
}
},
Extend :function(destination, source) {
for (var property in source) {
destination[property] = source[property]
}
},
SetOptions: function(options) {
this.options = {
Lay: null,
Color: "#000",
Opacity: 100,
zIndex: 50
};
this.Extend(this.options, options || {})
},
Show: function() {
if (this.isIE6) {
this._resize();
window.attachEvent("onresize", this._resize)
}
with(this.Lay.style) {
this.isIE ? filter = "alpha(opacity:" + this.Opacity + ")": opacity = this.Opacity / 100;
backgroundColor = this.Color;
display = "block"
}
},
Close: function() {
this.Lay.style.display = "none";
if (this.isIE6) {
window.detachEvent("onresize", this._resize)
}
}
};
var LightBox = Offlights.create();
LightBox.prototype = {
initialize: function(options) {
this.OverLay = new OverLay(options);
},
Show: function(options) {
this.OverLay.Show();
},
Close: function() {
this.OverLay.Close();
}
};

61
api/ckplayer/config/share.xml

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<ckplayer>
<share_html>
{embed src="{server_url}ckplayer.swf" flashvars="[$share]" quality="high" width="480" height="400" align="middle" allowScriptAccess="always" allowFullscreen="true" type="application/x-shockwave-flash"}{/embed}
</share_html>
<share_flash>
{server_url}ckplayer.swf?[$share]
</share_flash>
<share_flashvars>
f,my_url,my_pic,a
</share_flashvars>
<share_path>{server_url}share/</share_path><!--分享图片的文件夹地址-->
<share_replace>
</share_replace>
<share_permit>0</share_permit><!--是否有视听许可证,默认0没有,1是有-->
<share_uuid>
c25cf02c-1705-412d-bd4b-77a10b380f08
</share_uuid>
<share_button>
<share>
<id>qqmb</id>
<img>qq.png</img>
<coordinate>20,50</coordinate>
</share>
<share>
<id>sinaminiblog</id>
<img>sina.png</img>
<coordinate>101,50</coordinate>
</share>
<share>
<id>qzone</id>
<img>qzone.png</img>
<coordinate>182,50</coordinate>
</share>
<share>
<id>renren</id>
<img>rr.png</img>
<coordinate>263,50</coordinate>
</share>
<share>
<id>kaixin001</id>
<img>kaixin001.png</img>
<coordinate>20,85</coordinate>
</share>
<share>
<id>tianya</id>
<img>tianya.png</img>
<coordinate>101,85</coordinate>
</share>
<share>
<id>feixin</id>
<img>feixin.png</img>
<coordinate>182,85</coordinate>
</share>
<share>
<id>msn</id>
<img>msn.png</img>
<coordinate>263,85</coordinate>
</share>
</share_button>
</ckplayer>

73
api/ckplayer/language.xml

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<ckplayer>
<style>
<pr_zip>{font color='#FFFFFF' face='NSimSun'}已加载[$prtage]%{/font}</pr_zip>
<!--
加载皮肤包进度提示的文字,[$prtage]会被替换成加载百分比
-->
<pr_load>{font color='#FFFFFF' face='NSimSun'}已加载[$prtage]%{/font}</pr_load>
<!--
当调用多段视频时,并且没有配置好各段视频的时间和字节数的情况下,播放器需要先读取各段视频的元数据进行计算,此时需要显示一个加载进度告诉用户已计算的情况。
-->
<pr_noload>{font color='#FFFFFF' face='NSimSun'}加载失败{/font}</pr_noload>
<!--
加载视频失败时显示的内容
-->
<pr_buffer>{font color='#FFFFFF' face='Arial'}[$buffer]%{/font}</pr_buffer>
<!--
视频缓冲时显示的提示,[$buffer]会被替换成缓冲的百分比数字部份
-->
<pr_play>{font color='#FFFFFF' face='NSimSun'}点击播放{/font}</pr_play>
<!--
鼠标经过播放按钮时的提示,支持html
-->
<pr_pause>{font color='#FFFFFF' face='NSimSun'}点击暂停{/font}</pr_pause>
<!--
鼠标经过暂停按钮时的提示,支持html
-->
<pr_mute>{font color='#FFFFFF' face='NSimSun'}点击静音{/font}</pr_mute>
<!--
鼠标经过静音按钮时的提示,支持html
-->
<pr_nomute>{font color='#FFFFFF' face='NSimSun'}取消静音{/font}</pr_nomute>
<!--
鼠标经过取消静音按钮时的提示,支持html
-->
<pr_full>{font color='#FFFFFF' face='NSimSun'}点击全屏{/font}</pr_full>
<!--
鼠标经过全屏按钮时的提示,支持html
-->
<pr_nofull>{font color='#FFFFFF' face='NSimSun'}退出全屏{/font}</pr_nofull>
<!--
鼠标经过退出全屏按钮时的提示,支持html
-->
<pr_fastf>{font color='#FFFFFF' face='NSimSun'}快进{/font}</pr_fastf>
<!--
鼠标经过快进按钮时的提示,支持html
-->
<pr_fastr>{font color='#FFFFFF' face='NSimSun'}快退{/font}</pr_fastr>
<!--
鼠标经过快退按钮时的提示,支持html
-->
<pr_time>{font color='#FFFFFF' face='Arial'}[$Time]{/font}</pr_time>
<!--
鼠标经过进度栏时提示当前点上时间的,[$Time]会被替换成时间,支持html
-->
<pr_volume>{font color='#FFFFFF' face='NSimSun'}音量[$Volume]%{/font}</pr_volume>
<!--
鼠标经过音量调节框或调整音量时提示,[$Volume]会自动替换音量值(0-100)
-->
<pr_clockwait>{font color='#FFFFFF' face='Arial'}00:00 | 00:00{/font}</pr_clockwait>
<!--
在默认不加载视频,即m=1的时候,同时并没有设置视频的时间和字节,即o和w值的时候,pr_clock和pr_clock2里的所有内容被替换成这里设置的值
-->
<pr_live>{font color='#FFFFFF' face='NSimSun'}视频直播中{/font}</pr_live>
<!--
在直播的情况下显示的文字
-->
<pr_adv>{font color='#FFFFFF' size='12'}广告剩余:{font color='#FF0000' size='15'}{b}[$Second]{/b}{/font} 秒{/font}</pr_adv>
<!--
广告倒计时显示的内容,[$Second]将会显示倒计时的秒数
-->
</style>
</ckplayer>

121
api/ckplayer/related.xml

@ -0,0 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<ckplayer>
<title>{font color="#FFDD00" face="新宋体"}精彩视频推荐{/font}</title>
<!--左上角的标题说明文字,支持html-->
<area>600,400,0xFFDD00,20</area>
<!--
该插件在播放中的区域控制
固定尺寸,精彩视频区域会固定大小并且保持剧中
1:宽
2:高
3:边框色
4:边框透明度
-->
<image>120,90</image>
<!--图片的宽,高-->
<distance>150,175,100</distance>
<!--
1:横排图片之间的距离,前一个图片的左边到后一个图片的左边的距离
2:竖排图片之间距离,上一个图片的上边到下一个图片的上边距离,这里需要特别注意,因为图片显示区域是总区域-40的高度,默认的即<area>的高400-40=360,所以比如你的图片想一列显示二个,则该参数需要设置成360/2=180
3:文字距离图片上方的距离
只要设置好这三个参数,图片的位置就可以固定住了
-->
<rep_title>{a href="[url]" target="_blank"}{font color="#FFFFFF" face="新宋体"}[title]{/font}{/a}</rep_title>
<!--标题替换规则-->
<style>a{color:#FFFFFF;}a:hover{color:#FF0000;}</style>
<!--文本样式-->
<size>120,42,3</size>
<!--文本的宽度,高度,行和行之间距离-->
<relatedlist>
<related>
<img>temp/1.jpg</img>
<url>http://www.ckplayer.com/index.php?id=1</url>
<title>1:这里调用的文件配置在ckplayer/related.xml里</title>
</related>
<related>
<img>temp/2.jpg</img>
<url>http://www.ckplayer.com/index.php?id=2</url>
<title>2:支持多页调用</title>
</related>
<related>
<img>temp/3.jpg</img>
<url>http://www.ckplayer.com/index.php?id=3</url>
<title>3:文本请保持在二行,不能多于三行,多于三行将不显示</title>
</related>
<related>
<img>temp/4.jpg</img>
<url>http://www.ckplayer.com/index.php?id=3</url>
<title>4:支持多行调用,多页调用</title>
</related>
<related>
<img>temp/5.jpg</img>
<url>http://www.ckplayer.com/index.php?id=2</url>
<title>5:感谢对ckplayer的支持</title>
</related>
<related>
<img>temp/6.jpg</img>
<url>http://www.ckplayer.com/index.php?id=1</url>
<title>6:最多两行,请不要超过二行</title>
</related>
<related>
<img>temp/3.jpg</img>
<url>http://www.ckplayer.com/index.php?id=1</url>
<title>7:这里调用的文件配置在ckplayer/related.xml里</title>
</related>
<related>
<img>temp/5.jpg</img>
<url>http://www.ckplayer.com/index.php?id=2</url>
<title>8:支持多页调用</title>
</related>
<related>
<img>temp/4.jpg</img>
<url>http://www.ckplayer.com/index.php?id=3</url>
<title>9:文本请保持在二行,不能多于三行,多于三行将不显示</title>
</related>
<related>
<img>temp/1.jpg</img>
<url>http://www.ckplayer.com/index.php?id=3</url>
<title>10:支持多行调用,多页调用</title>
</related>
<related>
<img>temp/2.jpg</img>
<url>http://www.ckplayer.com/index.php?id=2</url>
<title>11:感谢对ckplayer的支持</title>
</related>
<related>
<img>temp/6.jpg</img>
<url>http://www.ckplayer.com/index.php?id=1</url>
<title>12:最多两行,请不要超过二行</title>
</related>
<related>
<img>temp/5.jpg</img>
<url>http://www.ckplayer.com/index.php?id=1</url>
<title>13:这里调用的文件配置在ckplayer/related.xml里</title>
</related>
<related>
<img>temp/4.jpg</img>
<url>http://www.ckplayer.com/index.php?id=2</url>
<title>14:支持多页调用</title>
</related>
<related>
<img>temp/6.jpg</img>
<url>http://www.ckplayer.com/index.php?id=3</url>
<title>15:文本请保持在二行,不能多于三行,多于三行将不显示</title>
</related>
<related>
<img>temp/3.jpg</img>
<url>http://www.ckplayer.com/index.php?id=3</url>
<title>16:支持多行调用,多页调用</title>
</related>
<related>
<img>temp/1.jpg</img>
<url>http://www.ckplayer.com/index.php?id=2</url>
<title>17:感谢对ckplayer的支持</title>
</related>
<related>
<img>temp/2.jpg</img>
<url>http://www.ckplayer.com/index.php?id=1</url>
<title>18:最多两行,请不要超过二行</title>
</related>
</relatedlist>
</ckplayer>

BIN
api/ckplayer/share/feixin.png

After

Width: 76  |  Height: 23  |  Size: 2.2 KiB

BIN
api/ckplayer/share/google.png

After

Width: 76  |  Height: 23  |  Size: 1.8 KiB

BIN
api/ckplayer/share/kaixin001.png

After

Width: 76  |  Height: 23  |  Size: 2.5 KiB

BIN
api/ckplayer/share/msn.png

After

Width: 76  |  Height: 23  |  Size: 1.9 KiB

BIN
api/ckplayer/share/qq.png

After

Width: 76  |  Height: 23  |  Size: 1.8 KiB

BIN
api/ckplayer/share/qq2.png

After

Width: 76  |  Height: 23  |  Size: 2.1 KiB

BIN
api/ckplayer/share/qzone.png

After

Width: 76  |  Height: 23  |  Size: 2.1 KiB

BIN
api/ckplayer/share/rr.png

After

Width: 76  |  Height: 23  |  Size: 3.0 KiB

BIN
api/ckplayer/share/sina.png

After

Width: 76  |  Height: 23  |  Size: 2.6 KiB

BIN
api/ckplayer/share/sohu.png

After

Width: 76  |  Height: 23  |  Size: 1.4 KiB

BIN
api/ckplayer/share/tianya.png

After

Width: 76  |  Height: 23  |  Size: 2.3 KiB

BIN
api/ckplayer/style.swf

BIN
api/emotions/aoman.gif

After

Width: 24  |  Height: 24  |  Size: 1.9 KiB

BIN
api/emotions/baiyan.gif

After

Width: 24  |  Height: 24  |  Size: 2.9 KiB

BIN
api/emotions/bishi.gif

After

Width: 24  |  Height: 24  |  Size: 1.7 KiB

BIN
api/emotions/bizui.gif

After

Width: 24  |  Height: 24  |  Size: 3.8 KiB

BIN
api/emotions/cahan.gif

After

Width: 24  |  Height: 24  |  Size: 9.9 KiB

BIN
api/emotions/caidao.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/chajin.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/cheer.gif

After

Width: 22  |  Height: 22  |  Size: 3.6 KiB

BIN
api/emotions/chong.gif

After

Width: 24  |  Height: 24  |  Size: 2.1 KiB

BIN
api/emotions/ciya.gif

After

Width: 24  |  Height: 24  |  Size: 1.7 KiB

BIN
api/emotions/da.gif

After

Width: 24  |  Height: 24  |  Size: 1.6 KiB

BIN
api/emotions/dabian.gif

After

Width: 24  |  Height: 24  |  Size: 2.4 KiB

BIN
api/emotions/dabing.gif

After

Width: 24  |  Height: 24  |  Size: 5.7 KiB

BIN
api/emotions/dajiao.gif

After

Width: 24  |  Height: 24  |  Size: 3.3 KiB

BIN
api/emotions/daku.gif

After

Width: 24  |  Height: 24  |  Size: 3.3 KiB

BIN
api/emotions/dangao.gif

After

Width: 24  |  Height: 24  |  Size: 4.1 KiB

BIN
api/emotions/danu.gif

After

Width: 24  |  Height: 24  |  Size: 7.9 KiB

BIN
api/emotions/dao.gif

After

Width: 24  |  Height: 24  |  Size: 824 B

BIN
api/emotions/deyi.gif

After

Width: 24  |  Height: 24  |  Size: 1.9 KiB

BIN
api/emotions/diaoxie.gif

After

Width: 24  |  Height: 24  |  Size: 1.0 KiB

BIN
api/emotions/e.gif

After

Width: 24  |  Height: 24  |  Size: 2.2 KiB

BIN
api/emotions/fadai.gif

After

Width: 24  |  Height: 24  |  Size: 1.8 KiB

BIN
api/emotions/fadou.gif

After

Width: 24  |  Height: 24  |  Size: 1.1 KiB

BIN
api/emotions/fan.gif

After

Width: 24  |  Height: 24  |  Size: 1.1 KiB

BIN
api/emotions/fanu.gif

After

Width: 24  |  Height: 24  |  Size: 7.8 KiB

BIN
api/emotions/feiwen.gif

After

Width: 24  |  Height: 24  |  Size: 654 B

BIN
api/emotions/fendou.gif

After

Width: 24  |  Height: 24  |  Size: 1.7 KiB

BIN
api/emotions/gangga.gif

After

Width: 24  |  Height: 24  |  Size: 3.6 KiB

BIN
api/emotions/geili.gif

After

Width: 22  |  Height: 22  |  Size: 1.2 KiB

BIN
api/emotions/gouyin.gif

After

Width: 24  |  Height: 24  |  Size: 3.3 KiB

BIN
api/emotions/guzhang.gif

After

Width: 24  |  Height: 24  |  Size: 13 KiB

BIN
api/emotions/haha.gif

After

Width: 24  |  Height: 24  |  Size: 3.2 KiB

BIN
api/emotions/haixiu.gif

After

Width: 24  |  Height: 24  |  Size: 3.5 KiB

BIN
api/emotions/haqian.gif

After

Width: 24  |  Height: 24  |  Size: 3.7 KiB

BIN
api/emotions/hua.gif

After

Width: 24  |  Height: 24  |  Size: 971 B

BIN
api/emotions/huaixiao.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/hufen.gif

After

Width: 20  |  Height: 20  |  Size: 1.3 KiB

BIN
api/emotions/huishou.gif

After

Width: 24  |  Height: 24  |  Size: 2.2 KiB

BIN
api/emotions/huitou.gif

After

Width: 24  |  Height: 24  |  Size: 5.2 KiB

BIN
api/emotions/jidong.gif

After

Width: 24  |  Height: 24  |  Size: 1.7 KiB

BIN
api/emotions/jingkong.gif

After

Width: 24  |  Height: 24  |  Size: 3.9 KiB

BIN
api/emotions/jingya.gif

After

Width: 24  |  Height: 24  |  Size: 3.9 KiB

BIN
api/emotions/kafei.gif

After

Width: 24  |  Height: 24  |  Size: 2.6 KiB

BIN
api/emotions/keai.gif

After

Width: 24  |  Height: 24  |  Size: 1.8 KiB

BIN
api/emotions/kelian.gif

After

Width: 24  |  Height: 24  |  Size: 2.3 KiB

BIN
api/emotions/ketou.gif

After

Width: 24  |  Height: 24  |  Size: 1.8 KiB

BIN
api/emotions/kiss.gif

After

Width: 24  |  Height: 24  |  Size: 1.0 KiB

BIN
api/emotions/ku.gif

After

Width: 24  |  Height: 24  |  Size: 1.4 KiB

BIN
api/emotions/kuaikule.gif

After

Width: 24  |  Height: 24  |  Size: 3.0 KiB

BIN
api/emotions/kulou.gif

After

Width: 24  |  Height: 24  |  Size: 1.2 KiB

BIN
api/emotions/kun.gif

After

Width: 24  |  Height: 24  |  Size: 2.4 KiB

BIN
api/emotions/lanqiu.gif

After

Width: 24  |  Height: 24  |  Size: 2.6 KiB

BIN
api/emotions/lenghan.gif

After

Width: 24  |  Height: 24  |  Size: 3.0 KiB

BIN
api/emotions/liuhan.gif

After

Width: 24  |  Height: 24  |  Size: 2.6 KiB

BIN
api/emotions/liulei.gif

After

Width: 24  |  Height: 24  |  Size: 4.6 KiB

BIN
api/emotions/liwu.gif

After

Width: 24  |  Height: 24  |  Size: 1.1 KiB

BIN
api/emotions/love.gif

After

Width: 24  |  Height: 24  |  Size: 1.1 KiB

BIN
api/emotions/ma.gif

After

Width: 24  |  Height: 24  |  Size: 5.1 KiB

BIN
api/emotions/meng.gif

After

Width: 22  |  Height: 22  |  Size: 917 B

BIN
api/emotions/nanguo.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/no.gif

After

Width: 24  |  Height: 24  |  Size: 2.1 KiB

BIN
api/emotions/ok.gif

After

Width: 24  |  Height: 24  |  Size: 1.2 KiB

BIN
api/emotions/peifu.gif

After

Width: 24  |  Height: 24  |  Size: 1.6 KiB

BIN
api/emotions/pijiu.gif

After

Width: 24  |  Height: 24  |  Size: 5.0 KiB

BIN
api/emotions/pingpang.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/pizui.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/qiang.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/qinqin.gif

After

Width: 24  |  Height: 24  |  Size: 1.5 KiB

BIN
api/emotions/qioudale.gif

After

Width: 24  |  Height: 24  |  Size: 4.2 KiB

BIN
api/emotions/qiu.gif

After

Width: 24  |  Height: 24  |  Size: 3.6 KiB

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save