fix gist.github.com clone urls
[phorkie.git] / www / fork-remote.php
index 4d9ca34f370a5167706bee930535ab792ffc894d..f41f98134b49b862445e2dac30cdc9e94d605e1f 100644 (file)
@@ -8,8 +8,12 @@ require_once 'www-header.php';
 
 $error = null;
 $urls  = null;
-if (isset($_POST['remote_url'])) {
-    $fr = new ForkRemote($_POST['remote_url']);
+if (isset($_REQUEST['remote_url'])) {
+    if (substr($_REQUEST['remote_url'], 0, 9) == 'web+fork:') {
+        $_REQUEST['remote_url'] = substr($_REQUEST['remote_url'], 9);
+    }
+
+    $fr = new ForkRemote($_REQUEST['remote_url']);
     if (false === $fr->parse()) {
         //no url found
         $error = $fr->error;
@@ -19,7 +23,9 @@ if (isset($_POST['remote_url'])) {
         }
         $forker = new Forker();
         try {
-            $new = $forker->forkRemote($gitUrl, $fr->getUrl());
+            $new = $forker->forkRemote(
+                $gitUrl['url'], $fr->getUrl(), $gitUrl['title']
+            );
             redirect($new->getLink('display', null, true));
         } catch (\Exception $e) {
             $error = $e->getMessage();
@@ -43,7 +49,7 @@ if (is_array($urls)) {
 render(
     'fork-remote',
     array(
-        'remote_url' => isset($_POST['remote_url']) ? $_POST['remote_url'] : '',
+        'remote_url' => isset($_REQUEST['remote_url']) ? $_REQUEST['remote_url'] : '',
         'error'      => $error,
         'urls'       => $urls,
         'urlselsize' => $selsize,