diff --git a/app/assets/stylesheets/publisher.scss b/app/assets/stylesheets/publisher.scss index f5b874445..663d45d38 100644 --- a/app/assets/stylesheets/publisher.scss +++ b/app/assets/stylesheets/publisher.scss @@ -123,24 +123,6 @@ } } - &:not(.with-location) .location-container { display: none; } - - &.with-location .loader { - height: 20px; - width: 20px; - } - &.with-location .location-container { - height: 30px; - margin-bottom: 0; - border-top: 1px dashed $border-grey; - input[type='text'] { - border: none; - color: $text-grey; - height: 20px; - margin-bottom: 0; - padding: 0; - } - } &.active #button_container { border-top: 1px solid $border-grey; } @@ -208,48 +190,6 @@ text-align: center; } - #publisher-images { - margin-right: 5px; - #file-upload, - #locator, - #poll_creator, - #hide_location { - text-decoration: none !important; - font-size: 16px; - line-height: $line-height-computed; - padding: 4px 2px; - i { - color: $text-grey; - } - &:hover{ - i { color: black; } - } - input[type='file'] { - cursor: pointer; - &::-webkit-file-upload-button { - cursor: pointer; - } - } - } - #hide_location { - display: none; - } - } - &.with-location #publisher-images { - #hide_location { display: inline-block; } - #locator { display: none; } - } - - .counter { - height: 30px; - line-height: 30px; - position: absolute; - right: 10px; - bottom: -25px; - } - &.with-location .counter { - bottom: -62px; - } .warning { color: orange; } @@ -268,3 +208,70 @@ } } } + +.publisher-textarea-wrapper { + &:not(.with-location) .location-container { display: none; } + + &.with-location .loader { + height: 20px; + width: 20px; + } + + &.with-location .location-container { + border-top: 1px dashed $border-grey; + height: 30px; + margin-bottom: 0; + + [type='text'] { + border: 0; + color: $text-grey; + height: 20px; + margin-bottom: 0; + padding: 0; + } + } + + &.with-location .counter { + bottom: -62px; + } + + .counter { + bottom: -25px; + height: 30px; + line-height: 30px; + position: absolute; + right: 10px; + } + + &:not(.with-location) .publisher-buttonbar { + .hide-location { display: none; } + .locator { display: inline-block; } + } + + &.with-location .publisher-buttonbar { + .hide-location { display: inline-block; } + .locator { display: none; } + } +} + +.publisher-buttonbar { + float: right; + margin-right: 5px; + + .btn.btn-link { + font-size: 16px; + line-height: $line-height-computed; + padding: 4px 2px; + text-decoration: none; + i { color: $text-grey; } + + [type='file'], + [type='file']::-webkit-file-upload-button { + cursor: pointer; + } + } + + .btn.btn-link:hover { + i { color: $black; } + } +} diff --git a/app/views/publisher/_publisher.html.haml b/app/views/publisher/_publisher.html.haml index b8ccdb6c1..3c4339e75 100644 --- a/app/views/publisher/_publisher.html.haml +++ b/app/views/publisher/_publisher.html.haml @@ -9,7 +9,7 @@ = form_for(StatusMessage.new) do |status| = status.error_messages %params - #publisher_textarea_wrapper + .publisher-textarea-wrapper#publisher_textarea_wrapper - if current_user.getting_started? = status.text_area :fake_text, :rows => 2, :value => h(publisher_formatted_text), :tabindex => 1, :placeholder => "#{t('contacts.index.start_a_conversation')}...", @@ -29,14 +29,14 @@ #poll_creator_container -# handlebars template #button_container - .pull-right#publisher-images - .btn.btn-link#poll_creator{title: t("shared.publisher.poll.add_a_poll")} + .publisher-buttonbar#publisher-images + .btn.btn-link.poll-creator#poll_creator{title: t("shared.publisher.poll.add_a_poll")} %i.entypo-bar-graph - .btn.btn-link#file-upload{title: t("shared.publisher.upload_photos")} + .btn.btn-link.file-upload#file-upload{title: t("shared.publisher.upload_photos")} %i.entypo-camera.publisher_image - .btn.btn-link#locator{title: t("shared.publisher.get_location")} + .btn.btn-link.locator#locator{title: t("shared.publisher.get_location")} %i.entypo-location.publisher_image - .btn.btn-link#hide_location{title: t("shared.publisher.remove_location")} + .btn.btn-link.hide-location#hide_location{title: t("shared.publisher.remove_location")} %i.entypo-cross.publisher_image %span.markdownIndications != t("shared.publisher.formatWithMarkdown", markdown_link: link_to(t("help.markdown"), diff --git a/spec/integration/profile_spec.rb b/spec/integration/profile_spec.rb index 3428c11d1..4884e530a 100644 --- a/spec/integration/profile_spec.rb +++ b/spec/integration/profile_spec.rb @@ -13,7 +13,7 @@ describe PeopleController, type: :request do expect(response.status).to eq(200) # make sure we are signed in expect(response.body).not_to match(/a class="login"/) - expect(response.body).to match(/div id='publisher_textarea_wrapper'/) + expect(response.body).to match(/div class='publisher-textarea-wrapper' id='publisher_textarea_wrapper'/) end it "displays the publisher for people path" do @@ -22,7 +22,7 @@ describe PeopleController, type: :request do expect(response.status).to eq(200) # make sure we are signed in expect(response.body).not_to match(/a class="login"/) - expect(response.body).to match(/div id='publisher_textarea_wrapper'/) + expect(response.body).to match(/div class='publisher-textarea-wrapper' id='publisher_textarea_wrapper'/) end end @@ -37,7 +37,7 @@ describe PeopleController, type: :request do expect(response.status).to eq(200) # make sure we are signed in expect(response.body).not_to match(/a class="login"/) - expect(response.body).not_to match(/div id='publisher_textarea_wrapper'/) + expect(response.body).not_to match(/div class='publisher-textarea-wrapper' id='publisher_textarea_wrapper'/) end it "doesn't display the publisher for people path" do @@ -46,7 +46,7 @@ describe PeopleController, type: :request do expect(response.status).to eq(200) # make sure we are signed in expect(response.body).not_to match(/a class="login"/) - expect(response.body).not_to match(/div id='publisher_textarea_wrapper'/) + expect(response.body).not_to match(/div class='publisher-textarea-wrapper' id='publisher_textarea_wrapper'/) end end @@ -57,7 +57,7 @@ describe PeopleController, type: :request do expect(response.status).to eq(200) # make sure we aren't signed in expect(response.body).to match(/a class="login"/) - expect(response.body).not_to match(/div id='publisher_textarea_wrapper'/) + expect(response.body).not_to match(/div class='publisher-textarea-wrapper' id='publisher_textarea_wrapper'/) end it "doesn't display the publisher for people path" do @@ -66,7 +66,7 @@ describe PeopleController, type: :request do expect(response.status).to eq(200) # make sure we aren't signed in expect(response.body).to match(/a class="login"/) - expect(response.body).not_to match(/div id='publisher_textarea_wrapper'/) + expect(response.body).not_to match(/div class='publisher-textarea-wrapper' id='publisher_textarea_wrapper'/) end end end