Showing 2 changed files with 24 additions and 24 deletions
+24 -22
lib/Gitprep/Manager.pm
... ...
@@ -150,7 +150,9 @@ sub default_branch {
150 150
 }
151 151
 
152 152
 sub fork_project {
153
-  my ($self, $user, $original_user, $project) = @_;
153
+  my ($self, $user_id, $original_user_id, $project_id) = @_;
154
+  
155
+  my $original_user_row_id = $self->api->get_user_row_id($original_user_id);
154 156
   
155 157
   # Fork project
156 158
   my $dbi = $self->app->dbi;
... ...
@@ -159,25 +161,21 @@ sub fork_project {
159 161
     $dbi->connector->txn(sub {
160 162
       
161 163
       # Original project id
162
-      my $project_info = $dbi->model('project')->select(
163
-        ['original_project', 'private'],
164
-        where => {user => $original_user, id => $project}
164
+      my $project = $dbi->model('project')->select(
165
+        ['row_id', 'private'],
166
+        where => {user => $original_user_row_id, id => $project_id}
165 167
       )->one;
166 168
       
167
-      my $original_project = $project_info->{original_project};
168
-      
169
-      croak "Can't get original project id"
170
-        unless defined $original_project && $original_project > 0;
169
+      use D;d [$original_user_row_id, $project_id, $project];
171 170
       
172 171
       # Create project
173 172
       eval {
174 173
         $self->_create_project(
175
-          $user,
176
-          $project,
174
+          $user_id,
175
+          $project_id,
177 176
           {
178
-            original_user => $original_user,
179
-            original_project => $original_project,
180
-            private => $project_info->{private}
177
+            original_project => $project->{row_id},
178
+            private => $project->{private}
181 179
           }
182 180
         );
183 181
       };
... ...
@@ -185,7 +183,7 @@ sub fork_project {
185 183
       
186 184
       # Create repository
187 185
       eval {
188
-        $self->_fork_rep($original_user, $project, $user, $project);
186
+        $self->_fork_rep($original_user_id, $project_id, $user_id, $project_id);
189 187
       };
190 188
       croak $error = $@ if $@;
191 189
     });
... ...
@@ -247,7 +245,7 @@ sub member_projects {
247 245
 }
248 246
 
249 247
 sub create_project {
250
-  my ($self, $user, $project, $opts) = @_;
248
+  my ($self, $user_id, $project_id, $opts) = @_;
251 249
   
252 250
   my $params = {};
253 251
   if ($opts->{private}) {
... ...
@@ -259,9 +257,9 @@ sub create_project {
259 257
   my $error;
260 258
   eval {
261 259
     $dbi->connector->txn(sub {
262
-      eval { $self->_create_project($user, $project, $params) };
260
+      eval { $self->_create_project($user_id, $project_id, $params) };
263 261
       croak $error = $@ if $@;
264
-      eval {$self->_create_rep($user, $project, $opts) };
262
+      eval {$self->_create_rep($user_id, $project_id, $opts) };
265 263
       croak $error = $@ if $@;
266 264
     });
267 265
   };
... ...
@@ -930,13 +928,17 @@ sub parse_authorized_keys_file {
930 928
 }
931 929
 
932 930
 sub _create_project {
933
-  my ($self, $user, $project, $params) = @_;
931
+  my ($self, $user_id, $project_id, $params) = @_;
932
+  
933
+  my $user_row_id = $self->api->get_user_row_id($user_id);
934 934
   $params ||= {};
935
+  $params->{user} = $user_row_id;
936
+  $params->{id} = $project_id;
935 937
   
936 938
   # Create project
937 939
   my $dbi = $self->app->dbi;
938 940
   $dbi->connector->txn(sub {
939
-    $dbi->model('project')->insert($params, id => [$user, $project]);
941
+    $dbi->model('project')->insert($params);
940 942
   });
941 943
 }
942 944
 
... ...
@@ -1175,15 +1177,15 @@ sub _exists_rep {
1175 1177
 }
1176 1178
 
1177 1179
 sub _fork_rep {
1178
-  my ($self, $user, $project, $to_user, $to_project) = @_;
1180
+  my ($self, $user_id, $project_id, $to_user_id, $to_project_id) = @_;
1179 1181
   
1180 1182
   # Fork repository
1181 1183
   my $git = $self->app->git;
1182 1184
   
1183
-  my $rep_info = $self->app->rep_info($user, $project);
1185
+  my $rep_info = $self->app->rep_info($user_id, $project_id);
1184 1186
   my $rep_git_dir = $rep_info->{git_dir};
1185 1187
   
1186
-  my $to_rep_info = $self->app->rep_info($to_user, $to_project);
1188
+  my $to_rep_info = $self->app->rep_info($to_user_id, $to_project_id);
1187 1189
   my $to_rep_git_dir = $to_rep_info->{git_dir};
1188 1190
 
1189 1191
   my @cmd = (
-2
templates/user.html.ep
... ...
@@ -14,8 +14,6 @@
14 14
     where => {id => $user_id, admin => 0}
15 15
   )->one;
16 16
   
17
-  warn $user_id;
18
-  
19 17
   # Projects
20 18
   unless (app->manager->exists_user($user_id)) {
21 19
     $self->reply->not_found;