Esempio n. 1
0
 public static function postInstallCmd(Event $event)
 {
     $baseXmlnuke = realpath(dirname(__FILE__) . "/../../../..");
     $baseProject = realpath(dirname($baseXmlnuke) . "/../..");
     $extra = $event->getComposer()->getPackage()->getExtra();
     if (isset($extra) && isset($extra['project-name'])) {
         $projectName = $extra['project-name'];
     } else {
         $projectName = basename($baseProject);
     }
     $output = $event->getIO();
     $output->write('=== XMLNUKE ===', true);
     $output->write('Xmlnuke Dir: ' . $baseXmlnuke, true);
     $output->write('Project Dir: ' . $baseProject, true);
     if (!file_exists($baseProject . '/httpdocs')) {
         $output->write("Creating Project...", true);
         $result = call_user_func_array(array('\\Xmlnuke\\Util\\CreatePhp5Project', 'Run'), array($baseXmlnuke . '/Composer.php', $baseProject, preg_replace('/[^A-Za-z0-0]/', '', $projectName), "en-us"));
     }
     if (!file_exists($baseProject . '/httpdocs/config.inc.php')) {
         $output->write("Setting the project ...", true);
         $configInc = file_get_contents($baseProject . "/httpdocs/config.inc-dist.php");
         $configInc = str_replace('#XMLNUKE#', $baseXmlnuke, str_replace('#PROJECT#', $baseProject, $configInc));
         file_put_contents($baseProject . "/httpdocs/config.inc.php", $configInc);
     }
     if (!file_exists($baseProject . '/data/anydataset/_db.anydata.xml')) {
         $output->write("Setting the _db.anydata ...", true);
         $dbInc = file_get_contents($baseProject . "/data/anydataset/_db.anydata-dist.xml");
         file_put_contents($baseProject . "/data/anydataset/_db.anydata.xml", $dbInc);
     }
     $output->write("Updating Project References...", true);
     CreatePhp5Project::Update($baseXmlnuke, $baseProject);
 }
Esempio n. 2
0
 protected static function writeTemplate($template, $file, $pattern, $replace)
 {
     if (file_exists($template)) {
         $contents = file_get_contents($template);
     } else {
         $contents = $template;
     }
     $contents = preg_replace($pattern, $replace, $contents);
     CreatePhp5Project::writeToFile($file, $contents);
 }
Esempio n. 3
0
#!/usr/bin/env php
<?php 
require_once __DIR__ . '/xmlnuke-php5/src/Xmlnuke/Util/CreatePhp5Project.php';
use Xmlnuke\Util\CreatePhp5Project;
if (PHP_SAPI == 'cli') {
    echo "\n";
    echo "============================\n";
    echo "XMLNuke PHP5 Project Updater\n";
    echo "By JG @ 2014\n";
    echo "============================\n";
    echo "\n";
    if ($argc < 2) {
        echo "Use this script to update and existing XMLNuke PHP5 project with the essentials XMLNuke files. \n";
        echo "The config.php file must be configured properly before run this command. \n";
        echo "\n";
        echo "Usage: \n";
        echo "   update-php5-project.php PATHTOYOURPROJECT \n";
        echo "\n";
        echo "Where: \n";
        echo "   PATHTOYOURPROJECT is the full path for your project  \n";
        echo "\n";
    } else {
        try {
            $result = CreatePhp5Project::Update(__DIR__, $argv[1]);
            echo "Done.\n";
            echo "\n";
        } catch (Exception $ex) {
            echo "Error: " . $ex->getMessage() . "\n\n";
        }
    }
}