From 95588204a6dfba11093486e94d71a7283b3e331d Mon Sep 17 00:00:00 2001
From: anonymous <anonymous>
Date: Wed, 12 Dec 2018 16:59:54 +0100
Subject: [PATCH] ODPSH-12: add sharing

---
 ckanext/odsh/helpers.py                       |   6 +++++-
 .../odsh/i18n/de/LC_MESSAGES/ckanext-odsh.mo  | Bin 5056 -> 5108 bytes
 .../odsh/i18n/de/LC_MESSAGES/ckanext-odsh.po  |   5 ++++-
 ckanext/odsh/plugin.py                        |   3 ++-
 ckanext/odsh/public/odsh.css                  |  11 ++++++++++
 .../odsh/templates/package/snippets/info.html |  19 +++++++++++++++---
 6 files changed, 38 insertions(+), 6 deletions(-)

diff --git a/ckanext/odsh/helpers.py b/ckanext/odsh/helpers.py
index ab4ac400..8ca47d1d 100644
--- a/ckanext/odsh/helpers.py
+++ b/ckanext/odsh/helpers.py
@@ -9,6 +9,7 @@ from ckan.common import  c
 import  datetime
 from dateutil import parser
 from ckan.common import config
+import urllib
 
 get_action = logic.get_action
 log = logging.getLogger(__name__)
