D3 - comment
from PEAK XOOPS Support&Experiment
(2006/10/8 17:43)
|
I've thought built-in"Comment"of XOOPS core is too poor to use long ago.d3forum will have comment-integration like myAlbum-P's imagemanager-integration.This would be standard"Comment"implementation for D3 modules.
|
D3 - 3rd module plugins
from PEAK XOOPS Support&Experiment
(2006/10/7 6:34)
|
With duplicatable modules,"plugin modules"like sitemap or waiting find module side plugins like ...XOOPS_ROOT_PATH/modules/(dirname)/include/sitemap.plugin.phpXOOPS_ROOT_PATH/modules/(dirname)/include/waiting.plugin.phpFor D3 module, sitemap is modified like ...First, sitemap searches a plugin under ROOTXOOPS_ROOT_PATH/modules/(dirname)/include/sitemap.plugin.phpSecond, sitemap searches a plugin under TRUSTXOOPS_TRUST_PATH/modules/(trustdirname)/include/sitemap.plugin.phpIn sitemap.plugin.php under TRUST, write a function like this.[code]function b_sitemap_[i]d3forum[/i]( $mydirname ){...}[/code]Of course, [i]d3forum[/i] should be replace by trustdirname of your D3 module.The other"plugin module"-waiting- will be modified like sitemap.
|
final xhnewbb released
from PEAK XOOPS Support&Experiment
(2006/10/6 17:38)
|
xhnewbb 1.30 stable has just been released.I'll quit to develop xhnewbb without bug/security fixes.And I'll concentrate to develp"d3forum"-full scratched forum module-.
|
D3 - notification
from PEAK XOOPS Support&Experiment
(2006/10/5 18:10)
|
In d3forum, I've made a function for keeping language override system of D3 module. (d3forum_trigger_event)Use XoopsNotificationHanlder::notifyUser() instead of XoopsNotificationHanlder::triggerEvent().Thus, you can be blessed language overriding system, also with mail templates.[code]1. XOOPS_ROOT_PATH/modules/(dirname)/language/(lang)/mail_template/2. XOOPS_TRUST_PATH/modules/(trustdirname)/language/(lang)/mail_template/3. XOOPS_TRUST_PATH/modules/(trustdirname)/language/english/mail_template/[/code]
|
D3 - namespace of templates
from PEAK XOOPS Support&Experiment
(2006/10/4 3:48)
|
I'll name D3 modules with these rules.[code]XOOPS_TRUST_PATH/modules/(trustdirname)/templates/- main_* for main (value of $xoopsOption['template_main'])- block_* for block (parameter for XoopsTpl::fetch())- admin_* for admin (parameter for XoopsTpl::display())- inc_* for included from some template main,block, and admin.[/code]Of course, these templates are identified by thier name in XOOPS like:[code]- (dirname)_main_*- (dirname)_block_*- (dirname)_admin_*- (dirname)_inc_*[/code]Tips: when you use in D3 module's template, use backquote.[code] [/code]
|
D3 - spec of block templates
from PEAK XOOPS Support&Experiment
(2006/10/3 3:19)
|
For block, use main templates instead of block's template.[code]$tpl =&new XoopsTpl() ;$tpl-> assign('block', $block ) ;$ret['content'] = $tpl-> fetch('db:'.$mydirname.'_block_(template_name).html') ;return $ret ;[/code]This is excellent way than block template, because you can specify the template -file or db- for each blocks by block's option.
|
D3 - spec of language (2)
from PEAK XOOPS Support&Experiment
(2006/10/2 4:04)
|
"I want to change language constants per each modules"D2 can't, but you can do that with D3.Just copy- from XOOPS_TRUST_PATH/modules/(trustdirname)/language/(lang)/modinfo.php- to XOOPS_ROOT_PATH/modules/(dirname)/language/(lang)/modinfo.phpAnd edit the new file.
|
D3 - spec of language (1)
from PEAK XOOPS Support&Experiment
(2006/10/1 16:47)
|
Here is the spec for language files of D3 modules.XOOPS_TRUST_PATH/modules/(trustdirname)/language/(lang)/modinfo.php[code]$constpref ='_MI_'. strtoupper( $mydirname ) ;if( ! defined( $constpref.'_LOADED') ) {// a flag for this language file has already been read or not.define( $constpref.'_LOADED', 1 ) ;define($constpref."_NAME","(name of the module)");define($constpref."_DESC","(desc of the module)");}[/code]Usage (eg. xoops_version.php)[code]$modversion['name'] = constant($constpref.'_NAME') ;$modversion['description'] = constant($constpref.'_DESC') ;[/code]XOOPS_TRUST_PATH/modules/(trustdirname)/language/(lang)/admin.php[code]define('_MD_A_(TRUSTDIRNMAE)_...','...') ;...[/code]XOOPS_TRUST_PATH/modules/(trustdirname)/language/(lang)/main.php[code]define('_MD_(TRUSTDIRNMAE)_...','...') ;...[/code]XOOPS_TRUST_PATH/modules/(trustdirname)/language/(lang)/blocks_common.php[code]define('_MB_(TRUSTDIRNAME)_...','...') ;...[/code]XOOPS_TRUST_PATH/modules/(trustdirname)/language/(lang)/block ...
|
xhnewbb-1.30 beta release
from PEAK XOOPS Support&Experiment
(2006/9/13 17:26)
|
xhnewbb-1.30beta has just been released.xhnewbb targets"a honest forum module".I'd like to develop this module for your relief.for example, I never implement HTML editors into xhnewbb though I know it is quite easy to implement it.In 1.3, jidaikobo made its template with"honest HTMLs"."Invalid"XoopsForm is eliminated in public side.And I've newly found and fixed original bugs from newbb.- notification on post- signature can be turned on always- double htmlspecialchars with subjectIncidentaly some features are added.- added configuration of self edition allow/disallow and time limitation- added configuration of self deletion allow/disallow and time limitation- added configuration URI of module's CSS- added cut&paste posts (only for admins or moderators)However, it is just a trivial bonus.I say again,"xhnewbb aims honesty".
|
How to use minihaku (6)
from PEAK XOOPS Support&Experiment
(2006/9/6 10:19)
|
How to add text/textarea.This is not same as adding integer/bool.I. do ALTER TABLEALTER TABLE (prefix)_users ADD user_map text not null default'';II. edit templatesminihaku_edituser.html (edit minihaku_register.html too, if necessary)[code] [/code]Don't forget escape as one of default Smarty modifiers.system_userinfo.html[code] MAP [/code]minihaku_userinfo as a custom Smarty modifier escapes the text.III. write logics into include/config.phpIII-B define extra fields[code]$extra_fields = array('user_map'=> array('initval'=> '',) ,) ;[/code]Notice that''is a string.III-C Initialization and Query Part[code]if( empty( $minihaku_uid4whr ) ) {foreach( $extra_fields as $key => $attribs ) {$allowed_requests[$key] = $attribs['initval'] ;}} else {$db =&Database::getInstance() ;list( $allowed_requests['user_map'] ) = $db-> fetchRow( $db-> query("SELECT user_map FROM".$db-> prefix("users")."WHERE uid=$minihaku_uid4whr") ) ;// for the plugin of modifier.minihaku_userinfo.php$myts =&MyTextSan ...
|