一、广告类
脚本位置:source/class/adv/adv_name.php
语言包位置:source/language/adv/lang_name.php

<?php

class adv_name {

        var $version = '1.0';//脚本版本号
var $name = 'name';//广告类型名称 (可填写语言包项目)
var $description = 'desc';//广告类型说明 (可填写语言包项目)
var $copyright = 'Comsenz Inc.';//版权 (可填写语言包项目)
var $targets = array('portal', 'home', 'member', 'forum', 'group', 'userapp', 'plugin', 'custom');//广告类型适用的投放范围
var $imagesizes = array('120x60', '120x240');//图片广告推荐大小 function getsetting() {//返回设置项目
$settings = array(
'text' => array(
'title' => 'text_title',//设置项目名称 (可填写语言项目)
'type' => 'mradio',//项目类型
'value' => array(),//项目选项
'default' => 0,//项目默认值
)
);
return $settings;
} function setsetting(&$advnew, &$parameters) {//保存设置项目
} function evalcode() {//广告显示时的运行代码
return array(
//检测广告是否投放时的代码
'check' => '
if(condition) {
$checked = false;
}',
//广告显示时的代码 (随机调用投放的广告)
'create' => '$adcode = $codes[$adids[array_rand($adids)]];',
);
}
} ?>

二、道具类
脚本位置:source/class/magic/magic_name.php
语言包位置:source/language/magic/lang_name.php

<?php

class magic_name {

        var $version = '1.0';//脚本版本号
var $name = 'name';//道具名称 (可填写语言包项目)
var $description = 'desc';//道具说明 (可填写语言包项目)
var $price = '10';//道具默认价格
var $weight = '10';//道具默认重量
var $copyright = 'Comsenz Inc.';//版权 (可填写语言包项目) function getsetting() {//返回设置项目
$settings = array(
'text' => array(
'title' => 'text_title',//设置项目名称 (可填写语言项目)
'type' => 'mradio',//项目类型
'value' => array(),//项目选项
'default' => 0,//项目默认值
)
);
return $settings;
} function setsetting(&$advnew, &$parameters) {//保存设置项目
} function usesubmit($magic, $parameters) {//道具使用
} function show($magic) {//道具显示
} } ?>

三、任务类
脚本位置:source/class/task/task_name.php
语言包位置:source/language/task/lang_name.php

<?php

class task_name {

        var $version = '1.0';//脚本版本号
var $name = 'name';//任务名称 (可填写语言包项目)
var $description = 'desc';//任务说明 (可填写语言包项目)
var $copyright = 'Comsenz Inc.';//版权 (可填写语言包项目)
var $icon = '';//默认图标
var $period = '';//默认任务间隔周期
var $periodtype = 0;//默认任务间隔周期单位
var $conditions = array(//任务附加条件
'text' => array(
'title' => 'text_title',//设置项目名称 (可填写语言项目)
'type' => 'mradio',//项目类型
'value' => array(),//项目选项
'default' => 0,//项目默认值
'sort' => 'complete',//条件类型 (apply:申请任务条件 complete:完成任务条件)
),
); function preprocess($task) {//申请任务成功后的附加处理
} function csc($task = array()) {//判断任务是否完成 (返回 TRUE:成功 FALSE:失败 0:任务进行中进度未知或尚未开始 大于0的正数:任务进行中返回任务进度)
} function sufprocess($task) {//完成任务后的附加处理
} function view($task, $taskvars) {//任务显示
} function install() {//任务安装的附加处理
} function uninstall() {//任务卸载的附加处理
} function upgrade() {//任务升级的附加处理
} } ?>

四、验证问答类
脚本位置:source/class/secqaa/secqaa_name.php
语言包位置:source/language/secqaa/lang_name.php

<?php

class seccode_name {

        var $version = '1.0';//脚本版本号
var $name = 'name';//验证码类型名称 (可填写语言包项目)
var $copyright = 'Comsenz Inc.';//版权 (可填写语言包项目)
var $setting = array();//后台设置后的变量 function check($value, $idhash) {//检查输入的验证码,返回 true 表示通过
} function make() {//输出验证码,echo 输出内容将显示在页面中
} } ?>

Discuz 任务、道具、任务和验证类插件制作的更多相关文章

  1. JavaScript 数据验证类

    JavaScript 数据验证类 /* JavaScript:验证类 author:杨波 date:20160323 1.用户名验证 2.密码验证 3.重复密码验证 4.邮箱验证 5.手机号验证 6. ...

  2. C# 通用验证类 支持 WPF,MVC,Winform

    验证方式,   通过继承 IDataErrorInfo接口 和 DataAnnotations 解释标记语言而实现, 为了能在WPF上通用,所了也要继承属性更改通知接口INotifyPropertyC ...

  3. C# - DataValid数据验证类

    从EasyCode 摘取下来的数据验证类 using System; using System.Collections.Generic; using System.Text; namespace Le ...

  4. jquery表单验证使用插件formValidator

    JQuery表单验证使用插件formValidator 作者: 字体:[增加 减小] 类型:转载 时间:2012-11-10我要评论 jquery表单验证使用插件formValidator,可供有需求 ...

  5. php表单数据验证类

    非常好用方便的表单数据验证类 <?php //验证类 class Fun{ function isEmpty($val) { if (!is_string($val)) return false ...

  6. C# System.Attribute(验证类)

    本文以一个项目中通用的验证类来举例说明如何使用自定义Attribute来扩展元数据.  在项目中,我们为了保证各个层次之间的松藕合,通常把在各个层次之间传递数据的封装在一个称为实体类的类中,比如Act ...

  7. JS表单验证类HTML代码实例

    以前用的比较多的一个JS表单验证类,对于个人来说已经够用了,有兴趣的可以在此基础上扩展成ajax版本.本表单验证类囊括了密码验证.英文4~10个 字符验证. 中文非空验证.大于10小于100的数字.浮 ...

  8. 一个PHP常用表单验证类(基于正则)

    一个基于正则表达式的PHP常用表单验证类,作者:欣然随风.这个表单判断类的功能有:验证是否为指定长度的字母/数字组合.验证是否为指定长度汉字.身 份证号码验证.是否是指定长度的数字.验证邮件地址.电话 ...

  9. PHP - 验证类

    <?php /** * 验证类 * * @lastmodify 2014-5-16 * @author jy625 */ class VerifyAction{ /** * 是否为空值 */ p ...

随机推荐

  1. C#金额千分位分隔

    "234234".ToString("C") 显示:¥234,234

  2. hdu 3268 09 宁波 现场 I - Columbus’s bargain 读题 最短路 难度:1

    Description On the evening of 3 August 1492, Christopher Columbus departed from Palos de la Frontera ...

  3. [置顶] Android 打包apk无敌报错

    前言: 这个问题从昨天上午一直到现在,请教了很多大佬,都没有给出确定的解决方案,可能他们也没碰到过可能,不过还是挺感谢他们的建议,一直到今天中午午休,我一直都在想这个问题,就是下面的这个,看了国内很多 ...

  4. 网站使用 rel="noopener" 打开外部锚

    当您的页面链接至使用 target="_blank" 的另一个页面时,新页面将与您的页面在同一个进程上运行. 如果新页面正在执行开销极大的 JavaScript,您的页面性能可能会 ...

  5. 前端打印日志到localStroge并导出

    interface LogEntry { data: any time: Date } export class PersistantLog { //最大条数 maxEntries = 3000; i ...

  6. Android开发入门

    教我徒弟Android开发入门(一) 教我徒弟Android开发入门(二) 教我徒弟Android开发入门(三) 出处:http://www.cnblogs.com/kexing/tag/Androi ...

  7. Javascript 全局函数是 window 的函数

    比如以下函数,看起来不属于任何对象,但它是一个全局对象. 它属于 HTML页面的函数. function myFunction(a, b){ return a * b; } window.myFunc ...

  8. 用原生 JS 实现双向绑定及应用实例

    写在前面: 所谓的双向绑定,无非是从界面的操作能实时反映到数据,数据的变更也能实时展现到界面.angular封装了双向绑定的方法,使双向绑定变得十分简单.但是在有些场景下(比如下面那个场景),不能使用 ...

  9. SIM800/SIM900/SIM7000/SIM7600底层操作接口_句柄方式完全分离通信底层

    使用SIMCOM公司通信模块将底层的通信与应用完全进行了分离,便于移植. SIMCOM.h //定义了相关的结构体与类型. SIMCOM_AT.c//定义了底层的AT接口 SIMCOM_GSM.c// ...

  10. [教程]Ubuntu下完整配置自动壁纸切换

    来源:http://www.linuxidc.com/Linux/2016-09/135350.html 更原始的来源就不去找了,如果有找到的同学可以回复我我到时改过来www 来源的教程是有效的,但是 ...