From: <lph...@us...> - 2010-07-18 09:59:48
|
Revision: 28043 http://tikiwiki.svn.sourceforge.net/tikiwiki/?rev=28043&view=rev Author: lphuberdeau Date: 2010-07-18 09:59:41 +0000 (Sun, 18 Jul 2010) Log Message: ----------- [NEW] External wiki profile handler Modified Paths: -------------- branches/5.x/lib/admin/adminlib.php branches/5.x/lib/profilelib/installlib.php Modified: branches/5.x/lib/admin/adminlib.php =================================================================== --- branches/5.x/lib/admin/adminlib.php 2010-07-17 19:13:51 UTC (rev 28042) +++ branches/5.x/lib/admin/adminlib.php 2010-07-18 09:59:41 UTC (rev 28043) @@ -116,12 +116,11 @@ $query = "update `tiki_extwiki` set `extwiki`=?,`name`=? where `extwikiId`=?"; $result = $this->query($query,array($extwiki,$name,$extwikiId)); } else { - $query = "delete from `tiki_extwiki` where `name`=? and `extwiki`=?"; - $bindvars=array($name,$extwiki); - $result = $this->query($query,$bindvars); + $query = "delete from `tiki_extwiki` where `name`=?"; + $result = $this->query($query,array($name)); $query = "insert into `tiki_extwiki`(`name`,`extwiki`) values(?,?)"; - $result = $this->query($query,$bindvars); + $result = $this->query($query,array($name, $extwiki)); } // And now replace the perm if not created Modified: branches/5.x/lib/profilelib/installlib.php =================================================================== --- branches/5.x/lib/profilelib/installlib.php 2010-07-17 19:13:51 UTC (rev 28042) +++ branches/5.x/lib/profilelib/installlib.php 2010-07-18 09:59:41 UTC (rev 28043) @@ -34,6 +34,7 @@ 'datachannel' => 'Tiki_Profile_InstallHandler_DataChannel', 'transition' => 'Tiki_Profile_InstallHandler_Transition', 'calendar' => 'Tiki_Profile_InstallHandler_Calendar', + 'extwiki' => 'Tiki_Profile_InstallHandler_ExtWiki', ); private static $typeMap = array( @@ -2197,6 +2198,38 @@ } } // }}} +class Tiki_Profile_InstallHandler_ExtWiki extends Tiki_Profile_InstallHandler // {{{ +{ + function getData() + { + $data = $this->obj->getData(); + + return $data; + } + + function canInstall() + { + $data = $this->getData(); + if( ! isset( $data['name'], $data['url'] ) ) + return false; + + return true; + } + + function _install() + { + global $adminlib; require_once 'lib/admin/adminlib.php'; + + $data = $this->getData(); + + $this->replaceReferences( $data ); + + $adminlib->replace_extwiki( null, $data['url'], $data['name'] ); + + return $data['name']; + } +} // }}} + //THIS HANDLER STILL DON'T WORK PROPERLY. USE WITH CAUTION. class Tiki_Profile_InstallHandler_Calendar extends Tiki_Profile_InstallHandler // {{{ { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |