remove project edit from admin area. Redesigned project page in admin area
This commit is contained in:
parent
e292d7c17b
commit
d0df8a6ff8
4 changed files with 81 additions and 155 deletions
|
@ -19,34 +19,6 @@ class Admin::ProjectsController < Admin::ApplicationController
|
||||||
@users = @users.all
|
@users = @users.all
|
||||||
end
|
end
|
||||||
|
|
||||||
def edit
|
|
||||||
end
|
|
||||||
|
|
||||||
def team_update
|
|
||||||
@project.team.add_users_ids(params[:user_ids], params[:project_access])
|
|
||||||
|
|
||||||
redirect_to [:admin, @project], notice: 'Project was successfully updated.'
|
|
||||||
end
|
|
||||||
|
|
||||||
def update
|
|
||||||
project.creator = current_user unless project.creator
|
|
||||||
|
|
||||||
status = ::Projects::UpdateContext.new(project, current_user, params).execute(:admin)
|
|
||||||
|
|
||||||
if status
|
|
||||||
redirect_to [:admin, @project], notice: 'Project was successfully updated.'
|
|
||||||
else
|
|
||||||
render action: "edit"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def destroy
|
|
||||||
@project.team.truncate
|
|
||||||
@project.destroy
|
|
||||||
|
|
||||||
redirect_to admin_projects_path, notice: 'Project was successfully deleted.'
|
|
||||||
end
|
|
||||||
|
|
||||||
protected
|
protected
|
||||||
|
|
||||||
def project
|
def project
|
||||||
|
|
|
@ -52,8 +52,8 @@
|
||||||
%i.icon-lock.cgreen
|
%i.icon-lock.cgreen
|
||||||
= link_to project.name_with_namespace, [:admin, project]
|
= link_to project.name_with_namespace, [:admin, project]
|
||||||
.pull-right
|
.pull-right
|
||||||
= link_to 'Edit', edit_admin_project_path(project), id: "edit_#{dom_id(project)}", class: "btn btn-small"
|
= link_to 'Edit', edit_project_path(project), id: "edit_#{dom_id(project)}", class: "btn btn-small"
|
||||||
= link_to 'Destroy', [:admin, project], confirm: "REMOVE #{project.name}? Are you sure?", method: :delete, class: "btn btn-small btn-remove"
|
= link_to 'Destroy', [project], confirm: "REMOVE #{project.name}? Are you sure?", method: :delete, class: "btn btn-small btn-remove"
|
||||||
- if @projects.blank?
|
- if @projects.blank?
|
||||||
%p.nothing_here_message 0 projects matches
|
%p.nothing_here_message 0 projects matches
|
||||||
- else
|
- else
|
||||||
|
|
|
@ -1,129 +1,87 @@
|
||||||
%h3.page_title
|
%h3.page_title
|
||||||
Project: #{@project.name_with_namespace}
|
Project: #{@project.name_with_namespace}
|
||||||
= link_to edit_admin_project_path(@project), class: "btn pull-right" do
|
= link_to edit_project_path(@project), class: "btn pull-right" do
|
||||||
%i.icon-edit
|
%i.icon-edit
|
||||||
Edit
|
Edit
|
||||||
|
%hr
|
||||||
|
.row
|
||||||
|
.span6
|
||||||
|
.ui-box
|
||||||
|
%h5.title
|
||||||
|
Project info:
|
||||||
|
%ul.well-list
|
||||||
|
%li
|
||||||
|
%span.light Name:
|
||||||
|
%strong= @project.name
|
||||||
|
%li
|
||||||
|
%span.light Namespace:
|
||||||
|
%strong
|
||||||
|
- if @project.namespace
|
||||||
|
= link_to @project.namespace.human_name, [:admin, @project.group || @project.owner]
|
||||||
|
- else
|
||||||
|
Global
|
||||||
|
%li
|
||||||
|
%span.light Owned by:
|
||||||
|
%strong
|
||||||
|
- if @project.owner
|
||||||
|
= link_to @project.owner_name, admin_user_path(@project.owner)
|
||||||
|
- else
|
||||||
|
(deleted)
|
||||||
|
|
||||||
|
%li
|
||||||
|
%span.light Created by:
|
||||||
|
%strong
|
||||||
|
= @project.creator.try(:name) || '(deleted)'
|
||||||
|
|
||||||
%br
|
%li
|
||||||
%table.zebra-striped
|
%span.light Created at:
|
||||||
%thead
|
%strong
|
||||||
%tr
|
= @project.created_at.stamp("March 1, 1999")
|
||||||
%th Project
|
|
||||||
%th
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Name:
|
|
||||||
%td
|
|
||||||
= @project.name
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Namespace:
|
|
||||||
%td
|
|
||||||
- if @project.namespace
|
|
||||||
= @project.namespace.human_name
|
|
||||||
- else
|
|
||||||
Global
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Owned by:
|
|
||||||
%td
|
|
||||||
- if @project.owner
|
|
||||||
= link_to @project.owner_name, admin_user_path(@project.owner)
|
|
||||||
- else
|
|
||||||
(deleted)
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Created by:
|
|
||||||
%td
|
|
||||||
= @project.creator.try(:name) || '(deleted)'
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Created at:
|
|
||||||
%td
|
|
||||||
= @project.created_at.stamp("March 1, 1999")
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Smart HTTP:
|
|
||||||
%td
|
|
||||||
= link_to @project.http_url_to_repo
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
SSH:
|
|
||||||
%td
|
|
||||||
= link_to @project.ssh_url_to_repo
|
|
||||||
- if @project.public
|
|
||||||
%tr.bgred
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Public Read-Only Code access:
|
|
||||||
%td
|
|
||||||
= check_box_tag 'public', nil, @project.public
|
|
||||||
|
|
||||||
- if @repository
|
%li
|
||||||
%table.zebra-striped
|
%span.light http:
|
||||||
%thead
|
%strong
|
||||||
%tr
|
= link_to @project.http_url_to_repo
|
||||||
%th Repository
|
%li
|
||||||
%th
|
%span.light ssh:
|
||||||
%tr
|
%strong
|
||||||
%td
|
= link_to @project.ssh_url_to_repo
|
||||||
%b
|
%li
|
||||||
FS Path:
|
%span.light fs:
|
||||||
%td
|
%strong
|
||||||
%code= @repository.path_to_repo
|
= @repository.path_to_repo
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
Last commit at:
|
|
||||||
%td
|
|
||||||
= last_commit(@project)
|
|
||||||
|
|
||||||
%br
|
%li
|
||||||
%h5
|
%span.light last commit:
|
||||||
Team
|
%strong
|
||||||
%small
|
- if @repository
|
||||||
(#{@project.users.count})
|
= last_commit(@project)
|
||||||
%br
|
- else
|
||||||
%table.zebra-striped.team_members
|
never
|
||||||
%thead
|
|
||||||
%tr
|
|
||||||
%th Name
|
|
||||||
%th Project Access
|
|
||||||
%th Repository Access
|
|
||||||
%th
|
|
||||||
|
|
||||||
- @project.users.each do |tm|
|
%li
|
||||||
%tr
|
%span.light access:
|
||||||
%td
|
%strong
|
||||||
= link_to tm.name, admin_user_path(tm)
|
- if @project.public
|
||||||
%td= @project.project_access_human(tm)
|
%span.cblue
|
||||||
%td= link_to 'Edit Access', edit_admin_project_member_path(@project, tm), class: "btn btn-small"
|
%i.icon-share
|
||||||
%td= link_to 'Remove from team', admin_project_member_path(@project, tm), confirm: 'Are you sure?', method: :delete, class: "btn btn-remove small"
|
Public
|
||||||
|
- else
|
||||||
%br
|
%span.cgreen
|
||||||
%h5 Add new team member
|
%i.icon-lock
|
||||||
%br
|
Private
|
||||||
= form_tag team_update_admin_project_path(@project), class: "bulk_import", method: :put do
|
.span6
|
||||||
%table.zebra-striped
|
.ui-box
|
||||||
%thead
|
%h5.title
|
||||||
%tr
|
Team
|
||||||
%th Users
|
%small
|
||||||
%th Project Access:
|
(#{@project.users.count})
|
||||||
|
= link_to project_team_index_path(@project), class: "btn btn-tiny" do
|
||||||
%tr
|
%i.icon-edit
|
||||||
%td= select_tag :user_ids, options_from_collection_for_select(@users , :id, :name), multiple: true, data: {placeholder: 'Select users'}, class: 'chosen span5'
|
Edit Team
|
||||||
%td= select_tag :project_access, options_for_select(Project.access_options), {class: "project-access-select chosen span3"}
|
%ul.well-list
|
||||||
|
- @project.users.each do |tm|
|
||||||
%tr
|
%li
|
||||||
%td= submit_tag 'Add', class: "btn btn-primary"
|
%strong
|
||||||
%td
|
= link_to tm.name, admin_user_path(tm)
|
||||||
Read more about project permissions
|
%span.pull-right.light= @project.project_access_human(tm)
|
||||||
%strong= link_to "here", help_permissions_path, class: "vlink"
|
|
||||||
|
|
|
@ -85,11 +85,7 @@ Gitlab::Application.routes.draw do
|
||||||
resource :logs, only: [:show]
|
resource :logs, only: [:show]
|
||||||
resource :resque, controller: 'resque', only: [:show]
|
resource :resque, controller: 'resque', only: [:show]
|
||||||
|
|
||||||
resources :projects, constraints: { id: /[a-zA-Z.\/0-9_\-]+/ }, except: [:new, :create] do
|
resources :projects, constraints: { id: /[a-zA-Z.\/0-9_\-]+/ }, only: [:index, :show] do
|
||||||
member do
|
|
||||||
get :team
|
|
||||||
put :team_update
|
|
||||||
end
|
|
||||||
scope module: :projects, constraints: { id: /[a-zA-Z.\/0-9_\-]+/ } do
|
scope module: :projects, constraints: { id: /[a-zA-Z.\/0-9_\-]+/ } do
|
||||||
resources :members, only: [:edit, :update, :destroy]
|
resources :members, only: [:edit, :update, :destroy]
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue