SciPost Code Repository

Skip to content
Snippets Groups Projects
Commit ce6dd7f2 authored by Jean-Sébastien Caux's avatar Jean-Sébastien Caux
Browse files

Preparation work for SPB campaign

parent ba290101
No related branches found
No related tags found
No related merge requests found
from django.contrib import admin
from .models import Contact, Partner, Consortium, Institution,\
from .models import Petition, Contact, Partner, Consortium, Institution,\
ProspectivePartner, ProspectiveContact, ProspectivePartnerEvent,\
MembershipAgreement, ContactRequest, PartnersAttachment
class PetitionAdmin(admin.ModelAdmin):
prepopulated_fields = {'slug': ('title',)}
admin.site.register(Petition, PetitionAdmin)
class AttachmentInline(admin.TabularInline):
model = PartnersAttachment
......
# -*- coding: utf-8 -*-
# Generated by Django 1.11.4 on 2017-10-03 18:58
from __future__ import unicode_literals
from django.db import migrations, models
import partners.storage
class Migration(migrations.Migration):
dependencies = [
('scipost', '0065_authorshipclaim_publication'),
('partners', '0032_auto_20170829_0727'),
]
operations = [
migrations.CreateModel(
name='Petition',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=256)),
('slug', models.SlugField()),
('headline', models.CharField(max_length=256)),
('statement', models.TextField()),
('signatories', models.ManyToManyField(related_name='petitions', to='scipost.Contributor')),
],
),
migrations.AlterField(
model_name='partnersattachment',
name='attachment',
field=models.FileField(storage=partners.storage.SecureFileStorage(), upload_to='UPLOADS/PARTNERS/ATTACHMENTS'),
),
]
......@@ -33,6 +33,21 @@ from scipost.fields import ChoiceArrayField
from scipost.models import get_sentinel_user, Contributor
#############
# Petitions #
#############
class Petition(models.Model):
title = models.CharField(max_length=256)
slug = models.SlugField()
headline = models.CharField(max_length=256)
statement = models.TextField()
signatories = models.ManyToManyField('scipost.Contributor', related_name='petitions')
########################
# Prospective Partners #
########################
......
{% extends 'scipost/base.html' %}
{% block pagetitle %}: Supporting Partners: Petition{% endblock pagetitle %}
{% load bootstrap %}
{% load staticfiles %}
{% load scipost_extras %}
{% block content %}
<div class="row">
<div class="col-12">
<h1 class="highlight">SciPost Supporting Partners</h1>
<h2>{{ petition.headline }}</h2>
{{ petition.statement }}
{% if request.user not in petition.signatories %}
<h3><a href="{% url 'partners:sign_petition' slug=petition.slug contributor_id=contributor.id %}">Sign this petition</a></h3>
{% else %}
<h3>Thanks for signing this petition.</h3>
{% endif %}
</div>
</div>
<div class="row">
<div class="col-12">
<h2>Signatories</h2>
<table class="table">
{% for signatory in petition.signatories %}
<tr>
<td>{{ signatory.last_name }}</td>
<td>{{ signatory.first_name }}</td>
<td>{{ signatory.institution }}</td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% if current_agreements %}
<div class="row">
<div class="col-12">
<h1 class="highlight">Partners</h1>
<ul class="list-unstyled mb-5">
{% for agreement in current_agreements %}
<li class="media mb-2">
<img class="d-flex mr-3" width="192" src="{% if agreement.partner.institution.logo %}{{agreement.partner.institution.logo.url}}{% endif %}" alt="Partner Logo">
<div class="media-body">
<p>
<strong>{{agreement.partner.institution.name}}</strong><br>
{{agreement.partner.institution.get_country_display}}
</p>
</div>
</li>
{% endfor %}
</ul>
</div>
</div>
{% endif %}
Dear ...%0D%0A
%0D%0A
I am writing to draw your attention to SciPost, a publishing initiative that is currently helping to transform the academic publishing industry.%0D%0A
%0D%0A
SciPost (https://scipost.org) is a top-quality next-generation Open Access publication portal managed by professional scientists. Its principles, ideals and implementation can be found at https://scipost.org/about and https://scipost.org/FAQ.%0D%0A
%0D%0A
SciPost follows a different funding model than most traditional publishers. It operates on an entirely not-for-profit basis, and charges neither subscription fees nor article processing charges; instead, its activities are financed through a cost-slashing consortial model.%0D%0A
%0D%0A
By making a small financial commitment, the institutions and organizations that benefit from SciPost’s activities can become Supporting Partners. This enables SciPost to perform all of its publication-related activities, maintain its online portal and implement its long-term development plan. Details of the consortial funding scheme and how to join can be found at https://scipost.org/partners or by emailing partners@scipost.org.%0D%0A
%0D%0A
My work as an active professional scientist greatly benefits from SciPost's activities, and I recommend that you give this initiative your concrete backing by becoming one of its Supporting Partners.%0D%0A
%0D%0A
Many thanks for your consideration,%0D%0A
[your signature]
......@@ -17,6 +17,28 @@
</div>
</div>
<div class="row">
<div class="col-12">
<ul>
<li>
<p>
Are you a scientist?<br/>
Is your institution of funding body not listed below as one of our current Supporting Partners?<br/>
Please petition them to join by sending a librarian/director/... an email, starting from this <a href="mailto:?subject=Petition to support SciPost&body={% autoescape on %}{% include 'partners/petition_email.html' %}{% endautoescape %}&cc=partners@scipost.org">template</a>.
</p>
</li>
<li>
<p>
Are you a librarian, funding agency representative or other potential supporter?<br/>
Have a quick look at our <a href="{% static 'scipost/SPB/SciPost_Supporting_Partners_Board_Prospectus.pdf' %}">one-page Prospectus</a>.<br/>
Read detailed information in the draft <a href="{% static 'scipost/SPB/SciPost_Supporting_Partner_Agreement.pdf' %}">Partner Agreement</a>, and <a href="mailto:partners@scipost.org">contact us</a> to get further details.
</p>
</li>
</ul>
</div>
</div>
<div class="row">
<div class="col-12">
<h3>Openness at strictly minimal cost: the role of professional academics</h3>
......
......@@ -4,6 +4,7 @@ from . import views
urlpatterns = [
url(r'^$', views.supporting_partners, name='partners'),
url(r'^$', views.petition, name='petition'),
url(r'^dashboard$', views.dashboard, name='dashboard'),
url(r'^membership_request$', views.membership_request, name='membership_request'),
url(r'^process_contact_requests$', views.process_contact_requests, name='process_contact_requests'),
......
......@@ -13,7 +13,7 @@ from guardian.decorators import permission_required
from .constants import PROSPECTIVE_PARTNER_REQUESTED,\
PROSPECTIVE_PARTNER_APPROACHED, PROSPECTIVE_PARTNER_ADDED,\
PROSPECTIVE_PARTNER_EVENT_REQUESTED, PROSPECTIVE_PARTNER_EVENT_EMAIL_SENT
from .models import Partner, ProspectivePartner, ProspectiveContact, ContactRequest,\
from .models import Petition, Partner, ProspectivePartner, ProspectiveContact, ContactRequest,\
ProspectivePartnerEvent, MembershipAgreement, Contact, Institution,\
PartnersAttachment
from .forms import ProspectivePartnerForm, ProspectiveContactForm,\
......@@ -39,6 +39,14 @@ def supporting_partners(request):
return render(request, 'partners/supporting_partners.html', context)
def petition(request, slug):
petition = get_object_or_404(Petition, slug=slug)
context = {
'petition', petition
}
return render(request, 'partners/petition.html', context)
@login_required
@permission_required('scipost.can_read_partner_page', return_403=True)
def dashboard(request):
......
File added
......@@ -123,8 +123,11 @@
SciPost guarantees free online access to all publications in all its Journals and does not charge any article processing fees for publishing. Supporting Partners provide operating funds to SciPost.
</p>
<p>
Institutions: consider joining our <a href="{% url 'partners:partners' %}">Supporting Partners Board</a>. SciPost cannot exist without your support.
Institutions: consider joining our <a href="{% url 'partners:partners' %}">Supporting Partners Board</a>. SciPost cannot exist without your support. Look at our <a href="{% static 'scipost/SPB/SciPost_Supporting_Partners_Board_Prospectus.pdf' %}">one-page Prospectus</a> and at our full <a href="{% static 'scipost/SPB/SciPost_Supporting_Partner_Agreement.pdf' %}">Partner Agreement</a>.
</p>
<p>
Scientists: if it is not listed on our <a href="{% url 'partners:partners' %}">Partners page</a>, please petition your institution (through a librarian, director, ...) to join, using this <a href="mailto:?subject=Petition to support SciPost&body={% autoescape on %}{% include 'partners/petition_email.html' %}{% endautoescape %}&cc=partners@scipost.org">email template</a>.
</p>
</div>
</div>
</div><!-- End Partners -->
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment