in www/roster/views/ppmc/main.js.rb [9:309]
def render
if @@auth
@@auth.ppmc = @@auth.member or @ppmc.owners.include? @@auth.id
@@auth.ipmc ||= @@auth.member
end
unless @ppmc.hasLDAP?
@@auth.ppmc = false
@@auth.ipmc = false
end
if @ppmc.status == 'graduated'
_div.alert.alert_danger do
_p do
_b 'Warning: '
_ 'This podling has graduated - some of the information below will be out of date.'
_br
_br
_ 'Please refer to the main entry: '
_a "roster / committee / #{@ppmc.id}", href: "committee/#{@ppmc.id}"
end
end
end
_ul.nav.nav_pills do
_li role: 'presentation' do
_a 'PPMC', :href => "ppmc/#{@ppmc.id}#ppmc"
end
_li role: 'presentation' do
_a 'Committers', :href => "ppmc/#{@ppmc.id}#committers"
end
_li role: 'presentation' do
if @ppmc.moderators
_a 'Mail List Info', :href => "ppmc/#{@ppmc.id}#mail"
else
_a 'Mail Lists', :href => "ppmc/#{@ppmc.id}#mail"
end
end
_li role: 'presentation' do
_a 'Reporting Schedule', :href => "ppmc/#{@ppmc.id}#reporting"
end
_li role: 'presentation' do
_a 'Status', :href => "ppmc/#{@ppmc.id}#podlingStatus"
end
end
_h1 do
_a @ppmc.display_name,
href: "https://incubator.apache.org/projects/#{@ppmc.id}.html"
_small " established #{@ppmc.established}" if @ppmc.established
end
_p @ppmc.description
_div.row key: 'databar' do
_div.col_sm_6 do
if @@auth.ipmc or @@auth.ppmc
_button.btn.btn_default 'Add',
data_target: '#ppmcadd', data_toggle: 'modal'
mod_disabled = true
for id in @ppmc.roster
if @ppmc.roster[id].selected
mod_disabled = false
break
end
end
if mod_disabled
_button.btn.btn_default 'Modify', disabled: true
else
_button.btn.btn_primary 'Modify',
data_target: '#ppmcmod', data_toggle: 'modal'
end
_p do
_br
_ 'Note: to Add existing committers to the PPMC, please select the committer from the list below and use the Modify button instead.'
_br
_br
_ 'If the person does not yet have an ASF id, please use the '
_a 'Account Request Form', href: '/officers/acreq.cgi'
_br
_br
_ 'N.B. please ask the committer to subscribe themselves to the private list, for example by using the'
_br
_ 'Mailing List Subscription Helper '
_a 'https://whimsy.apache.org/committers/subscribe', href: 'https://whimsy.apache.org/committers/subscribe'
end
elsif not @ppmc.hasLDAP? and (@@auth.root or @@auth.secretary)
_button.btn.btn_primary 'Create project in LDAP', onClick: self.post,
disabled: @create_disabled
end
end
_div.col_sm_6 do
_input.form_control type: 'search', placeholder: 'search',
value: @search
end
end
if @search
_ProjectSearch project: @ppmc, search: @search,
auth: (@@auth.ipmc or @@auth.ppmc)
else
_PPMCMentors auth: @@auth, ppmc: @ppmc
_PPMCMembers auth: @@auth, ppmc: @ppmc
_PPMCCommitters auth: @@auth, ppmc: @ppmc
end
if @ppmc.moderators
_h2.mail! do
_ 'Mailing list info'
_small ' (subscriber count excludes known archivers)'
end
_table.table do
_thead do
_tr do
_th 'list name'
_th do
_ 'moderators'
_small " (last checked #{@ppmc.modtime})"
end
_th do
_ 'subscribers'
_small " (last checked #{@ppmc.subtime})"
end
end
end
_tbody do
for list_name in @ppmc.moderators
_tr do
_td do
_a list_name, href: 'https://lists.apache.org/list.html?' +
list_name
end
_td do
sep=''
@ppmc.moderators[list_name].each { |mod|
_ sep
id=nil
if mod.end_with? '@apache.org'
id=mod.sub(/@a.*/,'')
else
id = @ppmc.nonASFmails[mod]
end
if id
_a mod, href: "committer/#{id}"
else
_ mod
end
sep=', '
}
end
_td @ppmc.subscribers[list_name]
end
end
end
end
else
_h2.mail! 'Mail lists'
_ul do
for list_name in @ppmc.mail
_li do
_a list_name, href: 'https://lists.apache.org/list.html?' +
list_name
end
end
end
end
_br
_p do
_b 'List moderators can obtain subscriber names etc by following '
_a 'these instructions', href: 'https://infra.apache.org/mailing-list-moderation.html'
end
_h2.podlingStatus! 'Podling Status'
_br
_p do
_ 'Please note: the information in this section is derived from Incubator data files.'
_br
_ 'These include:'
_ul do
_li do
_a 'podlings.xml', href: 'https://svn.apache.org/repos/asf/incubator/public/trunk/content/podlings.xml'
end
_li do
_a 'Podling status file', href: "https://svn.apache.org/repos/asf/incubator/public/trunk/content/podlings/#{@ppmc.id}.yml"
end
end
_br
_b 'If it is not accurate or complete, please work with the PPMC and mentors to update the files.'
end
_h3 'Information'
_ul do
_li do
_a 'Podling Proposal', href: @ppmc.podlingStatus.proposal
end if @ppmc.podlingStatus.proposal
_li 'Status: ' + @ppmc.status
_li do
_ 'Established: ' + @ppmc.established
end if @ppmc.established
_li do
_ 'End date: ' + @ppmc.enddate
end if @ppmc.enddate
_li 'Incubating for '+@ppmc.duration+' days'
_li do
_a 'Prior Board Reports', href: '/board/minutes/' +
@ppmc.display_name.gsub(/\s+/, '_')
end
end
_h3 'Resources'
_ul do
_li do
_a 'GitHub', href: 'https://github.com/apache?q=incubator-' + @ppmc.id, target: '_new'
end if @ppmc.podlingStatus.sourceControl == 'github'
_li do
_a 'Git Repositories', href: 'https://gitbox.apache.org/repos/asf?s=incubator-' + @ppmc.id, target: '_new'
end if !@ppmc.podlingStatus.sourceControl || @ppmc.podlingStatus.sourceControl == 'git' || @ppmc.podlingStatus.sourceControl == 'asfgit'
_li do
_a 'https://issues.apache.org/jira/browse/' + @ppmc.podlingStatus.jira,href: 'https://issues.apache.org/jira/browse/' + @ppmc.podlingStatus.jira, target: '_new'
end if @ppmc.podlingStatus.jira
_li do
_a 'https://cwiki.apache.org/confluence/display/' + @ppmc.podlingStatus.wiki,href: 'https://cwiki.apache.org/confluence/display/' + @ppmc.podlingStatus.wiki, target: '_new'
end if @ppmc.podlingStatus.wiki
end
_h3 'Licensing'
_ul do
if @ppmc.podlingStatus.ipClearance
_li 'IP Clearance: '+ @ppmc.podlingStatus.ipClearance
else
_li.podlingWarning 'No IP Clearance Filed (or invalid ipClearance entry)'
end
if @ppmc.podlingStatus.sga
_li 'Software Grant Received on: '+@ppmc.podlingStatus.sga
else
_li.podlingWarning 'No Software Grant Filed (or invalid sga entry)'
end
if @ppmc.podlingStatus.asfCopyright
_li 'Confirmation of ASF Copyright Headers on Source Code on: '+@ppmc.podlingStatus.asfCopyright
else
_li.podlingWarning 'No Release Yet/Missing ASF Copyright Headers on Source Code'
end
if @ppmc.podlingStatus.distributionRights
_li 'Confirmation of Binary Distribution Licensing: '+@ppmc.podlingStatus.distributionRights
else
_li.podlingWarning 'No Release Yet/Binary has licensing issues'
end
end
_h3.reporting! 'Reporting Schedule'
_ul do
_li @ppmc.schedule ? @ppmc.schedule.join(', ') : '(none found)'
_li "Monthly: #{@ppmc.monthly.join(', ')}" if @ppmc.monthly and !@ppmc.monthly.empty?
end
_h3 'Naming'
_ul do
_li do
resolution = @ppmc.namesearch.resolution
resolution = 'Approved' if resolution == 'Fixed'
_a "Podling name search (#{resolution})", href: 'https://issues.apache.org/jira/browse/' + @ppmc.namesearch.issue
end if @ppmc.namesearch
_li.podlingWarning do
_a 'No Podling Name Search on file', href: 'https://incubator.apache.org/guides/names.html#name-search'
end unless @ppmc.namesearch
_li do
_a @ppmc.display_name + ' Website', href: @ppmc.podlingStatus.website
end if @ppmc.podlingStatus.website
_li.podlingWarning do
_ 'Website not defined'
end unless @ppmc.podlingStatus.website
end
_h3 'News' unless @ppmc.podlingStatus.news.empty?
_ul do
@ppmc.podlingStatus.news.each { |ni|
_li ni.date + ' - ' + ni.note
}
end unless @ppmc.podlingStatus.news.empty?
_PPMCGraduate ppmc: @ppmc, id: @@auth.id
if @@auth.ppmc or @@auth.ipmc
_Confirm action: :ppmc, project: @ppmc.id, update: self.update
_PPMCAdd project: @ppmc, onUpdate: self.update, auth: @@auth
_PPMCMod project: @ppmc, onUpdate: self.update, auth: @@auth
end
end