@@ -103,4 +104,7 @@ def odsh_render_datetime(datetime_, date_format='{0.day:02d}.{0.month:02d}.{0.ye
 def odsh_upload_known_formats():
     value = config.get('ckanext.odsh.upload_formats', [])
     value = toolkit.aslist(value)
-    return value
\ No newline at end of file
+    return value
+
+def odsh_encodeurl(url):
+    return urllib.quote(url, safe='')
\ No newline at end of file
diff --git a/ckanext/odsh/i18n/de/LC_MESSAGES/ckanext-odsh.mo b/ckanext/odsh/i18n/de/LC_MESSAGES/ckanext-odsh.mo
index 952393e23e4bfc2b8588c20b80efe76d2ca4437b..8b66a573466c81adb2247471132a04ec56b836ca 100644
GIT binary patch
delta 1417
zcmX@0{zbk1o)F7a1_lO(U<L*T83qQ1EleOD0{gHsFbFX)F!-`EFmN+4FeI=tFsL#x
zFyyd8)K6k%U|?lnU|7$}z`)MHz_1mnZZ9hX13v=;!%0>K24w~YhMTMm3|tHh41ZY}
z7z7y@7&zD%7!(*7>KUZi7#JiO7#OVCAQGW$5QXV%5DSagAQsfIK^)S;#=yYFz`!t_
zje&uafq`Kj8v}y`0|UbfsQ5uPh(k_5&A9;8e;X?Qkd1+XkAZ>V1sljC^$ZN(*%%m9
z7#J92*%=r_7#J9w*cljP85kJC*%=sk85kH!*&z;WW`}5;3stv<9pb=)><kRj3=9ls
z*%=tL85kH|vO|0>%E7=O#lXOz%E7?E!oa}bz`?-4!@$7c$^kJah=YMax1NE4A(4ZD
zL6m`kp`Qcd)1@2?3>*v$468XHKHUP<up26Vii3ecoPmMiG6%$>*H8<7L)C$T1r+rB
zoRAQb=Y*K2$q5NrBTk3|Y&jVi>On5^;e-TPAXH%_lum+*XLCXvQp^eQaTO=TM{S%8
z48jZy4Bea%56tI;IBY8?C}<fN&T@j|nBg-g1A`m`1A_<`gm26R3DFQPhI(+~%Hx8>
zZ6g=N#Z$N#7(nT89v1_H9s>izLM{ddF9rsN3tS8g77Ppw(%cLT6Brp7LbxGO^pppZ
z20rsJFc>m0F!1m~9AL)_kx$`;1bq>duIGg~xQDkM68DRE85qPE7#NO2CGPPuFsLyw
zFnr-<V2}q{$OkdVnh&DUlMfPv@qCbw%j08U5MW?nDC2{KR68FesQdUJ9-9f}uYt;M
zhtm7%`5<wA6e@6<50VHk@j(*Pb3RDW3G+j;n-M?6LH_)ZsL1DsB-Uzvh{I;`L!w|k
zKO`iN^D{7LF)%P(<Y!<|WME+U!w(61IROR+O$G*rdJ6%F&yoZnaakY$F{nj=fx(D@
zfnk;a#KN-z5Qn}MfEfH)0OHfXP(F(wBu(%MLPAbh5aJOlK}ZPs3qrDYxF95?G6lir
z)H75;7z{0f5Qp?Z70wZ4U|?ooU|1&zNxhq(>UKlvqfq+1AS4&ugc|%(5aO_3P(Gs&
z1A_(w1A~wd1A{K8oDqVgjZ7g>$OSVn^b0|Jx>g9179I#eLV#5m;!<g0NF3@2LmXl+
z3~`u;Fav`n0|SGPFav`#0|P^wFeFG%ZMI}pV-?IuEJ{@<$;d2LNJ%V7EKV)i9LqJE
aL%=1mBsH%%v7}0&BsDW9HE;5Fp_2gr9)?{2

delta 1366
zcmeyOen7qco)F7a1_lO(AO;2o83qQ1HB2BL0^6`MFbFX)Fxav(FmN+4Fa)qNFsL#x
zFvPGz)Hks*Ft9Q(FwAFVU|?rpU|0%Ox0aQGfuDhaVJ9mCgE9jH!%0>K1}+8$hPSK?
z41x>{3_n;I7!(*7>KVA$7#JiO7#OtKAQG-@5QX7v5DSyoAQt4YK^#)T#=yYFz`)SX
z#=yYIz`)SQ#=s!Kz`!sAD!!2o;*cFsa}GfDpN7g`WMg39V_;yo!3Oe3Jp;pYHU<V2
z1_lORb_NC!1_lNrb_NDn1_lOqb_NDs1_p*yc8CLu*&!Nxq3Y(aLmaq~oq<7`fq`K!
zI|G9@0|UcNc8JeeIT#qE7#J8tIT#pN7#J7~I2ags7#J8#IUwdZaWF9G)-y0L1adGi
zh%zuR)N??5I+cTgfrEj8VKxWEr%Rw3Rzt;iaWF85GcYh5=73mq8*0I8sJahO@&6o<
z5aQ>Am?y~z30Wmhhy!#v85rt8F0<i;1eqgLp(m6Mf{I6TLL8FJ3Gs0jC&Wi(oD2-Y
z3=9m_oDdK6b3z=ploJ%R3=DfY!Ewy+n3I7)j)8%Jg$u%0=7NN%3l~E@IB~^sL0nqM
z#lQecf7M(J40;R<40T)#3|<Tj3~RX<7%V`EhKqq=0wV*1AvYvy4)H+Z{sIpJgCPS0
z!%H5B#nQYGc}HGIko!aF7+#1&GkGCVUe8<4z#zuJz_0`=v748HL5+cd;UX^sgFMJW
zs6i5Z5RGblkf5{SgM^qj9|MB`0|P@aA0&iQ_#i=?%?C-WWl(-6RDKGSp3Mh|>P7WX
zffam^#J8Rgl8BD*L4xc9A0(Uc^Fth@!w-o9AAU$8jo^nktc)KL^gaBLkX*vgz@Wvz
zz_5;=fk6?JDET2l{+pkHK@*fH1t1|*Z!Z9eLtg=iL5Ttk3`PtL4CMk43s(t1TzX0X
zV(<k4h)-`p`40skY2md1B;-B_Ks+KY2nit_K}fbX5rl-4n;^uTa0p$`kSGXoNj6kr
zr62<XGXn!dw;&|d_Cpjh%z)C1p!6C+Nb27PHTaky#9`N={Ck273>pj!4DSUQ7<3sJ
z7$k%sX~Rtj5^_00AdfmTFmwq)62o30NC-R<g2deqA&3LGg&__S5oTbp1Q{gEz~Brj
ZF@+&PIc>8is~YR(Ca#$rlXZko008C0b-4fl

diff --git a/ckanext/odsh/i18n/de/LC_MESSAGES/ckanext-odsh.po b/ckanext/odsh/i18n/de/LC_MESSAGES/ckanext-odsh.po
index 072665bd..94d41ba1 100644
--- a/ckanext/odsh/i18n/de/LC_MESSAGES/ckanext-odsh.po
+++ b/ckanext/odsh/i18n/de/LC_MESSAGES/ckanext-odsh.po
@@ -272,4 +272,7 @@ msgid "submit date search"
 msgstr "Zeitbezug anwenden"
 
 msgid "daterange"
-msgstr "Zeitbezug"
\ No newline at end of file
+msgstr "Zeitbezug"
+
+msgid "share this dataset"
+msgstr "Datensatz teilen"
\ No newline at end of file
diff --git a/ckanext/odsh/plugin.py b/ckanext/odsh/plugin.py
index 4d2e165a..93eed79c 100644
--- a/ckanext/odsh/plugin.py
+++ b/ckanext/odsh/plugin.py
@@ -170,7 +170,8 @@ class OdshPlugin(plugins.SingletonPlugin, DefaultTranslation, DefaultDatasetForm
                 'odsh_get_bounding_box': odsh_helpers.odsh_get_bounding_box,
                 'odsh_get_spatial_text': odsh_helpers.odsh_get_spatial_text,
                 'odsh_render_datetime': odsh_helpers.odsh_render_datetime,
-                'odsh_upload_known_formats': odsh_helpers.odsh_upload_known_formats
+                'odsh_upload_known_formats': odsh_helpers.odsh_upload_known_formats,
+                'odsh_encodeurl': odsh_helpers.odsh_encodeurl
         }
 
     def before_map(self, map):
diff --git a/ckanext/odsh/public/odsh.css b/ckanext/odsh/public/odsh.css
index c9a2418c..e54db9fc 100644
--- a/ckanext/odsh/public/odsh.css
+++ b/ckanext/odsh/public/odsh.css
@@ -1241,3 +1241,14 @@ display: none;
     margin-top: 40px;
     margin-left: 400px;
 }
+
+.share-links {
+    display: flex;
+    justify-content: space-between;
+}
+
+.share-links a{
+    font-size: 22px;
+    margin-top: 5px;
+    color:#003064;
+}
diff --git a/ckanext/odsh/templates/package/snippets/info.html b/ckanext/odsh/templates/package/snippets/info.html
index d1d52432..f5f83314 100644
--- a/ckanext/odsh/templates/package/snippets/info.html
+++ b/ckanext/odsh/templates/package/snippets/info.html
@@ -60,7 +60,8 @@ Example:
 
             {% block last_change %}
             <div class="last-change-detail info-detail">
-                {%set issued=h.odsh_render_datetime(pkg.issued) if pkg.issued else h.odsh_render_datetime(pkg.metadata_created)%}
+                {%set issued=h.odsh_render_datetime(pkg.issued) if pkg.issued else
+                h.odsh_render_datetime(pkg.metadata_created)%}
                 <div>{{ _('issued') }}:</div>
                 {{issued}}
             </div>
@@ -92,7 +93,19 @@ Example:
             {% endif %}
         </div>
         {% endblock %}
-    </div>
+        {% block social_nav %}
+        <div class="info-detail">
+            {% set current_url = h.odsh_encodeurl(h.full_current_url()) %}
+            <p>{{ _('share this dataset')}}:</p>
+            <div class="share-links">
+                <a href="https://www.linkedin.com/shareArticle?mini=true&url={{current_url}}" target="_blank"><i class="fa fa-linkedin"></i></a>
+                <a href="https://www.xing.com/app/user?op=share&url={{ current_url }}" target="_blank"><i class="fa fa-xing-square"></i></a>
+                <a href="https://www.facebook.com/sharer.php?href={{ current_url }}" target="_blank"><i class="fa fa-facebook-square"></i></a>
+                <a href="https://twitter.com/share?url={{ current_url }}" target="_blank"><i class="fa fa-twitter-square"></i></a>
+                <a href="mailto:?body={{ current_url }}" target="_blank"><i class="fa fa-envelope"></i></a>
+            </div>
+        </div>
+        {% endblock %}
 </section>
 {% endif %}
-{% endblock %}
+{% endblock %}
\ No newline at end of file
-- 
GitLab