blob: a741fb9d178aa303b9dc17d7117afaf347560d14 [file] [log] [blame]
#!/usr/bin/env ruby
PAGETITLE = "Overview of Whimsy Tools for Members" # Wvisible:meeting
$LOAD_PATH.unshift '/srv/whimsy/lib'
require 'json'
require 'whimsy/asf'
require 'wunderbar'
require 'wunderbar/bootstrap'
MEETING = {
'meeting.cgi' => "Member's Meeting FAQ, Timeline, How-Tos",
'proxy.cgi' => "Assign a proxy for the (current) Member's meeting",
'watch.cgi' => "Potential Member Watch List - tracking candidates for future nominations",
'memberless-pmcs.cgi' => "Crosscheck PMCs with few/no ASF Members, for future nominations",
'nominations.cgi' => "Member's Meeting nominations cross-check - ensuring nominations get on the ballot, etc.",
'attendance-xcheck.cgi' => "Member's Meeting Attendance cross-check - who attended when",
'non-participants.cgi' => "Active Members not participating in recent meetings (to send a poll to)",
'inactive.cgi' => "Poll of Inactive Members - tool to query non-participating members why",
'whatif.cgi' => "Board STV Results 'what-if' tool - review past board election votes"
}
LISTS = {
'/committers/subscribe.cgi' => "Subscribe or unsubscribe from any mailing list",
'list-traffic.cgi' => "Statistics about members@ mailing list traffic",
'/officers/list-traffic.cgi' => "Statistics about board@ mailing list traffic",
'subscriptions.cgi' => "Apache members@ List Subscription Crosscheck",
'security-subs.cgi' => "Security Mailing Lists Subscription Check"
}
MISC = {
'mentors.cgi' => "New Member mentoring program overview",
'board-attend.cgi' => "Director attendance statistics at board meetings",
'namediff.cgi' => "Crosscheck Members Names With ICLA records",
'mirror_check.cgi' => "ASF Distribution Mirror Check - is a mirror configured correctly",
'download_check.cgi' => "Verify an Apache project download page is configured correctly"
}
_html do
_body? do
_whimsy_body(
title: PAGETITLE,
subtitle: 'Member-restricted tools only',
relatedtitle: 'More Useful Links',
related: {
"/committers/tools" => "Whimsy All Available Tools Listing",
"https://svn.apache.org/repos/private/foundation/" => "Checkout the private 'foundation' repo for Members",
"https://github.com/apache/whimsy/blob/master/www#{ENV['SCRIPT_NAME']}" => "See This Source Code",
"mailto:dev@whimsical.apache.org?subject=[FEEDBACK] members/index idea" => "Email Feedback To dev@whimsical"
},
helpblock: -> {
_p %{
This script lists various Whimsy tools restricted to Members. These all deal with private or
sensitive data, so be sure to keep confidential.
}
_p do
_ 'For more information about ASF Governance and what it means to be a Member, see the '
_a 'Membership Governance overview.', href: 'https://www.apache.org/foundation/governance/members'
end
},
breadcrumbs: {
members: '/committers/tools#members',
meeting: '/committers/tools#meeting'
}
) do
_h2 "Tools related to Member's Meetings (Nominations, Voting, Proxy, etc.)"
_ul do
MEETING.each do |url, desc|
_li do
_a desc, href: url
_ ' - '
_code! do
_a url, href: url
end
end
end
end
_h2 "Tools related to mailing lists"
_ul do
LISTS.each do |url, desc|
_li do
_a desc, href: url
_ ' - '
_code! do
_a url, href: url
end
end
end
end
_h2 "Miscellaneous Tools - private mailing list checks, etc."
_ul do
MISC.each do |url, desc|
_li do
_a desc, href: url
_ ' - '
_code! do
_a url, href: url
end
end
end
end
end
end
end