Skip to content

Commit

Permalink
Revert "Move metadata functionality to new design system"
Browse files Browse the repository at this point in the history
This reverts commit 6c49914.
  • Loading branch information
syed-ali-tw committed Sep 30, 2024
1 parent 7fe087e commit ae91297
Show file tree
Hide file tree
Showing 9 changed files with 17 additions and 125 deletions.
1 change: 0 additions & 1 deletion app/assets/stylesheets/application.scss
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ $govuk-page-width: 1140px;
@import 'govuk_publishing_components/components/lead-paragraph';
@import 'govuk_publishing_components/components/notice';
@import 'govuk_publishing_components/components/previous-and-next-navigation';
@import 'govuk_publishing_components/components/radio';
@import 'govuk_publishing_components/components/search';
@import 'govuk_publishing_components/components/secondary-navigation';
@import 'govuk_publishing_components/components/select';
Expand Down
11 changes: 1 addition & 10 deletions app/controllers/artefacts_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,17 @@ def update
artefact = Artefact.find(updatable_params[:id])
if artefact.update_as(current_user, updatable_params)
UpdateWorker.perform_async(artefact.latest_edition_id)
show_success_message
flash[:notice] = "Metadata updated"
else
flash[:danger] = artefact.errors.full_messages.join("\n")
end

redirect_to metadata_artefact_path(artefact)
end

helper_method :formats

private

def show_success_message
if FeatureConstraint.new("design_system_edit")
flash[:success] = "Metadata has successfully updated".html_safe
else
flash[:notice] = "Metadata updated"
end
end

def formats
Artefact::FORMATS_BY_DEFAULT_OWNING_APP["publisher"] - Artefact::RETIRED_FORMATS
end
Expand Down
9 changes: 6 additions & 3 deletions app/controllers/editions_controller.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
require "edition_duplicator"
require "edition_progressor"

class EditionsController < InheritedResources::Base
include TabbedNavHelper
layout "design_system"

defaults resource_class: Edition, collection_name: "editions", instance_name: "resource"
Expand All @@ -11,11 +13,12 @@ def index

def show
@artefact = @resource.artefact

render action: "show"
end

alias_method :metadata, :show
def metadata
render action: "show"
end

def history
render action: "show"
Expand Down
14 changes: 2 additions & 12 deletions app/helpers/tabbed_nav_helper.rb
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
module TabbedNavHelper
def edition_nav_items(edition)
nav_items = []
items = %w[edit tagging metadata history admin related_external_links unpublish]

all_tab_names.each do |item|
items.each do |item|
nav_items << standard_nav_items(item, edition)
end

Expand All @@ -28,15 +29,4 @@ def edit_nav_item(label, href, current)
},
]
end

def current_tab_name
current_tab = (request.path.split("/") & all_tab_names).first
current_tab == "metadata" ? "metadata" : "temp_nav_text"
end

private

def all_tab_names
%w[edit tagging metadata history admin related_external_links unpublish]
end
end
44 changes: 0 additions & 44 deletions app/views/editions/secondary_nav_tabs/_metadata.html.erb

This file was deleted.

This file was deleted.

4 changes: 0 additions & 4 deletions app/views/editions/show.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,4 @@
<div class="govuk-grid-column-full">
<%= render partial: "secondary_navigation" %>
</div>

<div class="govuk-grid-column-two-thirds">
<%= render partial: "secondary_nav_tabs/#{current_tab_name}", :locals => { :publication => @resource } %>
</div>
</div>
21 changes: 2 additions & 19 deletions test/functional/editions_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,14 @@ class EditionsControllerTest < ActionController::TestCase

context "#show" do
setup do
artefact = FactoryBot.create(
artefact2 = FactoryBot.create(
:artefact,
slug: "test2",
kind: "guide",
name: "test",
owning_app: "publisher",
)
@guide = GuideEdition.create!(title: "test", slug: "test2", panopticon_id: artefact.id)
@guide = GuideEdition.create!(title: "test", slug: "test2", panopticon_id: artefact2.id)
end

should "requesting a publication that doesn't exist returns a 404" do
Expand All @@ -47,21 +47,4 @@ class EditionsControllerTest < ActionController::TestCase
assert_not_nil assigns(:resource)
end
end

context "#metadata" do
setup do
artefact = FactoryBot.create(
:artefact,
slug: "test2",
kind: "guide",
name: "test",
owning_app: "publisher",
)
@guide = GuideEdition.create!(title: "test", slug: "test2", panopticon_id: artefact.id)
end

should "alias to show method" do
assert EditionsController.new.method(:metadata).super_method.name.eql?(:show)
end
end
end
37 changes: 6 additions & 31 deletions test/integration/edition_edit_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,12 @@ class EditionEditTest < IntegrationTest
test_strategy = Flipflop::FeatureSet.current.test!
test_strategy.switch!(:design_system_edit, true)
stub_linkables
edition = FactoryBot.create(:guide_edition, title: "Edit page title", state: "draft")
visit edition_path(edition)
end

should "show document summary and title" do
edition = FactoryBot.create(:guide_edition, title: "Edit page title", state: "draft")
visit edition_path(edition)

assert page.has_title?("Edit page title")

row = find_all(".govuk-summary-list__row")
Expand All @@ -23,6 +24,9 @@ class EditionEditTest < IntegrationTest
end

should "show all the tabs for the edit" do
edition = FactoryBot.create(:guide_edition, title: "Edit page title", state: "draft")
visit edition_path(edition)

assert page.has_text?("Edit")
assert page.has_text?("Tagging")
assert page.has_text?("Metadata")
Expand All @@ -31,33 +35,4 @@ class EditionEditTest < IntegrationTest
assert page.has_text?("Related external links")
assert page.has_text?("Unpublish")
end

context "#metadata" do
setup do
click_link("Metadata")
end

should "'Metadata' header and an update button" do
within :css, ".gem-c-heading" do
assert page.has_text?("Metadata")
end
assert page.has_button?("Update")
end

should "show slug input box prefilled" do
assert page.has_text?("Slug")
assert page.has_text?("If you change the slug of a published page, the old slug will automatically redirect to the new one.")
assert page.has_field?("artefact[slug]", with: /slug/)
end

should "update and show success message" do
fill_in "artefact[slug]", with: "changed-slug"
choose("Welsh")
click_button("Update")

assert find(".gem-c-radio input[value='cy']").checked?
assert page.has_text?("Metadata has successfully updated")
assert page.has_field?("artefact[slug]", with: "changed-slug")
end
end
end

0 comments on commit ae91297

Please sign in to comment.