summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dzaporozhets@sphereconsultinginc.com>2011-12-30 08:54:42 +0200
committerDmitriy Zaporozhets <dzaporozhets@sphereconsultinginc.com>2011-12-30 08:54:42 +0200
commit0f627a65f43e1b6bfce059bf1750075fb589e583 (patch)
tree72c4347d7838d5b04bb2166bc2f2f01fe61ff78d
parentc1c903fb955cbee1afe3bd10944d6c218b576b15 (diff)
downloadgitlab-ce-0f627a65f43e1b6bfce059bf1750075fb589e583.tar.gz
Project tab r1 is finished
-rw-r--r--app/assets/stylesheets/projects.css.scss5
-rw-r--r--app/controllers/projects_controller.rb10
-rw-r--r--app/views/dashboard/_sidebar.html.haml2
-rw-r--r--app/views/layouts/project.html.haml2
-rw-r--r--app/views/projects/_project_head.html.haml19
-rw-r--r--app/views/projects/_team.html.haml4
-rw-r--r--app/views/projects/_tile.html.haml2
-rw-r--r--app/views/projects/activities.html.haml13
-rw-r--r--app/views/projects/edit.html.erb1
-rw-r--r--app/views/projects/edit.html.haml69
-rw-r--r--app/views/projects/info.html.haml28
-rw-r--r--app/views/projects/show.html.haml15
-rw-r--r--app/views/projects/update.js.haml2
-rw-r--r--app/views/snippets/index.html.haml3
-rw-r--r--config/routes.rb4
-rw-r--r--spec/requests/projects_spec.rb2
16 files changed, 128 insertions, 53 deletions
diff --git a/app/assets/stylesheets/projects.css.scss b/app/assets/stylesheets/projects.css.scss
index f73c063d74b..6916d65cfa5 100644
--- a/app/assets/stylesheets/projects.css.scss
+++ b/app/assets/stylesheets/projects.css.scss
@@ -573,7 +573,6 @@ h4.middle-panel {
.tab {
font-weight: bold;
- text-transform: uppercase;
border-right: 1px solid #ddd;
background:none;
padding: 10px;
@@ -600,7 +599,9 @@ h4.middle-panel {
}
}
.activities-tab span { background: url("images.png") no-repeat -161px -1px; }
-.stat-tab, .team-tab, .snippets-tab span { background: url("images.png") no-repeat -38px -77px; }
+.stat-tab span,
+.team-tab span,
+.snippets-tab span { background: url("images.png") no-repeat -38px -77px; }
.files-tab span { background: url("images.png") no-repeat -112px -23px; }
.merge-notes-tab span { background: url("images.png") no-repeat -161px -1px; }
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index 02495a225e9..2fcb7e62e5b 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -57,7 +57,7 @@ class ProjectsController < ApplicationController
def update
respond_to do |format|
if project.update_attributes(params[:project])
- format.html { redirect_to project, :notice => 'Project was successfully updated.' }
+ format.html { redirect_to info_project_path(project), :notice => 'Project was successfully updated.' }
format.js
else
format.html { render action: "edit" }
@@ -67,16 +67,16 @@ class ProjectsController < ApplicationController
end
def show
+ return render "projects/empty" unless @project.repo_exists? && @project.has_commits?
+ limit = (params[:limit] || 20).to_i
+ @activities = @project.cached_updates(limit)
end
def files
@notes = @project.notes.where("attachment != 'NULL'").order("created_at DESC")
end
- def activities
- return render "projects/empty" unless @project.repo_exists? && @project.has_commits?
- limit = (params[:limit] || 20).to_i
- @activities = @project.cached_updates(limit)
+ def info
end
#
diff --git a/app/views/dashboard/_sidebar.html.haml b/app/views/dashboard/_sidebar.html.haml
index dfe4abda6f2..9f6378b49a7 100644
--- a/app/views/dashboard/_sidebar.html.haml
+++ b/app/views/dashboard/_sidebar.html.haml
@@ -6,7 +6,7 @@
%ol.project-list
- @projects.each do |project|
%li
- %a{:href => activities_project_path(project)}
+ %a{:href => project_path(project)}
%span.arrow →
%span.project-name= project.name
%span.time
diff --git a/app/views/layouts/project.html.haml b/app/views/layouts/project.html.haml
index 44cd1279171..d67c682e6aa 100644
--- a/app/views/layouts/project.html.haml
+++ b/app/views/layouts/project.html.haml
@@ -23,7 +23,7 @@
.project-sidebar
.fixed
%aside
- = link_to "Project", project_path(@project), :class => (current_page?(:controller => "projects", :action => "activities", :id => @project) || controller.controller_name == "snippets" || current_page?(:controller => "projects", :action => "team", :id => @project) || controller.controller_name == "team_members" || current_page?(project_path(@project))) ? "current" : nil
+ = link_to "Project", project_path(@project), :class => (current_page?(:controller => "projects", :action => "show", :id => @project) || controller.controller_name == "snippets" || current_page?(:controller => "projects", :action => "team", :id => @project) || controller.controller_name == "team_members" || current_page?(project_path(@project))) ? "current" : nil
= link_to "Tree", tree_project_ref_path(@project, @project.root_ref), :class => current_page?(:controller => "refs", :action => "tree", :project_id => @project, :id => @ref || @project.root_ref ) ? "current" : nil
= link_to "Commits", project_commits_path(@project), :class => current_page?(:controller => "commits", :action => "index", :project_id => @project) ? "current" : nil
= link_to "Network graph", graph_project_path(@project), :class => current_page?(:controller => "projects", :action => "graph", :id => @project) ? "current" : nil
diff --git a/app/views/projects/_project_head.html.haml b/app/views/projects/_project_head.html.haml
index c9aab4f779b..0a9e30944b2 100644
--- a/app/views/projects/_project_head.html.haml
+++ b/app/views/projects/_project_head.html.haml
@@ -1,26 +1,17 @@
-%div
- -#- if can? current_user, :admin_project, @project
- -#%span.entity-info
- -#= link_to edit_project_path(@project) do
- -#.entity-button
- -#Edit Project
- -#%i
-
- -#%h2= @project.name
.merge-tabs
- = link_to activities_project_path(@project), :class => "activities-tab tab #{'active' if current_page?(activities_project_path(@project)) }" do
+ = link_to project_path(@project), :class => "activities-tab tab #{'active' if current_page?(project_path(@project)) }" do
%span
Activities
- = link_to project_path(@project), :class => "stat-tab tab" do
+ = link_to info_project_path(@project), :class => "stat-tab tab #{'active' if current_page?(info_project_path(@project)) || current_page?(edit_project_path(@project)) }" do
%span
Info
- = link_to team_project_path(@project), :class => "team-tab tab" do
+ = link_to team_project_path(@project), :class => "team-tab tab #{'active' if current_page?(team_project_path(@project)) }" do
%span
Team
- = link_to files_project_path(@project), :class => "files-tab tab" do
+ = link_to files_project_path(@project), :class => "files-tab tab #{'active' if current_page?(files_project_path(@project)) }" do
%span
Files
- = link_to project_snippets_path(@project), :class => "snippets-tab tab" do
+ = link_to project_snippets_path(@project), :class => "snippets-tab tab #{'active' if current_page?(project_snippets_path(@project)) }" do
%span
Snippets
diff --git a/app/views/projects/_team.html.haml b/app/views/projects/_team.html.haml
index 7c647e33e9b..6cda3b9b103 100644
--- a/app/views/projects/_team.html.haml
+++ b/app/views/projects/_team.html.haml
@@ -1,9 +1,7 @@
-%h2.icon
- %span>
- Team
- if can? current_user, :admin_team_member, @project
%div#new-member-holder
.right= link_to "Add new", new_project_team_member_path(@project), :remote => true, :class => "grey-button"
+ .clear
%br
%table.round-borders#team-table
%thead
diff --git a/app/views/projects/_tile.html.haml b/app/views/projects/_tile.html.haml
index 8d0ad21f269..d9549045058 100644
--- a/app/views/projects/_tile.html.haml
+++ b/app/views/projects/_tile.html.haml
@@ -2,7 +2,7 @@
- projects.each_with_index do |project, i|
%div.grid_1.projects_selector
%div{ :class => "project-box ui-box ui-box-big" }
- = link_to activities_project_path(project) do
+ = link_to project_path(project) do
%h3= truncate(project.name, :length => 20)
.data
%p.title.repository.git_url_wrapper
diff --git a/app/views/projects/activities.html.haml b/app/views/projects/activities.html.haml
deleted file mode 100644
index bbc31a599f4..00000000000
--- a/app/views/projects/activities.html.haml
+++ /dev/null
@@ -1,13 +0,0 @@
-- content_for(:body_class, "project-page dashboard")
-
-= render "project_head"
-#news-feed.news-feed
- .project-box.project-updates.ui-box.ui-box-small.ui-box-big
- - @activities.each do |update|
- = render "projects/feed", :update => update, :project => @project
-
-:javascript
- function updateDashboard(){
- $('.project-content').load("#{escape_javascript(project_path(@project))} .project-content>*");
- }
- setInterval("updateDashboard()", 300000);
diff --git a/app/views/projects/edit.html.erb b/app/views/projects/edit.html.erb
deleted file mode 100644
index 2d3436368bd..00000000000
--- a/app/views/projects/edit.html.erb
+++ /dev/null
@@ -1 +0,0 @@
-<%= render 'form' %>
diff --git a/app/views/projects/edit.html.haml b/app/views/projects/edit.html.haml
new file mode 100644
index 00000000000..ecd6e6b49e3
--- /dev/null
+++ b/app/views/projects/edit.html.haml
@@ -0,0 +1,69 @@
+= render "project_head"
+
+= form_for(@project, :remote => true) do |f|
+ %div
+ %span.entity-info
+ = link_to info_project_path(@project) do
+ .entity-button
+ Info
+ %i
+ %h2= @project.name
+ %hr
+ %table.no-borders
+ -if @project.errors.any?
+ %tr
+ %td{:colspan => 2}
+ #error_explanation
+ - @project.errors.full_messages.each do |msg|
+ %span= msg
+ %br
+
+ %tr
+ %td= f.label :name
+ %td= f.text_field :name, :placeholder => "Example Project"
+ %tr
+ %td
+ .left= f.label :path
+ %cite.right= "git@#{GIT_HOST["host"]}:"
+ %td
+ = f.text_field :path, :placeholder => "example_project", :disabled => !@project.new_record?
+ %tr
+ %td
+ .left= f.label :code
+ %cite.right= "http://#{GIT_HOST["host"]}/"
+ %td= f.text_field :code, :placeholder => "example"
+
+ - unless @project.new_record? || @project.heads.empty?
+ %tr
+ %td= f.label :default_branch, "Default Branch"
+ %td= f.select(:default_branch, @project.heads.map(&:name), {}, :style => "width:300px;")
+
+ %tr
+ %td= f.label :description
+ %td= f.text_area :description, :placeholder => "project description", :style => "height:50px"
+
+ %br
+
+ .merge-tabs
+ = f.submit 'Save', :class => "grey-button"
+ &nbsp;
+ - unless @project.new_record?
+ .right
+ = link_to 'Remove', @project, :confirm => 'Are you sure?', :method => :delete, :class => "red-button"
+
+%div{ :class => "ajax_loader", :style => "display:none;height:200px;"}
+ %center
+ = image_tag "ajax-loader.gif", :class => "append-bottom"
+ %h3.prepend-top Updating project &amp; repository. Please wait for few minutes
+
+:javascript
+ $('.edit_project').bind('ajax:before', function() {
+ $(".edit_project").hide();
+ $('.ajax_loader').show();
+ });
+
+:javascript
+ $(function(){
+ $('form #project_default_branch').chosen();
+ })
+
diff --git a/app/views/projects/info.html.haml b/app/views/projects/info.html.haml
new file mode 100644
index 00000000000..787ad06d30e
--- /dev/null
+++ b/app/views/projects/info.html.haml
@@ -0,0 +1,28 @@
+= render "project_head"
+
+%div
+ %span.entity-info
+ = link_to edit_project_path(@project) do
+ .entity-button
+ Edit
+ %i
+ %h2= @project.name
+ %hr
+
+%table.no-borders
+ %tr
+ %td Name
+ %td= @project.name
+
+ %tr
+ %td Slug
+ %td= @project.code
+
+ %tr
+ %td Created
+ %td= @project.created_at.stamp("Aug 21, 2011")
+
+ %tr
+ %td{:colspan => 2}= simple_format @project.description
+
+
diff --git a/app/views/projects/show.html.haml b/app/views/projects/show.html.haml
index bc78e99d310..bbc31a599f4 100644
--- a/app/views/projects/show.html.haml
+++ b/app/views/projects/show.html.haml
@@ -1,6 +1,13 @@
-= render "project_head"
-.stats
- - unless @project.description.empty?
- %h3= simple_format @project.description
+- content_for(:body_class, "project-page dashboard")
+= render "project_head"
+#news-feed.news-feed
+ .project-box.project-updates.ui-box.ui-box-small.ui-box-big
+ - @activities.each do |update|
+ = render "projects/feed", :update => update, :project => @project
+:javascript
+ function updateDashboard(){
+ $('.project-content').load("#{escape_javascript(project_path(@project))} .project-content>*");
+ }
+ setInterval("updateDashboard()", 300000);
diff --git a/app/views/projects/update.js.haml b/app/views/projects/update.js.haml
index 0188f083735..70d8490ebe2 100644
--- a/app/views/projects/update.js.haml
+++ b/app/views/projects/update.js.haml
@@ -1,6 +1,6 @@
- if @project.valid?
:plain
- location.href = "#{project_path(@project, :notice => 'Project was successfully updated.')}";
+ location.href = "#{info_project_path(@project, :notice => 'Project was successfully updated.')}";
- else
:plain
$(".edit_project").replaceWith("#{escape_javascript(render('form'))}");
diff --git a/app/views/snippets/index.html.haml b/app/views/snippets/index.html.haml
index 0c83bf9d732..9af12f74c2b 100644
--- a/app/views/snippets/index.html.haml
+++ b/app/views/snippets/index.html.haml
@@ -1,7 +1,4 @@
= render "projects/project_head"
-%h2.icon
- %span>
- Snippets
- if can? current_user, :write_snippet, @project
.right= link_to 'New Snippet', new_project_snippet_path(@project), :class => "grey-button append-bottom-10"
diff --git a/config/routes.rb b/config/routes.rb
index 2812b1502e9..5888096653a 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -42,9 +42,7 @@ Gitlab::Application.routes.draw do
get "team"
get "wall"
get "graph"
- get "activities"
- get "branches"
- get "tags"
+ get "info"
get "files"
end
diff --git a/spec/requests/projects_spec.rb b/spec/requests/projects_spec.rb
index b0a52dcb3c1..391bc3e5d2e 100644
--- a/spec/requests/projects_spec.rb
+++ b/spec/requests/projects_spec.rb
@@ -140,7 +140,7 @@ describe "Projects" do
end
it "should be correct path" do
- current_path.should == project_path(@project)
+ current_path.should == info_project_path(@project)
end
it "should show project" do