Exemplo n.º 1
0
 /**
  * Display the template list.
  *
  * @return void
  */
 private function templates()
 {
     $input = JFactory::getApplication()->input;
     $profiling = false;
     if ($profiling) {
         //            jimport('joomla.error.profiler');
         $this->profiler = JProfiler::getInstance('EasyCreator');
     }
     $this->task = $input->get('task');
     $this->ecr_project = $input->get('ecr_project');
     $this->path = ECRPATH_EXTENSIONTEMPLATES;
     $this->file_path = $input->getPath('file_path');
     $this->file_name = $input->getPath('file_name');
     $this->com_type = $input->get('com_type');
     $this->template = $input->get('template');
     $this->comTypes = EcrProjectHelper::getProjectTypes();
     $cache = JFactory::getCache();
     $cache->setCaching(1);
     if ($profiling) {
         $this->profiler->mark('start get templates');
     }
     $this->templates = EcrProjectTemplateHelper::getTemplateList();
     if ($profiling) {
         $this->profiler->mark('end get cached templates');
     }
     if ($profiling) {
         echo '<pre>' . print_r($this->profiler->getBuffer(), true) . '</pre>';
     }
     $this->setLayout('templates');
 }
Exemplo n.º 2
0
 /**
  * DoIt
  *
  * @throws Exception
  * @return void
  */
 public function doExecute()
 {
     require JPATH_BASE . '/helpers/loader.php';
     require JPATH_BASE . '/includes/defines.php';
     jimport('joomla.filesystem.folder');
     jimport('joomla.filesystem.file');
     var_dump(getcwd());
     var_dump($this->input->args);
     // Known project types
     $types = EcrProjectHelper::getProjectTypes();
     // Known project "Tags" - short forms
     $tags = EcrProjectHelper::getProjectTypesTags();
     // Predefined actions
     $actions = $this->getActions();
     var_dump($actions);
     var_dump($tags);
     // @todo What do you want to do today ? =;)
     return;
     $this->input->set('ecr_project', 'wap_fuuuschubidu');
     $builder = new EcrProjectBuilder();
     $type = 'webapp';
     //getCmd('tpl_type');
     $name = 'mvc_1';
     //getCmd('tpl_name');
     $comName = 'wap_gugugugu';
     //getCmd('com_name');
     if (in_array($type, array('cliapp', 'webapp'))) {
         define('JPATH_SITE', __DIR__);
     }
     $newProject = $builder->build($type, $name, $comName);
     if (!$newProject) {
         //-- Error
         $this->out('An error happened while creating your project');
         //            JFactory::getApplication()->enqueueMessage(jgettext('An error happened while creating your project'), 'error');
         //          $builder->printErrors();
         $errors = $builder->getErrors();
         var_dump($errors);
         //EcrHtml::formEnd();
         return;
     }
     if ('test' == JFactory::getApplication()->input->get('ecr_test_mode')) {
         //-- Exiting in test mode
         echo '<h2>Exiting in test mode...</h2>';
         echo $builder->printLog();
         $builder->printErrors();
         EcrHtml::formEnd();
         return;
     }
     $ecr_project = JFile::stripExt($newProject->getEcrXmlFileName());
     //   $uri = 'index.php?option=com_easycreator&controller=stuffer&ecr_project='.$ecr_project;
     $this->out('Your project has been created');
     echo ECRPATH_DATA;
     $project = EcrProjectHelper::getProject();
     var_dump($project);
 }
Exemplo n.º 3
0
 /**
  * Draws a project selector
  *
  * @return void
  */
 public static function project()
 {
     $projects = EcrProjectHelper::getProjectList();
     $projectTypes = EcrProjectHelper::getProjectTypes();
     $ecr_project = JFactory::getApplication()->input->get('ecr_project');
     $class = '';
     if ($ecr_project == 'ecr_new_project') {
         $class = 'img3 icon16-add';
     } else {
         if ($ecr_project == 'ecr_register_project') {
             $class = 'img3 icon16-import';
         } else {
             if ($ecr_project) {
                 try {
                     $project = EcrProjectHelper::getProject();
                     $class = 'img3 icon12-' . $project->type;
                 } catch (Exception $e) {
                     $do = 'nothing';
                     unset($do);
                 }
             }
         }
     }
     echo '<span class="' . $class . '">';
     echo NL . '<select style="font-size: 1.2em;" name="ecr_project" id="ecr_project" onchange="switchProject();">';
     echo NL . '<option value="">' . jgettext('Project') . '...</option>';
     $selected = $ecr_project == 'ecr_new_project' ? ' selected="selected"' : '';
     $class = ' class="img3 icon16-add"';
     echo NL . '<option' . $class . ' value="ecr_new_project"' . $selected . '>' . jgettext('New Project') . '</option>';
     $selected = $ecr_project == 'ecr_register_project' ? ' selected="selected"' : '';
     $class = ' class="img3 icon16-import"';
     echo NL . '<option' . $class . ' value="ecr_register_project"' . $selected . '>' . jgettext('Register Project') . '</option>';
     /* @var EcrProjectBase $pType */
     foreach ($projectTypes as $pTag => $pType) {
         if (isset($projects[$pTag]) && count($projects[$pTag])) {
             echo NL . '<optgroup label="' . $pType->translateTypePlural() . '">';
             /* @var EcrProjectBase $project */
             foreach ($projects[$pTag] as $project) {
                 $displayName = $project->name;
                 if ($project->scope) {
                     $displayName .= ' (' . $project->scope . ')';
                 }
                 $selected = $project->fileName == $ecr_project ? ' selected="selected"' : '';
                 $class = ' class="img12 icon12-' . $pTag . '"';
                 echo NL . '<option' . $class . ' value="' . $project->fileName . '" label="' . $project->name . '"' . $selected . '>' . $displayName . '</option>';
             }
             echo NL . '</optgroup>';
         }
     }
     echo NL . '</select></span>';
 }
$projects = EcrProjectHelper::getProjectList();
$toolImgBase = '&lt;span class=\'img icon16-%s\' style=\'padding-left: 20px; height: 14px;\'&gt;&lt;/span&gt;';
$toolImg = new stdClass();
$toolImg->config = sprintf($toolImgBase, 'ecr_config');
$toolImg->language = sprintf($toolImgBase, 'locale');
$toolImg->codeeye = sprintf($toolImgBase, 'xeyes');
$toolImg->ziper = sprintf($toolImgBase, 'package');
$toolImg->deploy = sprintf($toolImgBase, 'deploy');
?>
<div class="projectListHeader registered"><?php 
echo jgettext('Registered Projects');
?>
</div>
<?php 
/* @var EcrProjectBase $pType */
foreach (EcrProjectHelper::getProjectTypes() as $pTag => $pType) {
    if (!isset($projects[$pTag]) || !count($projects[$pTag])) {
        continue;
    }
    ?>
<div class="ecr_floatbox">
    <?php 
    $count = isset($projects[$pTag]) ? count($projects[$pTag]) : 0;
    echo '<div class="boxHeader img icon12-' . $pTag . '">';
    echo sprintf($pType->translateTypeCount($count), $count);
    echo '</div>';
    foreach ($projects[$pTag] as $project) {
        ?>
        <div class="projectListRow btn hasTip"
             title="<?php 
        echo jgettext('Configure') . $toolImg->config . '::' . $project->name;
<?php

defined('_JEXEC') || die('=;)');
/**
 * @package    EasyCreator
 * @subpackage Views
 * @author     Nikolai Plath
 * @author     Created on 24-Mar-2010
 * @license    GNU/GPL, see JROOT/LICENSE.php
 */
$projectTypes = EcrProjectHelper::getProjectTypes();
$projectScopes = EcrProjectHelper::getProjectScopes();
$input = JFactory::getApplication()->input;
$task = $input->get('task');
$showCore = $input->get('show_core') == 'show_core' ? true : false;
$checked = $showCore ? ' checked="checked"' : '';
?>
<div class="projectListHeader unregistered">
    <div style="float: right;">
        <input type="checkbox" name="show_core"
               id="show_core" value="show_core" <?php 
echo $checked;
?>
               onchange="submitbutton('<?php 
echo $task;
?>
');"/>
        <label for="show_core" class="inline">
            <i class="img icon16-joomla"></i><?php 
echo jgettext('Show Joomla core projects');
?>
Exemplo n.º 6
0
 /**
  * Register an existing project.
  *
  * @param string $type  Project type
  * @param string $name  Project name
  * @param string $scope Project scope e.g. admin, site
  *
  * @return EcrProjectBase on success | false on error
  */
 public function registerProject($type, $name, $scope = '')
 {
     //--Get component parameters
     $comParams = JComponentHelper::getParams('com_easycreator');
     //-- Setup logging
     $options = array();
     $opts = array('logging', 'hotlogging', 'files', 'profile');
     foreach ($opts as $o) {
         if ($comParams->get($o)) {
             $options[] = $o;
         }
     }
     $options['fileName'] = date('ymd_Hi') . '_register.log';
     $this->logger = EcrLogger::getInstance('ecr', $options);
     if (false == array_key_exists($type, EcrProjectHelper::getProjectTypes())) {
         JFactory::getApplication()->enqueueMessage(sprintf(jgettext('The project type %s is not defined yet'), $type), 'error');
         $this->setError(sprintf(jgettext('The project type %s is not defined yet'), $type));
         return false;
     }
     $project = EcrProjectHelper::newProject($type);
     $project->comName = $name;
     $project->scope = $scope;
     foreach (EcrEasycreator::$packFormats as $name => $ext) {
         if ($comParams->get($name)) {
             $project->buildOpts[$name] = '1';
         }
     }
     for ($i = 1; $i < 5; $i++) {
         $project->buildOpts['custom_name_' . $i] = $comParams->get('custom_name_' . $i);
     }
     //-- Set the Joomla! compatibility version to the version we are actually running on
     $project->JCompat = ECR_JVERSION;
     $xmlPath = EcrProjectHelper::findManifest($project);
     if (false == $xmlPath) {
         JFactory::getApplication()->enqueueMessage(jgettext('No manifest file found'), 'error');
         $this->setError(jgettext('No manifest file found'));
         return false;
     }
     $data = EcrProjectHelper::parseXMLInstallFile(JPATH_ROOT . DS . $xmlPath);
     $project->name = $data->name;
     $this->logger->log('Registering: ' . $project->type . ' - ' . $project->name . '<br />' . 'aka "' . $project->comName . '"<br />scope: ' . $project->scope);
     $pXml = $project->update();
     if (false == $pXml) {
         $this->logger->log('', 'Unable to create EasyCreator manifest');
         $this->logger->writeLog();
         return false;
     } else {
         $this->logger->log('EasyCreator manifest created');
         $this->logger->logFileWrite('', '', $pXml);
     }
     $this->logger->log('FINISHED');
     $this->logger->writeLog();
     return $project;
 }