test added for changes at documentable's view
This commit is contained in:
@@ -11,10 +11,9 @@ App.Documentable =
|
|||||||
|
|
||||||
$('#nested-documents').on 'cocoon:after-insert', (e, nested_document) ->
|
$('#nested-documents').on 'cocoon:after-insert', (e, nested_document) ->
|
||||||
input = $(nested_document).find('.js-document-attachment')
|
input = $(nested_document).find('.js-document-attachment')
|
||||||
|
input["lockUpload"] = $(nested_document).closest('#nested-documents').find('.document:visible').length >= $('#nested-documents').data('max-documents-allowed')
|
||||||
App.Documentable.initializeDirectUploadInput(input)
|
App.Documentable.initializeDirectUploadInput(input)
|
||||||
|
App.Documentable.lockUploads() if input["lockUpload"]
|
||||||
if $(nested_document).closest('#nested-documents').find('.document:visible').length >= $('#nested-documents').data('max-documents-allowed')
|
|
||||||
App.Documentable.lockUploads()
|
|
||||||
|
|
||||||
initializeDirectUploadInput: (input) ->
|
initializeDirectUploadInput: (input) ->
|
||||||
|
|
||||||
@@ -65,6 +64,9 @@ App.Documentable =
|
|||||||
e.stopPropagation()
|
e.stopPropagation()
|
||||||
App.Documentable.doDeleteCachedAttachmentRequest(this.href, data)
|
App.Documentable.doDeleteCachedAttachmentRequest(this.href, data)
|
||||||
|
|
||||||
|
App.Documentable.showNotice() if input["lockUpload"]
|
||||||
|
|
||||||
|
|
||||||
progress: (e, data) ->
|
progress: (e, data) ->
|
||||||
progress = parseInt(data.loaded / data.total * 100, 10)
|
progress = parseInt(data.loaded / data.total * 100, 10)
|
||||||
$(data.progressBar).find('.loading-bar').css 'width', progress + '%'
|
$(data.progressBar).find('.loading-bar').css 'width', progress + '%'
|
||||||
@@ -114,13 +116,15 @@ App.Documentable =
|
|||||||
$(data.errorContainer).append(errors)
|
$(data.errorContainer).append(errors)
|
||||||
|
|
||||||
lockUploads: ->
|
lockUploads: ->
|
||||||
$('#max-documents-notice').removeClass('hide')
|
|
||||||
$('#new_document_link').addClass('hide')
|
$('#new_document_link').addClass('hide')
|
||||||
|
|
||||||
unlockUploads: ->
|
unlockUploads: ->
|
||||||
$('#max-documents-notice').addClass('hide')
|
$('#max-documents-notice').addClass('hide')
|
||||||
$('#new_document_link').removeClass('hide')
|
$('#new_document_link').removeClass('hide')
|
||||||
|
|
||||||
|
showNotice: ->
|
||||||
|
$('#max-documents-notice').removeClass('hide')
|
||||||
|
|
||||||
doDeleteCachedAttachmentRequest: (url, data) ->
|
doDeleteCachedAttachmentRequest: (url, data) ->
|
||||||
$.ajax
|
$.ajax
|
||||||
type: "POST"
|
type: "POST"
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ module DocumentsHelper
|
|||||||
remote: true,
|
remote: true,
|
||||||
class: "delete remove-cached-attachment"
|
class: "delete remove-cached-attachment"
|
||||||
else
|
else
|
||||||
link_to_remove_association t('documents.form.delete_button'), builder, class: "delete remove-document"
|
link_to_remove_association document.new_record? ? t('documents.form.cancel_button') : t('documents.form.delete_button') , builder, class: "delete remove-document"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
association_insertion_method: "append"
|
association_insertion_method: "append"
|
||||||
} %>
|
} %>
|
||||||
|
|
||||||
<div id="max-documents-notice" class="max-documents-notice callout warning text-center <%= "hide" unless max_documents_allowed?(documentable) %>">
|
<div id="max-documents-notice" class="max-documents-notice callout primary text-center <%= "hide" unless max_documents_allowed?(documentable) %>">
|
||||||
<%= t "documents.max_documents_allowed_reached_html" %>
|
<%= t "documents.max_documents_allowed_reached_html" %>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ en:
|
|||||||
title_placeholder: Add a descriptive title for the document
|
title_placeholder: Add a descriptive title for the document
|
||||||
attachment_label: Choose document
|
attachment_label: Choose document
|
||||||
delete_button: Remove document
|
delete_button: Remove document
|
||||||
|
cancel_button: Cancelar
|
||||||
note: "You can upload up to a maximum of %{max_documents_allowed} documents of following content types: %{accepted_content_types}, up to %{max_file_size} MB per file."
|
note: "You can upload up to a maximum of %{max_documents_allowed} documents of following content types: %{accepted_content_types}, up to %{max_file_size} MB per file."
|
||||||
add_new_document: Add new document
|
add_new_document: Add new document
|
||||||
actions:
|
actions:
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ es:
|
|||||||
title_placeholder: Añade un título descriptivo para el documento
|
title_placeholder: Añade un título descriptivo para el documento
|
||||||
attachment_label: Selecciona un documento
|
attachment_label: Selecciona un documento
|
||||||
delete_button: Eliminar documento
|
delete_button: Eliminar documento
|
||||||
|
cancel_button: Cancelar
|
||||||
note: 'Puedes subir hasta un máximo de %{max_documents_allowed} documentos en los formatos: %{accepted_content_types}, y de hasta %{max_file_size} MB por archivo.'
|
note: 'Puedes subir hasta un máximo de %{max_documents_allowed} documentos en los formatos: %{accepted_content_types}, y de hasta %{max_file_size} MB por archivo.'
|
||||||
add_new_document: Añadir nuevo documento
|
add_new_document: Añadir nuevo documento
|
||||||
actions:
|
actions:
|
||||||
|
|||||||
@@ -16,4 +16,4 @@ describe ApplicationController do
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -52,6 +52,13 @@ shared_examples "nested documentable" do |login_as_name, documentable_factory_na
|
|||||||
click_link "Add new document"
|
click_link "Add new document"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
within "#nested-documents" do
|
||||||
|
find_all(".document input[type=file]", visible: true).each do |document|
|
||||||
|
attach_file(document, "spec/fixtures/files/empty.pdf", make_visible: true)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
expect(page).to have_content I18n.t 'documents.buttons.destroy_document'
|
||||||
expect(page).to have_css ".max-documents-notice", visible: true
|
expect(page).to have_css ".max-documents-notice", visible: true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user