diff options
Diffstat (limited to 'setup/composerit.php')
-rw-r--r-- | setup/composerit.php | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/setup/composerit.php b/setup/composerit.php new file mode 100644 index 0000000..75c2175 --- /dev/null +++ b/setup/composerit.php @@ -0,0 +1,68 @@ +<?php +@set_time_limit(0); +ini_set('memory_limit', '64M'); + +define('IN_FS', 1); +define('BASEDIR', dirname(__FILE__)); +define('APPLICATION_PATH', dirname(BASEDIR)); +define('OBJECTS_PATH', APPLICATION_PATH . '/includes'); +define('TEMPLATE_FOLDER', BASEDIR . '/templates/'); + +require_once OBJECTS_PATH.'/i18n.inc.php'; + +class user{var $infos=array();}; +class project{var $id=0;}; +$user = new user; +$proj = new project; + +load_translations(); + +# no caching to prevent old pages if user goes back and forth during install +header("Expires: Tue, 03 Jul 2001 06:00:00 GMT"); +header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0"); +header("Cache-Control: post-check=0, pre-check=0", false); +header("Pragma: no-cache"); +?> + +<!DOCTYPE html> +<html> + <head> + <meta charset='utf-8'> + <title>Flyspray Install - Third Party Packages needed</title> + <link media="screen" href="../themes/CleanFS/theme.css" rel="stylesheet" type="text/css" /> + </head> + <body style="padding:2em;"><img src="../flyspray.png" style="display:block;margin:auto;"> + <h3>Step 1: Trying to download Composer</h3> +<?php + if (ini_get('safe_mode') == 1) { + $composerfile = file_get_contents('https://getcomposer.org/installer'); + file_put_contents('composerinstaller', $composerfile); + echo 'Download done'.'<br>'; + $argv = array('--disable-tls'); # just for avoiding warnings + ?> + <h3>Step 2: Trying to load composerinstaller into the running php script</h3> + <p>Wait a few seconds until composerinstaller put his output under the button. Once the output looks good, try installing the dependencies using the button.</p> + <a href="composerit2.php" class="button" style="padding:1em;font-size:1em">Install dependencies</a> + <pre> + <?php + require 'composerinstaller'; + # Ok, composerinstaller exits itself, so no more code needed here, but it looks more complete :-) + echo '</pre>'; + } else { + $phpexe='php'; + # TODO: autodetect the matching commandline php on the host matching the php version of the webserver + # Any idea? Using $_SERVER['PHP_PEAR_SYSCONF_DIR'] or $_SERVER['PHPRC'] for detecting can help a bit, but weak hints.. + # This is just a temp hack for installing flyspray on xampp on Windows + if (getenv('OS') == 'Windows_NT' && isset($_SERVER['PHPRC']) && strstr($_SERVER['PHPRC'], 'xampp')) { + $phpexe=$_SERVER['PHPRC'].'\php.exe'; + } + shell_exec($phpexe.' -r "readfile(\'https://getcomposer.org/installer\');" | '.$phpexe); + if (!is_readable('composer.phar')) { + die('Composer installer download failed! Please consider downloading vendors directly from Flyspray support website'); + } + echo 'Successfully downloaded Composer.<br /><br />'; + echo '<a href="composerit2.php" class="button" style="padding:1em;font-size:1em">Try to install dependencies</a>'; + } +?> +</body> +</html> |