This is an automated email from the ASF dual-hosted git repository.
curcuru pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/whimsy.git
The following commit(s) were added to refs/heads/master by this push:
new d7f8ad2 Add _whimsy_body subtitle and styleallthethings!
d7f8ad2 is described below
commit d7f8ad26784233a2784a03ca7b220bbfa9b4d391
Author: Shane Curcuru <[email protected]>
AuthorDate: Fri Jun 2 19:52:22 2017 -0400
Add _whimsy_body subtitle and styleallthethings!
---
lib/whimsy/asf/themes.rb | 4 +--
www/brand/list.cgi | 36 ++++++++++++++--------
www/committers/subscribe.cgi | 31 ++++++++++---------
www/committers/svn-info.cgi | 19 +++++++++---
www/committers/testauth.cgi | 57 ++++++++++++++++++++--------------
www/committers/tools.cgi | 6 ++--
www/incubator/maillist.cgi | 52 +++++++++++++++++++------------
www/incubator/signoff.cgi | 65 ++++++++++++++++++++++-----------------
www/members/attendance-xcheck.cgi | 62 ++++++++++++++++++-------------------
www/members/memberless-pmcs.cgi | 45 +++++++++++++++++----------
www/members/namediff.cgi | 22 ++++++++-----
www/members/nominations.cgi | 21 ++++++++-----
www/members/non-participants.cgi | 58 ++++++++++++++++------------------
www/members/subscriptions.cgi | 33 +++++++++++---------
www/members/watch.cgi | 29 +++++++++--------
15 files changed, 307 insertions(+), 233 deletions(-)
diff --git a/lib/whimsy/asf/themes.rb b/lib/whimsy/asf/themes.rb
index 0632f5f..cf7d09a 100644
--- a/lib/whimsy/asf/themes.rb
+++ b/lib/whimsy/asf/themes.rb
@@ -170,7 +170,7 @@ class Wunderbar::HtmlMarkup
end
# Emit complete bootstrap theme, with related links, and helpblock of intro
text
- def _whimsy_body(title: 'MOAR WHIMSY!', related: {}, helpblock: nil)
+ def _whimsy_body(title: 'MOAR WHIMSY!', subtitle: 'About This Script',
related: {}, helpblock: nil)
_whimsy_nav
_div.content.container_fluid do
_div.row do
@@ -180,7 +180,7 @@ class Wunderbar::HtmlMarkup
end
_div.row do
_div.col_md_8 do
- _whimsy_panel "About This Script" do
+ _whimsy_panel subtitle do
if helpblock
helpblock.call
else
diff --git a/www/brand/list.cgi b/www/brand/list.cgi
index a5e60cb..3f59a03 100755
--- a/www/brand/list.cgi
+++ b/www/brand/list.cgi
@@ -126,13 +126,29 @@ end
_html do
_body? do
- _whimsy_header PAGETITLE
- brand_dir = ASF::SVN['private/foundation/Brand']
- docket = JSON.parse(File.read("#{brand_dir}/docket.json"))
- projects =
JSON.parse(Net::HTTP.get(URI('https://projects.apache.org/json/foundation/projects.json')))
-
- _whimsy_content do
- _h3 'The ASF holds the following registered trademarks:'
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ "https://www.apache.org/foundation/marks/resources" => "Trademark Site
Map",
+ "https://www.apache.org/foundation/marks/list/" => "Official Apache
Trademark List",
+ "https://www.apache.org/foundation/marks/contact" => "Contact Us About
Trademarks"
+ },
+ helpblock: -> {
+ _p "This is an automated listing of the trademarks claimed by the ASF
on behalf of our many project communities."
+ _ul do
+ _li do
+ _a 'Registered trademarks', href: '#registered'
+ end
+ _li do
+ _a 'Other trademarks', href: '#unreg_a'
+ end
+ end
+ }
+ ) do
+ brand_dir = ASF::SVN['private/foundation/Brand']
+ docket = JSON.parse(File.read("#{brand_dir}/docket.json"))
+ projects =
JSON.parse(Net::HTTP.get(URI('https://projects.apache.org/json/foundation/projects.json')))
+ _h3 'The ASF holds the following registered trademarks:', id:
'registered'
docket.each do |pmc, marks|
if pmc == 'apache' then
_apache(marks)
@@ -154,11 +170,5 @@ _html do
end
end
end
-
- _whimsy_footer({
- "https://www.apache.org/foundation/marks/resources" => "Trademark Site
Map",
- "https://www.apache.org/foundation/marks/list/" => "Official Apache
Trademark List",
- "https://www.apache.org/foundation/marks/contact" => "Contact Us About
Trademarks"
- })
end
end
diff --git a/www/committers/subscribe.cgi b/www/committers/subscribe.cgi
index 0e62881..2367ace 100755
--- a/www/committers/subscribe.cgi
+++ b/www/committers/subscribe.cgi
@@ -41,21 +41,22 @@ _html do
_script src: 'assets/bootstrap-select.js'
_link rel: 'stylesheet', href: 'assets/bootstrap-select.css'
_body? do
- _whimsy_header PAGETITLE
- _whimsy_content do
- _div.row do
- _div.panel.panel_primary do
- _div.panel_heading {_h3.panel_title 'How To Subscribe'}
- _div.panel_body do
- _ 'This page allows Apache committers to auto-subscribe to various
mailing lists.'
- _span.text_info 'Note:'
- _ 'Only your registered email address(es) are listed here. To
change your email addresses, login to '
- _a 'https://id.apache.org/', href:
"https://id.apache.org/details/#{$USER}"
- _ 'to add or remove forwarding or alternate addresses.'
- _br
- end
- end
- end
+ _whimsy_body(
+ title: PAGETITLE,
+ subtitle: 'How To Subscribe',
+ related: {
+ 'https://www.apache.org/foundation/mailinglists.html' => 'Apache
Mailing List Info Page',
+ 'https://lists.apache.org' => 'Apache Mailing List Archives',
+ 'https://whimsy.apache.org/committers/moderationhelper.cgi' =>
'Mailing List Moderation Helper'
+ },
+ helpblock: -> {
+ _ 'This page allows Apache committers to auto-subscribe to various
mailing lists.'
+ _span.text_info 'Note:'
+ _ 'Only your registered email address(es) are listed here. To change
your email addresses, login to '
+ _a 'https://id.apache.org/', href:
"https://id.apache.org/details/#{$USER}"
+ _ 'to add or remove forwarding or alternate addresses.'
+ }
+ ) do
_form method: 'post' do
_fieldset do
diff --git a/www/committers/svn-info.cgi b/www/committers/svn-info.cgi
index 033f8f9..dcf93ec 100755
--- a/www/committers/svn-info.cgi
+++ b/www/committers/svn-info.cgi
@@ -8,15 +8,26 @@ require 'whimsy/asf'
_html do
_body? do
_style :system
- _whimsy_header 'ASF SVN info'
- _whimsy_content do
- _p.lead 'SVN Info takes a URL and reports info on that file in the
repository.'
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://www.apache.org/dev/#version-control' => "How To Use Apache's
SVN and Git",
+ 'https://svn.apache.org/viewvc/' => 'View Public SVN Repositories',
+ 'https://github.com/apache/' => 'View Public Git Repositories'
+ },
+ helpblock: -> {
+ _ 'Enter the URL to a file in an Apache Subversion repository to see
the results of the '
+ _code 'svn info'
+ _ "command on that file. This is useful if you don't have a
subversion client locally."
+ }
+ ) do
+
_form do
_div.form_group do
_label.control_label for: 'url' do
_ 'Enter a svn.apache.org/repos URL'
end
- _input.form_control type: 'text', name: 'url', size: 120,
placeholder: 'SVN URL'
+ _input.form_control type: 'text', name: 'url', size: 120,
placeholder: 'https://svn.apache.org/repos/asf/'
end
_div.form_group do
_input.btn.btn_primary type: 'submit', value: 'Submit'
diff --git a/www/committers/testauth.cgi b/www/committers/testauth.cgi
index 2d33684..981faa5 100755
--- a/www/committers/testauth.cgi
+++ b/www/committers/testauth.cgi
@@ -9,33 +9,44 @@ require 'wunderbar'
require 'whimsy/asf/rack'
require 'whimsy/asf/agenda'
-FOUNDATION_BOARD = ASF::SVN['private/foundation/board']
-agenda = Dir[File.join(FOUNDATION_BOARD, 'board_agenda_*.txt')].sort.last
-agenda = ASF::Board::Agenda.parse(File.read(agenda))
-roll = agenda.find {|item| item['title'] == 'Roll Call'}
-
-person = ASF::Auth.decode(env)
-
_html do
- _table do
- _tr do
- _td 'User id'
- _td person.id
- end
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://whimsy.apache.org/board/minutes/' => 'Board Meeting Minutes
(public)',
+ 'https://whimsy.apache.org/board/agenda/' => 'Board Agenda Tool
(restricted)',
+ 'https://whimsy.apache.org/status/' => 'Whimsy Server Status'
+ },
+ helpblock: -> {
+ _ 'This script checks your authorization to use the agenda tool, and
checks if you are listed as attending the current board meeting in the official
agenda.'
+ }
+ ) do
+ FOUNDATION_BOARD = ASF::SVN['private/foundation/board']
+ agenda = Dir[File.join(FOUNDATION_BOARD, 'board_agenda_*.txt')].sort.last
+ agenda = ASF::Board::Agenda.parse(File.read(agenda))
+ roll = agenda.find {|item| item['title'] == 'Roll Call'}
- _tr do
- _td 'ASF Member?'
- _td person.asf_member?
- end
+ person = ASF::Auth.decode(env)
+ _table do
+ _tr do
+ _td 'User id'
+ _td person.id
+ end
- _tr do
- _td 'PMC chair?'
- _td ASF.pmc_chairs.include? person
- end
+ _tr do
+ _td 'ASF Member?'
+ _td person.asf_member?
+ end
+
+ _tr do
+ _td 'PMC chair?'
+ _td ASF.pmc_chairs.include? person
+ end
- _tr do
- _td 'Attending'
- _td roll['people'].keys.include? person.id
+ _tr do
+ _td 'Attending'
+ _td roll['people'].keys.include? person.id
+ end
end
end
end
diff --git a/www/committers/tools.cgi b/www/committers/tools.cgi
index 01961ff..6b17234 100755
--- a/www/committers/tools.cgi
+++ b/www/committers/tools.cgi
@@ -10,7 +10,7 @@ require '../../tools/wwwdocs.rb'
_html do
_body? do
- _whimsy_body2(
+ _whimsy_body(
title: PAGETITLE,
related: {
"https://projects.apache.org/" => "Apache Project Listing",
@@ -28,7 +28,7 @@ _html do
end
AUTHMAP.each do |realm, style|
_li do
- _span.glyphicon.glyphicon_lock :aria_hidden, class: "#{style}"
+ _span.glyphicon.glyphicon_lock :aria_hidden, class: "#{style}",
aria_label: "#{realm}"
_ "#{realm}"
end
end
@@ -47,7 +47,7 @@ _html do
if 2 == desc.length
_span.glyphicon :aria_hidden, class: "#{AUTHPUBLIC}"
else
- _span class: desc[2] do
+ _span class: desc[2], aria_label: "#{AUTHMAP.key(desc[2])}" do
_span.glyphicon.glyphicon_lock :aria_hidden
end
end
diff --git a/www/incubator/maillist.cgi b/www/incubator/maillist.cgi
index f191cf1..04a63d9 100755
--- a/www/incubator/maillist.cgi
+++ b/www/incubator/maillist.cgi
@@ -7,29 +7,43 @@ require 'whimsy/asf'
require 'wunderbar/bootstrap'
_html do
- lists = ASF::Mail.lists
+ _body? do
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://incubator.apache.org/projects/' => 'Incubator Podling List',
+ 'https://whimsy.apache.org/incubator/moderators' => 'Incubator Mailing
List Moderators'
+ },
+ helpblock: -> {
+ _ 'This provides a complete listing of Incubator podling mailing
lists, derived from '
+ _a
'https://whimsy.apache.org/test/dataflow.cgi#/lib/whimsy/asf/podlings.rb',
href: 'https://whimsy.apache.org/test/dataflow.cgi#/lib/whimsy/asf/podlings.rb'
+ }
+ ) do
+ lists = ASF::Mail.lists
- _table.table do
- _tr do
- _th 'podling'
- _th 'status'
- _th 'reports'
- _th 'mailing lists'
- end
+ _table.table do
+ _tr do
+ _th 'podling'
+ _th 'status'
+ _th 'reports'
+ _th 'mailing lists'
+ end
- ASF::Podling.list.sort_by {|podling| podling.name}.each do |podling|
- next if podling.status == 'retired'
- next if podling.status == 'graduated'
+ ASF::Podling.list.sort_by {|podling| podling.name}.each do |podling|
+ next if podling.status == 'retired'
+ next if podling.status == 'graduated'
- _tr_ do
- _td! do
- _a podling.display_name,
- href: "http://incubator.apache.org/projects/#{podling.name}.html"
- end
+ _tr_ do
+ _td! do
+ _a podling.display_name,
+ href:
"http://incubator.apache.org/projects/#{podling.name}.html"
+ end
- _td podling.status
- _td podling.reporting.join(', ')
- _td lists.select {|list| podling.mail_list?(list) }.join(', ')
+ _td podling.status
+ _td podling.reporting.join(', ')
+ _td lists.select {|list| podling.mail_list?(list) }.join(', ')
+ end
+ end
end
end
end
diff --git a/www/incubator/signoff.cgi b/www/incubator/signoff.cgi
index 4d1b87a..8ef40eb 100755
--- a/www/incubator/signoff.cgi
+++ b/www/incubator/signoff.cgi
@@ -57,39 +57,46 @@ _html do
.check {color: rgb(0,114,178)}
.blank {color: rgb(230,159,0); font-style: italic; font-weight: bold}
}
-
- _h1 'Mentor signoffs over the last twelve months'
-
- _p! do
- _span.check 'Blue'
- _ ' means signoff is present, '
- _span.blank 'orange'
- _ ' means signoff is absent.'
- end
-
- _p 'Hover over podling name to see date.'
-
- _table_ do
- mentors.sort.each do |name, entries|
- _tr_ do
- _td do
- if people[name]
- if ASF::Person.find(people[name]).asf_member?
- _b! {_a name, href: roster + people[name]}
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://incubator.apache.org/projects/' => 'Incubator Podling List',
+ 'https://whimsy.apache.org/incubator/moderators' => 'Incubator Mailing
List Moderators'
+ },
+ helpblock: -> {
+ _ do
+ _ 'This script checks past several months Incubator podling reports
for mentor signoff. '
+ _span.check 'Blue'
+ _ ' means signoff is present, '
+ _span.blank 'orange'
+ _ ' means signoff is absent.'
+ end
+ _br
+ _ 'Hover over podling name to see date.'
+ }
+ ) do
+ _table_ do
+ mentors.sort.each do |name, entries|
+ _tr_ do
+ _td do
+ if people[name]
+ if ASF::Person.find(people[name]).asf_member?
+ _b! {_a name, href: roster + people[name]}
+ else
+ _a name, href: roster + people[name]
+ end
else
- _a name, href: roster + people[name]
+ _a name, href: roster + '?q=' + URI.encode(name)
end
- else
- _a name, href: roster + '?q=' + URI.encode(name)
end
- end
- _td do
- entries.each do |entry|
- if entry[:checked]
- _span.check entry[:podling], title: entry[:date]
- else
- _span.blank entry[:podling], title: entry[:date]
+ _td do
+ entries.each do |entry|
+ if entry[:checked]
+ _span.check entry[:podling], title: entry[:date]
+ else
+ _span.blank entry[:podling], title: entry[:date]
+ end
end
end
end
diff --git a/www/members/attendance-xcheck.cgi
b/www/members/attendance-xcheck.cgi
index 39e16ff..a630c0e 100755
--- a/www/members/attendance-xcheck.cgi
+++ b/www/members/attendance-xcheck.cgi
@@ -1,4 +1,5 @@
#!/usr/bin/env ruby
+PAGETITLE = "Member's Meeting Attendance Cross-Check" # Wvisible:meeting
$LOAD_PATH.unshift File.realpath(File.expand_path('../../../lib', __FILE__))
require 'whimsy/asf'
@@ -30,39 +31,36 @@ end
# produce HTML
_html do
- _style %{
- table {margin-left: 12px}
- }
-
- # common banner
- _a href: 'https://whimsy.apache.org/' do
- _img title: "ASF Logo", alt: "ASF Logo",
- src: "https://www.apache.org/img/asf_logo.png"
- end
-
- _h1_ 'members.txt vs attendance.json cross-check'
-
- _h2_ 'Listed as attending a members meeting, but not in members.txt'
-
- _ul do
- attend.sort.each do |name|
- _li name
- end
- end
-
- _h2_ 'Listed in members.txt but not listed as attending a members meeting'
-
- _table do
- _thead do
- _th 'name'
- _th 'date added as a member'
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://whimsy.apache.org/members/inactive' => 'Inactive Member
Feedback Form',
+ 'https://whimsy.apache.org/members/proxy' => 'Members Meeting Proxy
Assignment',
+ 'https://whimsy.apache.org/members/subscriptions' => 'Members@ Mailing
List Crosscheck'
+ },
+ helpblock: -> {
+ _ 'This script cross-checks all people listed in members.txt versus the
official attendance.json file that notes which members attended (or proxied)
which meetings.'
+ }
+ ) do
+ _h2_ 'Listed as attending a members meeting, but not in members.txt'
+ _ul do
+ attend.sort.each do |name|
+ _li name
+ end
end
-
- missing.sort.each do |name, meeting|
- next if meeting =~ /^2015/
- _tr_ do
- _td name
- _td meeting
+
+ _h2_ 'Listed in members.txt but not listed as attending a members meeting'
+ _table do
+ _thead do
+ _th 'name'
+ _th 'date added as a member'
+ end
+ missing.sort.each do |name, meeting|
+ next if meeting =~ /^2015/
+ _tr_ do
+ _td name
+ _td meeting
+ end
end
end
end
diff --git a/www/members/memberless-pmcs.cgi b/www/members/memberless-pmcs.cgi
index 6ba2ae1..0c8280d 100755
--- a/www/members/memberless-pmcs.cgi
+++ b/www/members/memberless-pmcs.cgi
@@ -1,4 +1,5 @@
#!/usr/bin/env ruby
+PAGETITLE = "Crosscheck PMCs with few/no ASF Members" # Wvisible:members
$LOAD_PATH.unshift File.realpath(File.expand_path('../../../lib', __FILE__))
require 'whimsy/asf'
require 'wunderbar'
@@ -13,24 +14,19 @@ _html do
_body? do
count = (@count || 3).to_i
if count == 1
- title = 'PMCs without any ASF members'
+ subtitle = 'PMCs without any ASF members'
else
- title = "PMCs without at least #{count} ASF members"
+ subtitle = "PMCs without at least #{count} ASF members"
end
- _whimsy_header title
- members = ASF::Member.list.keys
- committees = ASF::Committee.load_committee_info
- _whimsy_content do
-
- _table_.table.table_striped do
- _thead_ do
- _tr do
- _th 'PMC', data_sort: 'string-ins'
- _th 'Established', data_sort: 'string'
- _th 'Count', data_sort: 'int' if count > 1
- _th 'Chair', data_sort: 'string'
- end
- end
+ _whimsy_body(
+ title: PAGETITLE,
+ subtitle: subtitle,
+ related: {
+ 'https://whimsy.apache.org/members/watch' => 'Potential Member Watch
List',
+ 'https://whimsy.apache.org/roster/committee/' => 'All PMC Rosters'
+ },
+ helpblock: -> {
+ _p 'This displays PMC names where there are few/no ASF Members listed
on the PMC.'
_p do
_ 'Switch to:'
counts.each do |c|
@@ -39,6 +35,20 @@ _html do
end
_ " | " unless c.equal? counts.last
end
+ _ ' members on a PMC.'
+ end
+ }
+ ) do
+ members = ASF::Member.list.keys
+ committees = ASF::Committee.load_committee_info
+ _table_.table.table_striped do
+ _thead_ do
+ _tr do
+ _th 'PMC', data_sort: 'string-ins'
+ _th 'Established', data_sort: 'string'
+ _th 'Count', data_sort: 'int' if count > 1
+ _th 'Chair', data_sort: 'string'
+ end
end
_tbody do
committees.sort_by {|pmc| pmc.display_name.downcase}.each do |pmc|
@@ -66,6 +76,7 @@ _html do
th.eq(data.column).append('<span class="arrow">' + arrow +'</span>');
});
}
- end
end
end
+end
+
diff --git a/www/members/namediff.cgi b/www/members/namediff.cgi
index 5095994..35bb0be 100755
--- a/www/members/namediff.cgi
+++ b/www/members/namediff.cgi
@@ -1,4 +1,5 @@
#!/usr/bin/env ruby
+PAGETITLE = "Crosscheck Members Names With ICLAs" # Wvisible:members
$LOAD_PATH.unshift File.realpath(File.expand_path('../../../lib', __FILE__))
require 'whimsy/asf'
@@ -7,13 +8,20 @@ require 'wunderbar/jquery/stupidtable'
_html do
_body? do
- _whimsy_header 'ASF Member name differences'
- _whimsy_content do
- _p_ do
- _ 'Cross-check of members.txt vs iclas.txt.'
- _span.text_danger 'REMINDER: members.txt and Legal names below are NOT
public data - keep confidential!'
- end
-
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://whimsy.apache.org/roster/members' => 'Listing Of All Members',
+ 'https://svn.apache.org/repos/private/foundation/officers/iclas.txt'
=> 'ICLA.txt Listing',
+ },
+ helpblock: -> {
+ _p_ do
+ _ 'Cross-check of members.txt vs iclas.txt.'
+ _br
+ _span.text_danger 'REMINDER: members.txt and Legal names below are
NOT public data - keep this page confidential!'
+ end
+ }
+ ) do
ASF::ICLA.preload
ldap_members = ASF::Member.list.map {|id, info| ASF::Person.find(id)}
ASF::Person.preload('cn', ldap_members)
diff --git a/www/members/nominations.cgi b/www/members/nominations.cgi
index 3f98d22..2b489ee 100755
--- a/www/members/nominations.cgi
+++ b/www/members/nominations.cgi
@@ -1,4 +1,5 @@
#!/usr/bin/env ruby
+PAGETITLE = "Member nominations cross-check" # Wvisible:meeting
$LOAD_PATH.unshift File.realpath(File.expand_path('../../../lib', __FILE__))
require 'mail'
@@ -52,8 +53,6 @@ svnurl = `cd #{meeting}; svn info`[/URL: (.*)/, 1]
# produce HTML output of reports, highlighting ones that have not (yet)
# been posted
_html do
- _title 'Member nominations cross-check'
-
_style %{
.missing {background-color: yellow}
.flexbox {display: flex; flex-flow: row wrap}
@@ -62,12 +61,17 @@ _html do
.flexitem:last-child {order: 1}
.count {margin-left: 4em}
}
-
- # common banner
- _a href: 'https://whimsy.apache.org/' do
- _img title: "ASF Logo", alt: "ASF Logo",
- src: "https://www.apache.org/img/asf_logo.png"
- end
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://whimsy.apache.org/members/memberless-pmcs' => 'PMCs with no/few
ASF Members',
+ 'https://svn.apache.org/repos/private/foundation/Meetings/' => 'Official
Meeting Agenda Directory'
+ },
+ helpblock: -> {
+ _ 'This script checks new member nomination statements from members@
against the official meeting ballot files, and highlights differences. '
+ _ 'This probably only works in the period shortly before or after a
Members meeting!'
+ }
+ ) do
_div.flexbox do
_div.flexitem do
@@ -130,6 +134,7 @@ _html do
end
end
end
+end
# produce JSON output of reports
_json do
diff --git a/www/members/non-participants.cgi b/www/members/non-participants.cgi
index 5caea55..59e6845 100755
--- a/www/members/non-participants.cgi
+++ b/www/members/non-participants.cgi
@@ -1,4 +1,5 @@
#!/usr/bin/env ruby
+PAGETITLE = "Active Members not participating in meetings" # Wvisible:meeting
$LOAD_PATH.unshift File.realpath(File.expand_path('../../../lib', __FILE__))
require 'whimsy/asf'
@@ -38,43 +39,36 @@ end
# produce HTML
_html do
_body? do
- _whimsy_header 'Active Members not participating in meetings'
- _whimsy_content do
-
- @meetingsMissed = (@meetingsMissed || 3).to_i
-
- _div.row do
- _div.col_md_6 do
- _div.panel.panel_primary do
- _div.panel_heading {_h3.panel_title 'Select Date'}
- _div.panel_body do
- _form_ do
- _span "List of members that have not participated, starting with
the "
- _select name: 'meetingsMissed', onChange: 'this.form.submit()' do
- dates.reverse.each_with_index do |name, i|
- _option name, value: i+1, selected: (i+1 == @meetingsMissed)
- end
- end
- _span "meeting. Active members does not include emeritus or
deceased members."
+ _whimsy_body(
+ title: PAGETITLE,
+ subtitle: 'Select A Date:',
+ related: {
+ 'https://whimsy.apache.org/members/inactive' => 'Inactive Member
Feedback Form',
+ 'https://whimsy.apache.org/members/proxy' => 'Members Meeting Proxy
Assignment',
+ 'https://whimsy.apache.org/members/subscriptions' => 'Members@ Mailing
List Crosscheck'
+ },
+ helpblock: -> {
+ _form_ do
+ _span "List of members that have not participated, starting with the
"
+ _select name: 'meetingsMissed', onChange: 'this.form.submit()' do
+ dates.reverse.each_with_index do |name, i|
+ _option name, value: i+1, selected: (i+1 == @meetingsMissed)
end
end
+ _span "meeting. Active members does not include emeritus or
deceased members."
end
- end
- _div.col_md_6 do
- _div.panel.panel_primary do
- _div.panel_heading {_h3.panel_title 'Definitions'}
- _div.panel_body do
- _ 'Participating is defined by doing at least one of the
following:'
- _ul do
- _li 'Attending a members meeting'
- _li 'Voting in an election'
- _li 'Assigning a proxy'
- end
+ _h4 'Definitions'
+ _p do
+ _ 'Participating is defined by doing at least one of the following:'
+ _ul do
+ _li 'Attending a members meeting'
+ _li 'Voting in an election'
+ _li 'Assigning a proxy'
end
end
- end
- end
-
+ }
+ ) do
+ @meetingsMissed = (@meetingsMissed || 3).to_i
count = 0
_table.table.table_hover do
_thead do
diff --git a/www/members/subscriptions.cgi b/www/members/subscriptions.cgi
index 540203d..abcd69f 100755
--- a/www/members/subscriptions.cgi
+++ b/www/members/subscriptions.cgi
@@ -1,4 +1,5 @@
#!/usr/bin/env ruby
+PAGETITLE = "Aapche members@ Subscription Crosscheck" # Wvisible:members
$LOAD_PATH.unshift File.realpath(File.expand_path('../../../lib', __FILE__))
require 'wunderbar'
@@ -18,10 +19,14 @@ ARCHIVERS = %w(
_html do
_body? do
- _whimsy_header 'Apache Members Cross-check'
- _div.panel.panel_primary do
- _div.panel_heading {_h3.panel_title 'How This Works'}
- _div.panel_body do
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://whimsy.apache.org/roster/members' => 'Listing Of All Members',
+ 'https://whimsy.apache.org/committers/subscribe' => 'Committers
Self-Subscribe Tool',
+ 'https://lists.apache.org' => 'Apache Ponymail List Archives'
+ },
+ helpblock: -> {
_p! do
_ 'This process starts with the list of subscribers to '
_a '[email protected]', href:
'https://mail-search.apache.org/members/private-arch/members/'
@@ -47,16 +52,15 @@ _html do
_span.text_danger 'listed in red'
_ '.'
end
- end
- end
- _p! do
- _ 'Separate tables below show '
- _a 'Members not subscribed to the list', href: "#unsub"
- _ ', and '
- _a 'Entries in LDAP but not members.txt', href: "#ldap"
- _ '.'
- end
-
+ _p! do
+ _ 'Separate tables below show '
+ _a 'Members not subscribed to the list', href: "#unsub"
+ _ ', and '
+ _a 'Entries in LDAP but not members.txt', href: "#ldap"
+ _ '.'
+ end
+ }
+ ) do
ldap = ASF::Group['member'].members
members = ASF::Member.new.map {|id, text| ASF::Person.find(id)}
@@ -162,5 +166,6 @@ _html do
th.eq(data.column).append('<span class="arrow">' + arrow +'</span>');
});
}
+ end
end
end
diff --git a/www/members/watch.cgi b/www/members/watch.cgi
index d80ccb2..7e1ece2 100755
--- a/www/members/watch.cgi
+++ b/www/members/watch.cgi
@@ -1,4 +1,5 @@
#!/usr/bin/env ruby
+PAGETITLE = "Potential ASF Member Watch List" # Wvisible:members
$LOAD_PATH.unshift File.realpath(File.expand_path('../../../lib', __FILE__))
require 'wunderbar'
@@ -17,9 +18,18 @@ _html do
end
_body? do
- _whimsy_header 'Potential ASF Member Watch List'
- _whimsy_content do
-
+ _whimsy_body(
+ title: PAGETITLE,
+ related: {
+ 'https://whimsy.apache.org/members/memberless-pmcs' => 'PMCs with
no/few ASF Members',
+ 'https://whimsy.apache.org/members/nominations' => 'Members Meeting
Nomination Crosscheck',
+ 'https://svn.apache.org/repos/private/foundation/Meetings/' =>
'Official Meeting Agenda Directory'
+ },
+ helpblock: -> {
+ _ 'To help evaluate potential Member candidates, here are a number of
ways to see where non-Members are participating broadly at the ASF.'
+ _ 'The table(s) below include non-Members who are chairs, widely
active, have been nominated, or other criteria (depending on this URL).'
+ }
+ ) do
# start with the Watch List itself
watch_list = ASF::Person.member_watch_list.keys
meeting =
@@ -34,18 +44,7 @@ _html do
request = ENV['REQUEST_URI']
_div.row do
- _div.col_md_8 do
- _div.panel.panel_primary do
- _div.panel_heading {_h3.panel_title 'How This Works'}
- _div.panel_body do
- _p! do
- _ 'To help evaluate potential Member candidates, here are a
number of ways to see where non-Members are participating broadly at the ASF.'
- _ 'The table(s) below include non-Members who are chairs, widely
active, have been nominated, or other criteria (depending on this URL).'
- end
- end
- end
- end
- _div.col_md_4 do
+ _div.col_sm10 do
_div.panel.panel_primary do
_div.panel_heading {_h3.panel_title 'Related Links'}
_div.panel_body do
--
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].