aboutsummaryrefslogtreecommitdiff
path: root/www/index.php
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2012-03-25 21:08:29 +0200
committerChristian Weiske <cweiske@cweiske.de>2012-03-25 21:08:29 +0200
commit6d0777840e50ce98f3d96629b4e92bbdccd3001c (patch)
tree161a753bf54b4fec0c4357b16dc68ff838e20383 /www/index.php
parent568bf6f9a487a3dc33ce52e45cd31cfbea2cb79e (diff)
downloadphorkie-6d0777840e50ce98f3d96629b4e92bbdccd3001c.tar.gz
phorkie-6d0777840e50ce98f3d96629b4e92bbdccd3001c.zip
first code that allows you to create pastes and view them
Diffstat (limited to 'www/index.php')
-rw-r--r--www/index.php52
1 files changed, 52 insertions, 0 deletions
diff --git a/www/index.php b/www/index.php
index e69de29..5276bf2 100644
--- a/www/index.php
+++ b/www/index.php
@@ -0,0 +1,52 @@
+<?php
+/**
+ * Show paste creation form
+ *
+ * Elements:
+ * - description
+ * - file name (default: default.php)
+ * - content
+ *
+ * Creates and redirects to display page
+ */
+require_once 'www-header.php';
+
+if (isset($_POST['file'])) {
+ //save
+ $repoDir = $GLOBALS['phorkie']['cfg']['repos'];
+ $n = count(glob($repoDir . '/*', GLOB_ONLYDIR));
+ $dir = $repoDir . '/' . $n . '/';
+ mkdir($dir, 0777);//FIXME
+ $vc = new VersionControl_Git($dir);
+ $vc->initRepository();
+ file_put_contents($dir . '.git/description', $_POST['description']);
+
+ foreach ($_POST['file'] as $num => $arFile) {
+ if ($arFile['name'] != '') {
+ $fname = $arFile['name'];
+ } else {
+ $fname = 'phork' . $num . '.' . $arFile['type'];
+ }
+ $fpath = $dir . $fname;
+ file_put_contents($fpath, $arFile['content']);
+ //fixme: let the class do that when it is able to
+ $command = $vc->getCommand('add')
+ ->addArgument($fname)
+ ->execute();
+ }
+ $command = $vc->getCommand('commit')
+ ->setOption('message', 'initial paste')
+ ->execute();
+ //redirect to phork
+ redirect($n);
+}
+
+$phork = array(
+ '1' => array(
+ 'filename' => '',
+ 'content' => '',
+ 'type' => ''
+ )
+);
+render('index', array('file' => $phork, 'description' => ''));
+?> \ No newline at end of file