[Xfce4-commits] <moka:nick/maintainer-improvements> Various updates to make remains work.
Nick Schermer
noreply at xfce.org
Sun Nov 20 14:28:01 CET 2011
Updating branch refs/heads/nick/maintainer-improvements
to 24edf0daf533a595a70a6206203a52a336e50180 (commit)
from bd52cc77a00988bcb2ff3a175b680fe58a27f6d6 (commit)
commit 24edf0daf533a595a70a6206203a52a336e50180
Author: Nick Schermer <nick at xfce.org>
Date: Sun Nov 20 14:26:35 2011 +0100
Various updates to make remains work.
examples/xfce/templates/collection_feed_entry.erb | 9 +---
.../xfce/templates/collection_release_mail.erb | 9 +---
examples/xfce/templates/project_feed_entry.erb | 6 +-
lib/controllers/announcements.rb | 6 +-
lib/controllers/collections.rb | 40 ++++++++++----------
lib/controllers/projects.rb | 2 +-
lib/middleware/identica.rb | 4 +-
lib/views/announcements.haml | 15 ++++---
lib/views/collection.haml | 24 +++++++++---
lib/views/collection_new_release.haml | 37 +++++++++---------
lib/views/collection_release.haml | 2 +-
lib/views/maintainer_profile.haml | 5 ++-
lib/views/project.haml | 7 ++-
lib/views/project_new_release.haml | 4 +-
lib/views/project_release_update.haml | 2 +-
lib/views/stylesheet.sass | 1 +
16 files changed, 93 insertions(+), 80 deletions(-)
diff --git a/examples/xfce/templates/collection_feed_entry.erb b/examples/xfce/templates/collection_feed_entry.erb
index 9d11516..5ded9bf 100644
--- a/examples/xfce/templates/collection_feed_entry.erb
+++ b/examples/xfce/templates/collection_feed_entry.erb
@@ -4,14 +4,11 @@ It includes the following releases of Xfce core components:
<% for project in (Moka::Models::Project.find_all.sort.select do |project| release.included_project_release(project) != nil end) %>
<a href="<%= project.website %>"><%= project.name %></a> <%= release.included_project_release(project).version %><% end %>
-Release tarballs can be retrieved from the following mirrors (please
-note that it may take a few hours for the mirrors to catch up):
-<% for mirror in Moka::Models::Mirror.find_all %>
- <a href="<%= mirror.download_url(release) %>"><%= mirror.download_url(release) %></a><% end %>
+Individual tarballs are available for download now:
+ <a href="<%= release.download_url %>"><%= release.download_url %></a>
A tarball including all individual releases can be downloaded here:
-<% for mirror in Moka::Models::Mirror.find_all %>
- <a href="<%= mirror.fat_tarball_url(release) %>"><%= mirror.fat_tarball_url(release) %></a><% end %>
+ <a href="<%= release.fat_tarball_url %>"><%= release.fat_tarball_url %></a>
Release notes for <%= release.version %>
diff --git a/examples/xfce/templates/collection_release_mail.erb b/examples/xfce/templates/collection_release_mail.erb
index f7f7b22..fa097d8 100644
--- a/examples/xfce/templates/collection_release_mail.erb
+++ b/examples/xfce/templates/collection_release_mail.erb
@@ -4,14 +4,11 @@ It includes the following releases of Xfce core components:
<% for project in (Moka::Models::Project.find_all.sort.select do |project| release.included_project_release(project) != nil end) %>
<%= project.name %> <%= release.included_project_release(project).version %><% end %>
-Release tarballs can be retrieved from the following mirrors (please
-note that it may take a few hours for the mirrors to catch up):
-<% for mirror in Moka::Models::Mirror.find_all %>
- <%= mirror.download_url(release) %><% end %>
+Individual tarballs are available for download now:
+ <%= release.download_url %>
A tarball including all individual releases can be downloaded here:
-<% for mirror in Moka::Models::Mirror.find_all %>
- <%= mirror.fat_tarball_url(release) %><% end %>
+ <%= release.fat_tarball_url %>
Release notes for <%= release.version %>
diff --git a/examples/xfce/templates/project_feed_entry.erb b/examples/xfce/templates/project_feed_entry.erb
index c6de88e..46f3121 100644
--- a/examples/xfce/templates/project_feed_entry.erb
+++ b/examples/xfce/templates/project_feed_entry.erb
@@ -1,8 +1,8 @@
<pre><a href="<%= release.project.website %>"><%= release.project.name %></a> <%= release.version %> is now available for download from
- <a href="<%= Moka::Models::Mirror.find_all.first.download_url(release) %>/<%= release.tarball_basename %>"><%= Moka::Models::Mirror.find_all.first.download_url(release) %>/<%= release.tarball_basename %></a>
- <a href="<%= Moka::Models::Mirror.find_all.first.download_url(release) %>/<%= release.tarball_basename %>.md5"><%= Moka::Models::Mirror.find_all.first.download_url(release) %>/<%= release.tarball_basename %>.md5</a>
- <a href="<%= Moka::Models::Mirror.find_all.first.download_url(release) %>/<%= release.tarball_basename %>.sha1"><%= Moka::Models::Mirror.find_all.first.download_url(release) %>/<%= release.tarball_basename %>.sha1</a>
+ <a href="<%= release.download_url %>/<%= release.tarball_basename %>"><%= release.download_url %>/<%= release.tarball_basename %></a>
+ <a href="<%= release.download_url %>/<%= release.tarball_basename %>.md5"><%= release.download_url %>/<%= release.tarball_basename %>.md5</a>
+ <a href="<%= release.download_url %>/<%= release.tarball_basename %>.sha1"><%= release.download_url %>/<%= release.tarball_basename %>.sha1</a>
SHA1 checksum: <%= release.checksum(Digest::SHA1) %>
MD5 checksum: <%= release.checksum(Digest::MD5) %>
diff --git a/lib/controllers/announcements.rb b/lib/controllers/announcements.rb
index be128e3..784a290 100755
--- a/lib/controllers/announcements.rb
+++ b/lib/controllers/announcements.rb
@@ -5,19 +5,19 @@ module Moka
def self.registered(app)
app.get '/announcements' do
- authentication_required(roles = ['admin', 'board-member'])
+ authentication_required(roles = ['identica'])
view :announcements
end
app.get '/announcements/identica' do
- authentication_required(roles = ['admin', 'board-member'])
+ authentication_required(roles = ['identica'])
redirect '/announcements'
end
app.post '/announcements/identica' do
- authentication_required(roles = ['admin', 'board-member'])
+ authentication_required(roles = ['identica'])
unless env['identica']
error_set(:identica, 'Publishing announcements on identi.ca is not supported at the moment.')
diff --git a/lib/controllers/collections.rb b/lib/controllers/collections.rb
index e9b74e7..91cc4dc 100755
--- a/lib/controllers/collections.rb
+++ b/lib/controllers/collections.rb
@@ -20,33 +20,33 @@ module Moka
@release = Collection::Release.new(@collection, params[:release])
view :collection_release
end
-
+
app.post '/collection/:name/release/:release' do
@collection = Collection.get(params[:name])
authentication_required(@collection)
@release = Collection::Release.new(@collection, params[:release])
-
+
for project in Project.find_all
- next unless params[:version].has_key?(project.name)
- branch_name, version = params[:version][project.name].split(/:/)
+ next unless params[:version].has_key?(project.name)
+ branch_name, version = params[:version][project.name].split(/:/)
- project_release = @release.included_project_release(project)
- @release.remove_project_release(project_release) unless project_release.nil?
+ project_release = @release.included_project_release(project)
+ @release.remove_project_release(project_release) unless project_release.nil?
- unless version.nil?
- branch = Project::Branch.new(project, branch_name)
- project_release = Project::Release.new(project, branch, version)
- @release.add_project_release(project_release)
- end
+ unless version.nil?
+ branch = Project::Branch.new(project, branch_name)
+ project_release = Project::Release.new(project, branch, version)
+ @release.add_project_release(project_release)
+ end
end
@release.update
-
+
redirect '/'
end
-
+
app.get '/collection/:name/release/:release/delete' do
@collection = Collection.get(params[:name])
@@ -54,7 +54,7 @@ module Moka
view :collection_delete
end
-
+
app.post '/collection/:name/release/:release/delete' do
@collection = Collection.get(params[:name])
@@ -104,7 +104,7 @@ module Moka
error_set(:version, 'Version may not be empty.') if params[:version].empty?
- unless error_set?
+ unless error_set?
pattern = Regexp.new(Configuration.get(:collection_release_pattern))
unless params[:version] =~ pattern
error_set(:version, "Version has to match the pattern<br /><tt>#{pattern.source}</tt>")
@@ -113,7 +113,7 @@ module Moka
unless error_set?
if @collection.releases.include?(@release)
- error_set(:version, 'Version already exists.')
+ error_set(:version, 'Version already exists.')
end
end
@@ -127,7 +127,7 @@ module Moka
prelease.version == project_version
end
- @release.add_project_release(project_release)
+ @release.add_project_release(project_release) unless project_release.nil?
end
@release.update
@@ -135,7 +135,7 @@ module Moka
if env['feeds']
env['feeds'].announce_release(@release, params[:message], authentication_user)
end
-
+
if env['identica'] and params[:identica]
url = env['feeds'].get_collection_feed_url(@collection)
@@ -147,10 +147,10 @@ module Moka
env['identica'].post(status)
end
-
+
if env['mailinglists'] and params[:mailinglists]
env['mailinglists'].announce_release(@release, params[:message],
- authentication_user,
+ authentication_user,
params[:mailinglists].keys)
end
diff --git a/lib/controllers/projects.rb b/lib/controllers/projects.rb
index b5dc96e..f0db20d 100755
--- a/lib/controllers/projects.rb
+++ b/lib/controllers/projects.rb
@@ -295,7 +295,7 @@ module Moka
params[:mailinglists].keys)
end
- redirect "/project/#{@project.id}"
+ redirect "/project/#{@project.name}"
end
end
diff --git a/lib/middleware/identica.rb b/lib/middleware/identica.rb
index cf92152..35cf32c 100755
--- a/lib/middleware/identica.rb
+++ b/lib/middleware/identica.rb
@@ -27,7 +27,7 @@ module Moka
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
-
+
http.start do |http|
header = {
'User-Agent' => 'Moka',
@@ -35,7 +35,7 @@ module Moka
'X-Twitter-Client-Version' => 'Unknown',
'X-Twitter-Client-URL' => 'http://git.xfce.org/jannis/moka',
}
-
+
request = Net::HTTP::Post.new(url.path)
request.basic_auth(username, password)
request.set_form_data({'status' => status})
diff --git a/lib/views/announcements.haml b/lib/views/announcements.haml
index a2577e5..0a0f6e8 100644
--- a/lib/views/announcements.haml
+++ b/lib/views/announcements.haml
@@ -5,10 +5,11 @@
%p.error.quote #{error(:identica)}
%form{:method => "post", :action => "/announcements/identica"}
- %p
- %label{:for => "test"} Text:
- %textarea{:name => "test", :rows => "5", :wrap => "off", :value => params[:text]}
- - if error(:text)
- %p.error.quote #{error(:text)}
- %p
- %input{:type => "submit", :value => "Publish"}
+ %fieldset
+ %p
+ %label{:for => "message"} Text:
+ %textarea{:name => "message", :rows => 5, :wrap => "off", :value => params[:text]}
+ - if error(:text)
+ %p.error.quote #{error(:text)}
+ %p.quote
+ %input{:type => "submit", :value => "Publish"}
diff --git a/lib/views/collection.haml b/lib/views/collection.haml
index 21b26c2..49a2f72 100755
--- a/lib/views/collection.haml
+++ b/lib/views/collection.haml
@@ -1,11 +1,23 @@
%h2 Collection information</h2>
%form
- %p
- %label{:for => "website"} Website:
- %input{:name => "website", :disabled => true, :value => "#{@collection.website}"}
- %p
- %label{:for => "maintainers"} Maintainers:
- %input{:name => "maintainers", :disabled => true, :value => "#{maintainer_names(@collection)}"}
+ %fieldset
+ %p
+ %label{:for => "website"} Website:
+ %input{:type => "text",
+ :name => "website",
+ :id => "website",
+ :class => 'fill',
+ :readonly => true,
+ :value => "#{@collection.website}"}
+
+ %p
+ %label{:for => "maintainers"} Maintainers:
+ %input{:type => "text",
+ :name => "maintainers",
+ :id => "maintainers",
+ :class => 'fill',
+ :readonly => true,
+ :value => " #{maintainer_names(@collection)}"}
%p
%a{:href => "/collection/#{@collection.name}/new-release"} Release new version
diff --git a/lib/views/collection_new_release.haml b/lib/views/collection_new_release.haml
index bf587a9..f53db4d 100755
--- a/lib/views/collection_new_release.haml
+++ b/lib/views/collection_new_release.haml
@@ -1,22 +1,23 @@
-%form
+%form{:method => "post"}
%h2 Release information
- %p
- %label{:for => "version"} Version:
- %input{:type => "text", :name => "version", :value => "#{params[:version]}", :style => "width: 5em"}
- - if error_set? :version
- %p #{error :version}
- %p
- %label{:for => "message"} Message:
- %textarea{:name => "message"} #{params[:message]}
- - if env['identica']
- %p.quote
- %input{:type => "checkbox", :name => "identica", :value => "announce", :checked => true} Announce on identi.ca/xfce
- - if env['mailinglists']
- - for list in env['mailinglists'].lists
- %p.quote
- %input{:type => "checkbox", :name => "mailinglists[#{list}]", :value => "announce"} Announce on #{list}
- %p.quote Make sure to be subscribed to these mailinglists with #{authentication_user.email}. You can change your email address in your profile.
+ %fieldset
+ %p
+ %label{:for => "version"} Version:
+ %input{:type => "text", :name => "version", :value => "#{params[:version]}", :style => "width: 5em"}
+ - if error_set? :version
+ %p.error.quote #{error :version}
+ %p
+ %label{:for => "message"} Message:
+ %textarea{:name => "message"} #{params[:message]}
+ - if env['identica']
+ %p.quote
+ %input{:type => "checkbox", :name => "identica", :value => "announce", :checked => true} Announce on identi.ca/xfce
+ - if env['mailinglists']
+ - for list in env['mailinglists'].lists
+ %p.quote
+ %input{:type => "checkbox", :name => "mailinglists[#{list}]", :value => "announce"} Announce on #{list}
+ %p.quote Make sure to be subscribed to these mailinglists with #{authentication_user.email}. You can change your email address in your profile.
%h2 Projects to include in the release
%table
@@ -28,7 +29,7 @@
%select{:name => "project_version[#{project.name}]"}
- included_release = params['project_version'][project.name] if params['project_version']
%option{:selected => included_release.nil?} None
- - for release in project.releases
+ - for release in project.releases.sort.reverse
%option{:value => "#{release.version}", :selected => (release.version == included_release)} #{release.version}
%p
%input{:type => "submit", :value => "Release and celebrate!"}
diff --git a/lib/views/collection_release.haml b/lib/views/collection_release.haml
index 2b94f51..e6bdac3 100755
--- a/lib/views/collection_release.haml
+++ b/lib/views/collection_release.haml
@@ -5,7 +5,7 @@
%a{:href => "/collection/#{@collection.name}/release/#{@release.version}/update_fat_tarball_checksums"} Update fat tarball checksums
%h2 Projects to include in the release
-%form
+%form{:method => "post"}
%table
- for project in Project.find_all.sort
%tr
diff --git a/lib/views/maintainer_profile.haml b/lib/views/maintainer_profile.haml
index e18c9b7..7835e16 100644
--- a/lib/views/maintainer_profile.haml
+++ b/lib/views/maintainer_profile.haml
@@ -25,7 +25,10 @@
%form{:method => "post"}
%p
%label{:for => "username"} Login Name:
- %input{:type => "text", :name => "fooname", :disabled => true, :value => @maintainer.username}
+ %input{:type => "text",
+ :name => "fooname",
+ :disabled => true,
+ :value => @maintainer.username}
%input{:type => "hidden",
:name => "username",
:id => "username",
diff --git a/lib/views/project.haml b/lib/views/project.haml
index 9357ac5..8acbf72 100755
--- a/lib/views/project.haml
+++ b/lib/views/project.haml
@@ -30,13 +30,14 @@
%p
%label{:for => "maintainers"} Maintainers:
%input{:type => "text",
- :name => "maintainers",
- :id => "maintainers",
- :disabled => true,
+ :name => "owner",
+ :id => "owner",
:class => 'fill',
+ :readonly => true,
:value => "#{maintainer_names(@project)}"}
%p.quote
%input{:type => "submit", :value => "Save"}
+
- if authentication_user.is_admin
%h2 Project Groups
diff --git a/lib/views/project_new_release.haml b/lib/views/project_new_release.haml
index 8dbbac8..bbe7c43 100755
--- a/lib/views/project_new_release.haml
+++ b/lib/views/project_new_release.haml
@@ -10,10 +10,10 @@
%form
%p
%label{:for => "website"} Website:
- %input{:type => "text", :name => "website", :disabled => true, :value => "#{@project.website}"}
+ #{@project.website}
%p
%label{:for => "longdesc"} Description:
- %textarea{:name => "longdesc", :disabled => true} #{@project.longdesc}
+ %textarea{:name => "longdesc", :readonly => true} #{@project.longdesc}
%form{:method => "get", :action => "/project/#{@project.name}/new-release/tarball"}
%p.quote
diff --git a/lib/views/project_release_update.haml b/lib/views/project_release_update.haml
index c9f40a6..d38fc47 100755
--- a/lib/views/project_release_update.haml
+++ b/lib/views/project_release_update.haml
@@ -3,7 +3,7 @@
%form{:method => "post", :enctype => "multipart/form-data"}
%p
%label Filename:
- %input{:type => "text", :disabled => true, :value => @release.tarball_basename, :size => 30}
+ %input{:type => "text", :readonly => true, :value => @release.tarball_basename, :size => 30}
%p
%label{:for => "tarball"} Tarball:
%input{:type => "file", :name => "tarball", :size => 30}
diff --git a/lib/views/stylesheet.sass b/lib/views/stylesheet.sass
index 30c3f19..39a6d34 100755
--- a/lib/views/stylesheet.sass
+++ b/lib/views/stylesheet.sass
@@ -145,6 +145,7 @@ fieldset
textarea
width: 70%
+ height: 10em
input.fill
width: 50%
More information about the Xfce4-commits
mailing list