Update jQuery from 1.12.4 to 3.7.1
[phorkie.git] / www / fork.php
index 6bec5f03bd0cba3f5cf76ee0416a666519fa2761..cddf2bb516fdc4075f9c74b3fdfd9f9f15982a1c 100644 (file)
@@ -2,22 +2,20 @@
 /**
  * Fork a repository
  */
-namespace Phorkie;
+namespace phorkie;
+$reqWritePermissions = true;
 require_once 'www-header.php';
+
+if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
+    throw new Exception_Input('Forking only possible via POST');
+}
+
 $repo = new Repository();
 $repo->loadFromRequest();
 
-$rs = new Repositories();
-$new = $rs->createNew();
-$new->getVc()->getCommand('clone')
-    ->addArgument($repo->repoDir)
-    ->addArgument($new->repoDir)
-    ->execute();
-\copy($repo->repoDir . '/.git/description', $new->repoDir . '/.git/description');
-foreach (glob($new->repoDir . '/.git/hooks/*') as $hookfile) {
-    unlink($hookfile);
-}
+$forker = new Forker();
+$new    = $forker->forkLocal($repo);
 
-//FIXME: where to put fork source link?
-redirect($new->getLink('display'));
-?>
\ No newline at end of file
+FlashMessage::save('Paste has been forked');
+redirect($new->getLink('display', null, true));
+?>