From 550791013b70f89a3e3478f0f3fbb403daa254da Mon Sep 17 00:00:00 2001
From: Jorran de Wit <jorrandewit@outlook.com>
Date: Thu, 11 Jan 2018 18:10:12 +0100
Subject: [PATCH] CSS improvements for partner logos

---
 partners/forms.py                             |  3 ++-
 .../migrations/0003_institution_css_class.py  | 20 +++++++++++++++++++
 partners/models.py                            |  2 ++
 .../partners/supporting_partners.html         |  4 ++--
 scipost/static/scipost/assets/css/_media.scss |  9 +++++++++
 scipost/static/scipost/assets/css/style.scss  |  1 +
 6 files changed, 36 insertions(+), 3 deletions(-)
 create mode 100644 partners/migrations/0003_institution_css_class.py
 create mode 100644 scipost/static/scipost/assets/css/_media.scss

diff --git a/partners/forms.py b/partners/forms.py
index 18a2df781..597203298 100644
--- a/partners/forms.py
+++ b/partners/forms.py
@@ -135,7 +135,8 @@ class InstitutionForm(forms.ModelForm):
             'acronym',
             'address',
             'country',
-            'logo'
+            'logo',
+            'css_class',
         )
 
 
diff --git a/partners/migrations/0003_institution_css_class.py b/partners/migrations/0003_institution_css_class.py
new file mode 100644
index 000000000..86b396b46
--- /dev/null
+++ b/partners/migrations/0003_institution_css_class.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.4 on 2018-01-11 17:03
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('partners', '0002_auto_20171229_1435'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='institution',
+            name='css_class',
+            field=models.CharField(blank=True, max_length=256),
+        ),
+    ]
diff --git a/partners/models.py b/partners/models.py
index a50861dc2..0bd898737 100644
--- a/partners/models.py
+++ b/partners/models.py
@@ -113,6 +113,8 @@ class Institution(models.Model):
     kind = models.CharField(max_length=32, choices=PARTNER_KINDS)
     name = models.CharField(max_length=256)
     logo = models.ImageField(upload_to='institutions/logo/%Y/', blank=True)
+    css_class = models.CharField(max_length=256, blank=True,
+                                 verbose_name="Additional logo CSS class")
     acronym = models.CharField(max_length=16)
     address = models.TextField(blank=True)
     country = CountryField()
diff --git a/partners/templates/partners/supporting_partners.html b/partners/templates/partners/supporting_partners.html
index 10927c949..65ec345bf 100644
--- a/partners/templates/partners/supporting_partners.html
+++ b/partners/templates/partners/supporting_partners.html
@@ -20,7 +20,7 @@
 
 {% if perms.scipost.can_manage_SPB %}
     <div class="row">
-      <div class="col-12">          
+      <div class="col-12">
           <a href="{% url 'partners:dashboard' %}">Manage Partners</a>
         </div>
     </div>
@@ -154,7 +154,7 @@
         <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">
+                    <img class="d-flex mr-3 {{ agreement.partner.institution.css_class }}" 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>
diff --git a/scipost/static/scipost/assets/css/_media.scss b/scipost/static/scipost/assets/css/_media.scss
new file mode 100644
index 000000000..e05fa8031
--- /dev/null
+++ b/scipost/static/scipost/assets/css/_media.scss
@@ -0,0 +1,9 @@
+.media > img.small-img {
+    width: 100px;
+    margin-left: 46px;
+    margin-right: 46px;
+
+    &.mr-3 {
+        margin-right: 62px !important;
+    }
+}
diff --git a/scipost/static/scipost/assets/css/style.scss b/scipost/static/scipost/assets/css/style.scss
index 5b2d4702f..ddd9fc91b 100644
--- a/scipost/static/scipost/assets/css/style.scss
+++ b/scipost/static/scipost/assets/css/style.scss
@@ -26,6 +26,7 @@
 @import "homepage";
 @import "labels";
 @import "list_group";
+@import "media";
 @import "messages";
 @import "modal";
 @import "navbar";
-- 
GitLab