<?php
/*
* @package LabCMS
* @copyright (c) 2006 Alexander Levin aka Loki (loki_angel@mail.ru)
* @support http://labcms.ru
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*/
	$mod_template='edit.tpl';
	
	if (Db::i()->selectCell("SELECT COUNT(*) FROM ?_modules WHERE module=?", $_GET['var1'])) return LabCMS::i()->error("Модуль уже установлен");
	
	$info = getModuleInfo($_GET["var1"]);
	
	addBreadcrumb($info['name'], _url($info['module'], 'info'));
	addBreadcrumb("установка модуля");

	
	$form = new HTML_QuickForm2('', 'post', array('action'=>''));
	
	$name=$form->addElement('text', 'name', array('tabindex'=>1), array('label' => 'Название модуля:'));
	$name->addRule('required', 'Название модуля не может быть пустым');
	$form->addElement('checkbox', 'static',  array('tabindex'=>2), array('label' => 'Статичный:', 'content'=>''));
	$form->addElement('hidden', 'token', array('value'=>User::i()->token));
	$form->addElement('submit', '', array('value'=>'Сохранить', 'tabindex'=>3));

	
	if($form->validate())
	{
		User::checkToken();
		if (!empty($info['depends']))
		{
			if (!Db::i()->selectCell("SELECT count(module_id) FROM ?_modules WHERE module=?", $info['depends']))
			{
				$dep = getModuleInfo($info['depends']);
				LabCMS::i()->error(sprintf(_m('Этот модуль зависит от модуля "%s" и без него работать не будет'), $dep['name']), true);
			}
		}
		
		if (LabCMS::i()->no_errors)
		{
			$runlevel=!empty($info['runlevel'])?$info['runlevel']:($info['component']?1000:1500);
			$query=array(	'module'=>$_GET['var1'],
							'name'=>$_POST['name'],
							'component'=>(!empty($info['component']) ? 1 : 0),
							'static'=>(!empty($_POST['static']) ? 1 : 0),
							'runlevel'=>$runlevel,
							'depends'=>(!empty($info['depends'])?$info['depends']:''));
			
			if(file_exists(LAB_PATH_MODULES.'/'.$_GET["var1"]."/uninstall.sql")) Db::parse_mysql_dump(LAB_PATH_MODULES.'/'.$_GET["var1"]."/uninstall.sql", false);
			if(file_exists(LAB_PATH_MODULES.'/'.$_GET["var1"]."/install.sql")) Db::parse_mysql_dump(LAB_PATH_MODULES.'/'.$_GET["var1"]."/install.sql", false);
			$module_id=Db::i()->query("INSERT INTO ?_modules SET ?a", $query);
			//создаем файл с дефолтными настройками
			create_deafult_settings($_GET["var1"], $module_id);
			LabCMS::i()->reset_cache('all');
			refresh();
		}
	}
	
	$form->addDataSource(new HTML_QuickForm2_DataSource_Array($info));

	$renderer = HTML_QuickForm2_Renderer::factory('labsmarty');
	Tpl::i()->assign('form', $form->render($renderer)->toArray());

	
	Tpl::i()->assign("info",$info);
