app/templates/components/provider-list.hbs
<div class="col-md-3">
{{#if (can 'create provider')}}
<div class="panel facets">
<div class="panel-body">
<div class="btn-toolbar">
<div class="btn-group btn-group-sm">
<LinkTo
@route="providers.new"
class="btn btn-warning"
id="add-provider"
>
<i class="fas fa-plus"></i>
Add Member
</LinkTo>
</div>
</div>
</div>
</div>
{{else}}
<div class="panel panel-transparent">
<div class="panel-body">
<div class="edit"></div>
</div>
</div>
{{/if}}
{{#if (or this.model.meta.years this.model.query.year)}}
<div class="panel facets add">
<div class="panel-body">
<h4>
Year joined
</h4>
<ul>
{{#if this.model.meta.years}}
{{#each this.model.meta.years as |year|}}
<li>
{{#if this.model.query.year}}
<LinkTo @route="providers" @query={{hash year=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
{{else}}
<LinkTo @route="providers" @query={{hash year=year.id}}>
<i class="far fa-square"></i>
</LinkTo>
{{/if}}
<div class="facet-title">
{{year.title}}
</div>
<span class="number pull-right">
{{year.count}}
</span>
<div class="clearfix"></div>
</li>
{{/each}}
{{else}}
<li>
<LinkTo @route="providers" @query={{hash year=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
<div class="facet-title">
{{this.model.query.year}}
</div>
<span class="number pull-right">
0
</span>
<div class="clearfix"></div>
</li>
{{/if}}
</ul>
</div>
</div>
{{/if}}
{{#if (or this.model.meta.regions this.model.query.region)}}
<div class="panel facets">
<div class="panel-body">
<h4>
Region
</h4>
<ul>
{{#if this.model.meta.regions}}
{{#each this.model.meta.regions as |region|}}
<li>
{{#if this.model.query.region}}
<LinkTo @route="providers" @query={{hash region=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
{{else}}
<LinkTo @route="providers" @query={{hash region=region.id}}>
<i class="far fa-square"></i>
</LinkTo>
{{/if}}
<div class="facet-title">
{{region.title}}
</div>
<span class="number pull-right">
{{region.count}}
</span>
<div class="clearfix"></div>
</li>
{{/each}}
{{else}}
<li>
<LinkTo @route="providers" @query={{hash region=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
<div class="facet-title">
{{this.model.query.region}}
</div>
<span class="number pull-right">
0
</span>
<div class="clearfix"></div>
</li>
{{/if}}
</ul>
</div>
</div>
{{/if}}
{{#if (can 'create provider')}}
{{#if (or this.model.meta.memberTypes this.model.query.member-type)}}
<div class="panel facets">
<div class="panel-body">
<h4>
Member Type
</h4>
<ul>
{{#if this.model.meta.memberTypes}}
{{#each this.model.meta.memberTypes as |memberType|}}
<li>
{{#if this.model.query.member-type}}
<LinkTo @route="providers" @query={{hash member-type=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
{{else}}
<LinkTo
@route="providers"
@query={{hash member-type=memberType.id}}
>
<i class="far fa-square"></i>
</LinkTo>
{{/if}}
<div class="facet-title">
{{memberType.title}}
</div>
<span class="number pull-right">
{{memberType.count}}
</span>
<div class="clearfix"></div>
</li>
{{/each}}
{{else}}
<li>
<LinkTo @route="providers" @query={{hash member-type=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
<div class="facet-title">
{{this.model.query.member-type}}
</div>
<span class="number pull-right">
0
</span>
<div class="clearfix"></div>
</li>
{{/if}}
</ul>
</div>
</div>
{{/if}}
{{#if (or this.model.meta.nonProfitStatuses this.model.query.non-profit-status)}}
<div class="panel facets">
<div class="panel-body">
<h4>
Tax Status
</h4>
<ul>
{{#if this.model.meta.nonProfitStatuses}}
{{#each this.model.meta.nonProfitStatuses as |nonProfitStatus|}}
<li>
{{#if this.model.query.non-profit-status}}
<LinkTo
@route="providers"
@query={{hash non-profit-status=''}}
>
<i class="far fa-check-square"></i>
</LinkTo>
{{else}}
<LinkTo
@route="providers"
@query={{hash non-profit-status=nonProfitStatus.id}}
>
<i class="far fa-square"></i>
</LinkTo>
{{/if}}
<div class="facet-title">
{{nonProfitStatus.title}}
</div>
<span class="number pull-right">
{{nonProfitStatus.count}}
</span>
<div class="clearfix"></div>
</li>
{{/each}}
{{else}}
<li>
<LinkTo @route="providers" @query={{hash non-profit-status=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
<div class="facet-title">
{{this.model.query.non-profit-status}}
</div>
<span class="number pull-right">
0
</span>
<div class="clearfix"></div>
</li>
{{/if}}
</ul>
</div>
</div>
{{/if}}
{{#if (or this.model.meta.organizationTypes this.model.query.organization-type)}}
<div class="panel facets">
<div class="panel-body">
<h4>
Organization Type
</h4>
<ul>
{{#if this.model.meta.organizationTypes}}
{{#each this.model.meta.organizationTypes as |organizationType|}}
<li>
{{#if this.model.query.organization-type}}
<LinkTo
@route="providers"
@query={{hash organization-type=''}}
>
<i class="far fa-check-square"></i>
</LinkTo>
{{else}}
<LinkTo
@route="providers"
@query={{hash organization-type=organizationType.id}}
>
<i class="far fa-square"></i>
</LinkTo>
{{/if}}
<div class="facet-title">
{{organizationType.title}}
</div>
<span class="number pull-right">
{{organizationType.count}}
</span>
<div class="clearfix"></div>
</li>
{{/each}}
{{else}}
<li>
<LinkTo @route="providers" @query={{hash organization-type=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
<div class="facet-title">
{{this.model.query.organization-type}}
</div>
<span class="number pull-right">
0
</span>
<div class="clearfix"></div>
</li>
{{/if}}
</ul>
</div>
</div>
{{/if}}
{{#if (or this.model.meta.focusAreas this.model.query.focus-area)}}
<div class="panel facets">
<div class="panel-body">
<h4>
Focus Area
</h4>
<ul>
{{#if this.model.meta.focusAreas}}
{{#each this.model.meta.focusAreas as |focusArea|}}
<li>
{{#if this.model.query.focus-area}}
<LinkTo @route="providers" @query={{hash focus-area=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
{{else}}
<LinkTo
@route="providers"
@query={{hash focus-area=focusArea.id}}
>
<i class="far fa-square"></i>
</LinkTo>
{{/if}}
<div class="facet-title">
{{focusArea.title}}
</div>
<span class="number pull-right">
{{focusArea.count}}
</span>
<div class="clearfix"></div>
</li>
{{/each}}
{{else}}
<li>
<LinkTo @route="providers" @query={{hash focus-area=''}}>
<i class="far fa-check-square"></i>
</LinkTo>
<div class="facet-title">
{{this.model.query.focus-area}}
</div>
<span class="number pull-right">
0
</span>
<div class="clearfix"></div>
</li>
{{/if}}
</ul>
</div>
</div>
{{/if}}
{{#if (or this.model.meta.hasRequiredContacts this.model.query.has-required-contacts)
}}
<div class="panel facets">
<div class="panel-body">
<h4>
All Required Contacts
</h4>
<ul>
{{#if this.model.meta.hasRequiredContacts}}
{{#each this.model.meta.hasRequiredContacts as |hasRequiredContacts|}}
<li>
{{#if this.model.query.has-required-contacts}}
<LinkTo
@route="providers"
@query={{hash has-required-contacts=''}}
>
<i class="far fa-check-square"></i>
</LinkTo>
{{else}}
<LinkTo
@route="providers"
@query={{hash has-required-contacts=hasRequiredContacts.id
}}
>
<i class="far fa-square"></i>
</LinkTo>
{{/if}}
<div class="facet-title">
{{hasRequiredContacts.title}}
</div>
<span class="number pull-right">
{{hasRequiredContacts.count}}
</span>
<div class="clearfix"></div>
</li>
{{/each}}
{{else}}
<li>
<LinkTo
@route="providers"
@query={{hash has-required-contacts=''}}
>
<i class="far fa-check-square"></i>
</LinkTo>
<div class="facet-title">
{{this.model.query.has-required-contacts}}
</div>
<span class="number pull-right">
0
</span>
<div class="clearfix"></div>
</li>
{{/if}}
</ul>
</div>
</div>
{{/if}}
{{/if}}
</div>
<div class="col-md-9 panel-list" id="content">
{{#if this.searchable}}
<ModelSearch
@model={{this.model}}
@sortable={{true}}
@name="Member"
@link="providers"
/>
{{/if}}
{{#if this.model}}
{{#each this.model as |provider|}}
<div class="panel panel-transparent" data-test-provider>
<div class="panel-body">
<h3 class="work">
<LinkTo @route="providers.show" @model={{provider.id}}>
{{provider.displayName}}
</LinkTo>
{{#unless provider.isActive}}
<span class="label label-warning-inv">
Inactive
</span>
{{/unless}}
</h3>
<h5>
Member ID
</h5>
{{provider.symbol}}
{{#if provider.rorId}}
<h5>
ROR ID
</h5>
<a href="{{provider.rorId}}">
{{provider.rorId}}
</a>
{{/if}}
<h5>
Member Type
</h5>
{{titleize (humanize (underscore provider.memberType))}}
<h5>
Tax Status
</h5>
{{titleize provider.nonProfitStatus}}
{{#if provider.organizationType}}
<h5>
Organization Type
</h5>
{{titleize (humanize (underscore provider.organizationType))}}
{{/if}}
{{#if provider.focusArea}}
<h5>
Focus Area
</h5>
{{titleize (humanize (underscore provider.focusArea))}}
{{/if}}
{{#if (not-eq provider.memberType 'developer')}}
{{#if (not-eq provider.memberType 'consortium_organization')}}
<h5>
Voting Representative
</h5>
<div cy-data="voting">
{{#if provider.votingContact.email}}
{{format-contact provider.votingContact}}
{{else}}
<span class="small icon-warning">
Please provide this information.
</span>
{{/if}}
</div>
{{/if}}
<h5>
Service Contact
</h5>
<div cy-data="service">
{{#if provider.serviceContact.email}}
{{format-contact provider.serviceContact}}
{{else}}
<span class="small icon-warning">
Please provide this information.
</span>
{{/if}}
</div>
{{#if (not-eq provider.memberType 'consortium_organization')}}
<h5>
Billing Contact
</h5>
<div cy-data="billing">
{{#if provider.billingContact.email}}
{{format-contact provider.billingContact}}
{{else}}
<span class="small icon-warning">
Please provide this information.
</span>
{{/if}}
</div>
<h5>
Billing Information
</h5>
{{#if provider.formattedBillingInformation}}
{{#if provider.billingContact.familyName}}
{{provider.billingContact.givenName}}
{{provider.billingContact.familyName}}
<br />
{{/if}}
{{#if provider.billingInformation.department}}
{{provider.billingInformation.department}}<br />
{{/if}}
{{#if provider.billingInformation.organization}}
{{provider.billingInformation.organization}}<br />
{{else}}
{{provider.name}}<br />
{{/if}}
{{#if provider.formattedBillingInformation}}
{{#each provider.formattedBillingInformation as |line|}}
{{line}}<br />
{{/each}}
{{/if}}
{{else}}
<span class="small icon-warning">
Please provide this information.
</span>
{{/if}}
{{/if}}
{{/if}}
</div>
</div>
{{/each}}
<div class="text-center">
{{#if (gt this.model.meta.totalPages 1)}}
<PageNumbers @model={{this.model}} @link="providers" />
{{/if}}
</div>
{{else}}
<BsAlert @dismissible={{false}} @type="warning">
No members found.
</BsAlert>
{{/if}}
</div>