Showing 2 changed files with 23 additions and 47 deletions
+21 -34
templates/settings.html.ep
... ...
@@ -118,18 +118,17 @@
118 118
       
119 119
       eval { app->manager->delete_project($user, $project) };
120 120
       if ($@) {
121
-        app->log->fatal($@);
122
-        $self->render(json => {ok => 0, message => 'Internal error'});
121
+        app->log->error("/$user/$project/settings:$@");
122
+        $errors = ['Internal Error'];
123 123
       }
124 124
       else {
125
-        $self->render(json => {ok => 1});
125
+        flash(message => "Repository $project is deleted.");
126
+        $self->redirect_to("/$user");
127
+        $self->finish_rendering;
128
+        return;
126 129
       }
127 130
     }
128
-    else {
129
-      $self->render(json => {ok => 0, message => 'Invalid paramter'});
130
-    }
131
-    
132
-    return $self->res->body;
131
+    else { $errors = $vresult->messages }
133 132
   }
134 133
 %>
135 134
 
... ...
@@ -166,26 +165,9 @@
166 165
             
167 166
       // Delete project
168 167
       $('#delete').on('click', function () {
169
-        var deleted_project = $('input[name="deleted-project"]').val();
170
-        var url = "<%= url_for %>";
171
-        var data = {
172
-          op : "delete-project",
173
-          user: "<%= $user %>",
174
-          project: "<%= $project %>",
175
-          "deleted-project" : deleted_project,
176
-        };
177
-        $.post(url, data, function (result) {
178
-          if (result.ok) {
179
-            location.href = "<%= url_for("/$user")->query(deleted_project => $project) %>";
180
-          }
181
-          else {
182
-            $('#modal-message-text').text('Error:' + result.message);
183
-            $('#modal-message').modal('show');
184
-          }
185
-        });
168
+        $('#form-delete-project').submit();
186 169
       });
187 170
     });
188
-  
189 171
   % end
190 172
   
191 173
   %= include '/include/header';
... ...
@@ -229,7 +211,7 @@
229 211
           % my $branches = $git->branches($user, $project);
230 212
           % my $branch_names = [map { $_->{name} } @$branches];
231 213
           % my $default_branch = app->manager->default_branch($user, $project);
232
-          % push @$branch_names,  unless @$branch_names;
214
+          % push @$branch_names, $default_branch unless @$branch_names;
233 215
           % param('default-branch', $default_branch);
234 216
           %= select_field 'default-branch' => $branch_names, style => 'margin-top:5px';
235 217
         </form>
... ...
@@ -241,13 +223,18 @@
241 223
         <h4 style="color:white">Danger Zone</h4>
242 224
       </div>
243 225
       <div class="border-gray" style="padding:5px;border-top:none">
244
-        <div><b>Delete this repository</b></div>
245
-        <span class="muted">
246
-          Once you delete a repository, there is no going back.
247
-        </span>
248
-        <a style="color:red" href="#delete-confirm" role="button" class="btn" data-toggle="modal">
249
-          Delete this repository
250
-        </a>
226
+        <form id="form-delete-project" action="<%= url_for->query(op => 'delete-project') %>" method="post">
227
+          <div><b>Delete this repository</b></div>
228
+          <span class="muted">
229
+            Once you delete a repository, there is no going back.
230
+          </span>
231
+          <a style="color:red" href="#delete-confirm" role="button" class="btn" data-toggle="modal">
232
+            Delete this repository
233
+          </a>
234
+          %= hidden_field user => $user;
235
+          %= hidden_field project => $project;
236
+        </form>
237
+      </div>
251 238
     </div>
252 239
   </div>
253 240
   
+2 -13
templates/user.html.ep
... ...
@@ -24,24 +24,13 @@
24 24
 
25 25
   <div class="container">
26 26
     <div>
27
-      % if (my $deleted_project = flash('deleted_project')) {
28
-        <div class="alert alert-success">
29
-          <button type="button" class="close" data-dismiss="alert">&times;</button>
30
-          Repository <%= $deleted_project %> is deleted.
31
-        </div>
32
-      % }
33
-    
27
+      %= include '/include/message', message => flash('message');
28
+      
34 29
       <ul class="breadcrumb" style="margin-top:10px">
35 30
         <li><a href="<%= url_for('/') %>"><i class="icon-home"></i></a></li>
36 31
         /
37 32
         <li><a href="<%= url_for("/$user") %>"><%= $user %></a></li>
38 33
       </ul>
39
-      % if (my $message = flash('delete_message')) {
40
-        <div class="alert alert-success">
41
-          <button type="button" class="close" data-dismiss="alert">&times;</button>
42
-          <strong><%= $message %></strong>
43
-        </div>
44
-      % }
45 34
 
46 35
       <h3>Repositories</h3>
47 36