various UI improvements
authorLunar <lunar@anargeek.net>
Mon, 9 Apr 2012 09:57:40 +0000 (11:57 +0200)
committerLunar <lunar@anargeek.net>
Thu, 14 Mar 2013 09:12:10 +0000 (10:12 +0100)
public/javascripts/coquelicot.js
spec/coquelicot/app_spec.rb
spec/coquelicot_spec.rb
views/index.haml
views/ready.haml
views/style.sass

index 368b063..4f383b1 100644 (file)
@@ -59,7 +59,7 @@ function addLinkToPasswordGenerator() {
   var link = $('<a href="#" id="gen_pass" />');
   link.text(i18n.generateRandomPassword);
   var file_key = $('#file_key');
-  file_key.after(link);
+  file_key.before(link);
   link.click(function(e) {
     e.preventDefault();
     link.text(i18n.generatingRandomPassword);
@@ -126,7 +126,7 @@ function authenticate() {
   });
   lb.open({
     html: authForm.append(authDiv).append('<div id="auth-message"></div>'),
-    width: "430px",
+    width: "350px",
     closeOnClick: false
   });
   authentication.focus();
index 191d92e..65101b7 100644 (file)
@@ -40,8 +40,8 @@ describe Coquelicot::Application do
     context 'using the default language' do
       it 'should display the maximum file size' do
         visit '/'
-        find(:xpath, '//label[@for="file"]/following::*[@class="note"]').
-            should have_content("Max. size: #{Coquelicot.settings.max_file_size.as_size}")
+        find(:xpath, '//label[@for="file"]').
+            should have_content("max. size: #{Coquelicot.settings.max_file_size.as_size}")
       end
       context 'when I explicitly request french' do
         it 'should display a page in french' do
index 994671c..53a50b8 100644 (file)
@@ -56,8 +56,7 @@ describe 'Coquelicot' do
     follow_redirect!
     last_response.should be_ok
     doc = Hpricot(last_response.body)
-    return (doc/'.url a').collect { |a| a.attributes['href'] }.
-             select { |h| h.start_with? "http://#{last_request.host}/" }[0]
+    return (doc/'.ready')[0].inner_text
   end
 
   def build_multipart(params)
index fbce8b5..dcf33ca 100644 (file)
         %input{ :type => 'radio', :id => 'one_time', :name => 'one_time', :value => 'true' }
         %label{ :for => 'one_time' } Remove after one download
   .field
-    %label{ :for => 'file_key' } Download password:
+    %label{ :for => 'file_key' } Download password (<em>optional</em>):
     %input.input{ :type => 'password', :id => 'file_key', :name => 'file_key' }
   .field
-    %label{ :for => 'file' } File:
+    %label{ :for => 'file' } File (<em>max. size: #{Coquelicot.settings.max_file_size.as_size}</em>):
     %input.input{ :type => 'file', :id => 'file', :name => 'file' }
-    .note Max. size: #{Coquelicot.settings.max_file_size.as_size}
   .field
     .submit
       %input#submit{ :type => 'submit', :value => _('Share!') }
index f6eff04..f932e29 100644 (file)
@@ -18,9 +18,7 @@
 %h1 Share this!
 #content
   .url
-    %a{ :href => @url }
-      %span.base>= uri('/')
-      %span.name= @name
+    %textarea.ready{ 'readonly' => 'readonly' }= uri(@name)
   - unless @unprotected
     %p A password is required to download this file.
   %p The file will be available until #{@expire_at}.
index 9a1b3e3..f5c0f03 100644 (file)
@@ -69,69 +69,59 @@ h2
 .url
   text-align: center
 
-.url a
-  text-decoration: none
-  color: black
-
-.url .base
-  display: block
-  font-size: small
-
-.url .name
-  display: block
-  font-size: x-large
-  white-space: nowrap
+.url .ready
+  font-size: 120%
+  width: 80%
+  text-align: center
 
 .again
   margin-top: 1ex
   text-align: right
 
 .field label
+  display: block
   float: left
-  width: 12em
-  text-align: right
-  margin: 0 5px 2px 0
+  width: 70%
 
 fieldset
   border: none
-
-.radio
   clear: left
-  margin-left: 11.8em
+  padding: 0
+  margin-bottom: 8px
 
-.radio input
-  float: left
-  margin: 2px 5px 0 0
+.radio
+  margin-left: 0px
 
 .radio label
+  display: inline
   text-align: left
-  width: 17em
+  float: none
 
 .input, .random-pass
+  clear: left
   margin: 0 5px 2px 0
-  float: left
-  width: 220px
+  width: 100%
 
 .random-pass
   font-family: monospace
   font-size: large
   color: black
+  line-height: 20px
 
 #gen_pass
   font-size: small
-
-.note
-  clear: left
-  font-style: italic
-  font-size: smaller
-  margin-left: 12em
+  text-align: right
+  display: block
+  float: left
+  width: 29%
 
 .field
   clear: left
+  margin-bottom: 8px
 
 .submit
   text-align: center
-  margin-top: 5px
+  margin-top: 8px
 
 #progress
   margin: 8px