File Manager

Current Path : /webspace/www.babilon.be/html/modules/Gallery/
Upload File :
Current File : //webspace/www.babilon.be/html/modules/Gallery/method.install.php

<?php
#-------------------------------------------------------------------------
# Module: Gallery
# Method: Install
#-------------------------------------------------------------------------
# CMS - CMS Made Simple is (c) 2008 by Ted Kulp (wishy@cmsmadesimple.org)
# This project's homepage is: http://www.cmsmadesimple.org
#-------------------------------------------------------------------------

if (!isset($gCms)) exit;


// setup directories and/or check if writable
$dirs = array( 'modules/Gallery/templates', 'modules/Gallery/templates/css', 'uploads/images', DEFAULT_GALLERY_PATH, DEFAULT_GALLERYTHUMBS_PATH);
foreach ( $dirs as $dir )
{
	if( !is_dir('../'.$dir) )
	{
		mkdir(str_replace('/', DIRECTORY_SEPARATOR, '../'.$dir));
	}
	if( !is_writable('../'.$dir) )
	{
		//return error to ModuleManager
		$tmp = lang('errordirectorynotwritable'). ' > ' . $dir;
		return $tmp;
	}
}


$db = $this->GetDb();

// mysql-specific, but ignored by other database
$taboptarray = array('mysql' => 'ENGINE=MyISAM');
$dict = NewDataDictionary($db);

// table schema description
$flds = "
	fileid I KEY AUTO,
	filename C(255),
	filepath C(255),
	filedate " . CMS_ADODB_DT . ",
	fileorder I,
	active I,
	defaultfile I,
	galleryid I,
	title C(255),
	comment X
";

$sqlarray = $dict->CreateTableSQL( cms_db_prefix()."module_gallery",
	$flds, $taboptarray);
$dict->ExecuteSQLArray($sqlarray);

$flds = "
	fileid I KEY,
	templateid I,
	hideparentlink I,
	feugroups C(255),
	editors C(255)
";

$sqlarray = $dict->CreateTableSQL( cms_db_prefix()."module_gallery_props",
	$flds, $taboptarray);
$dict->ExecuteSQLArray($sqlarray);

// maxlength -> properties
$flds = "
	fieldid I KEY AUTO,
	name C(255),
	type C(20),
	properties C(255),
	dirfield L,
	sortorder I,
	public L
";

$sqlarray = $dict->CreateTableSQL(cms_db_prefix()."module_gallery_fielddefs",
	$flds, $taboptarray);
$dict->ExecuteSQLArray($sqlarray);

$flds = "
	fileid I KEY NOT NULL,
	fieldid I KEY NOT NULL,
	value X
";

$sqlarray = $dict->CreateTableSQL(cms_db_prefix()."module_gallery_fieldvals",
	$flds, $taboptarray);
$dict->ExecuteSQLArray($sqlarray);

$flds = "
	templateid I KEY AUTO,
	template C(255),
  version C(20),
	about X,
	thumbwidth I,
	thumbheight I,
	resizemethod C(10),
	maxnumber I,
	sortitems C(255),
	visible I
";

$sqlarray = $dict->CreateTableSQL( cms_db_prefix()."module_gallery_templateprops",
	$flds, $taboptarray);
$dict->ExecuteSQLArray($sqlarray);

// create a permission
$this->CreatePermission('Use Gallery', 'Use Gallery');
$this->CreatePermission('Gallery - Add subgalleries', 'Gallery - Add subgalleries');
$this->CreatePermission('Gallery - Edit all galleries', 'Gallery - Edit all galleries');

// setup templates
$templates = array( 'AE-Gallery', 'Cycle', 'Fancybox', 'gallerytree', 'Lightbox', 'prettyPhoto', 'Slimbox');

foreach ( $templates as $template )
{
	$fn = dirname(__FILE__).DIRECTORY_SEPARATOR.'templates'.DIRECTORY_SEPARATOR.'Gallery-tpl-'.$template.'.xml';
	if( file_exists( $fn ) )
	{
		$xml = @file_get_contents($fn);
		include 'function.importtemplate.php';
		if ( $template == 'prettyPhoto' )
		{
			$this->SetPreference('default_template_contents',$templatecode);
			$this->SetPreference('current_template',$template);
		}
	}
}

// create preferences
$this->SetPreference('singleimg_template', 'prettyPhoto');
$this->SetPreference('singleimg_template_html', '<a class="group" href="{$image->file|escape:\'url\'|replace:\'%2F\':\'/\'}" title="{$image->title}" rel="prettyPhoto"><img src="{$image->thumb|escape:\'url\'|replace:\'%2F\':\'/\'}" alt="{$image->title}" /></a>');
$this->SetPreference('urlprefix', 'gallery');
$this->SetPreference('allowed_extensions', 'jpg,jpeg,gif,png');
$this->SetPreference('maximagewidth', 800);
$this->SetPreference('maximageheight', 640);
$this->SetPreference('imagejpgquality', 80);
$this->SetPreference('thumbjpgquality', 80);
$this->SetPreference('use_permissions', false);
$this->SetPreference('newgalleries_active', true);
$this->SetPreference('use_comment_wysiwyg', false);
$this->SetPreference('editdirdates', false);
$this->SetPreference('editfiledates', false);
$this->SetPreference('fe_folderpath', 'modules/Gallery/images/folder.png');
$this->SetPreference('be_folderpath', 'modules/Gallery/images/foldersmall.png');

// register an event that the Gallery will issue.
// $this->CreateEvent( 'OnGalleryPreferenceChange' );

$this->AddEventHandler( 'Core', 'ContentPostRender', false );

// insert defaults
$query = "INSERT INTO " . cms_db_prefix() . "module_gallery (filename, filepath, filedate, fileorder, active, defaultfile, galleryid, title, comment) VALUES (?,?,?,-1,1,0,0,?,?)";
$db->Execute($query, array('', '', date("Y-m-d H:i:s", filemtime('../uploads/images/Gallery')), cms_html_entity_decode($this->Lang('friendlyname')), cms_html_entity_decode($this->Lang('defaultgallerycomment'))));
$query = "INSERT INTO " . cms_db_prefix() . "module_gallery_props (fileid,templateid,hideparentlink) VALUES (?,?,?)";
$db->Execute($query, array(1, 0, 1));

?>

File Manager Version 1.0, Coded By Lucas
Email: hehe@yahoo.com