Skip to main content

Model and front end library for choosing and integrating social media share widgets.

Project description

django-social-share-settings
=======================

Model and front end library for choosing and integrating social media share widgets, similar to AddThis.


#Install

Add to your requirements.txt file:
```python
#requirements.txt

-e git+https://github.com/ninapavlich/django-social-share-settings.git@2ac1309c5f2e4a816263ee689bcc60655a0643b5#egg=django-social-share-settings-dev

```
Run install:
```
> pip install -r requirements.txt
```

#CMS Usage:

To make social settings administerable, include django_social_share_settings and rake the database:
```python
#settings.py


INSTALLED_APPS = (
...
'django_social_share_settings',
...
)
```

```
> python manage.py schemamigration django_social_share_settings --initial
> python manage.py migrate django_social_share_settings
```

To make track social shares:

```python
#urls.py
(r'^', include('django_social_share_settings.urls')),
```



#Template Usage:
To output share icons based on the settings from the cms, use the
"social_share_settings_tags" template tags. In this case I'm using
"Font Awesome" to render the icons.
```
#social-share-partial.html
{% load social_share_settings_tags %}

{% get_social_share_links as social_links %}

{% if social_links|length > 0 %}
<ul class="social sticky">
{% for link in social_links %}
{% get_social_share_link link object.get_absolute_url object.title as link_url %}
<li>
<a href="{{ link_url }}" target="_blank">
<i class="fa fa-{{link.font_awesome_class}}"></i>
</a>
</li>
{% endfor %}
</ul>
{% endif %}
```


#Sticky Usage
For sticky behavior, include or compile in the styles and javscript.

See screencast of sticky widget in action: http://screencast.com/t/Gm8Sah4IMQ
```html
#base-template.html
<!-- Include Font Awesome for easier social icons -->
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet" />

<!-- Include js plugin and css or compile into your source js -->
<link rel="stylesheet" href="{% static 'ccl/sticky.min.css' %}"/>
<script src="{% static 'js/sticky.jqueryplugin.js'%}"></script>
<script>
$(".sticky").sticky({
topSelector : "#main",
bottomSelector : "#footer",
fixedMargin : 160,
topMargin : 0,
bottomMargin : 0
});
</script>
```
*topSelector* is the selector for the item the sticky widget should top-align with.

*bottomSelector* is the selector for the item the sticky widget should not go below.

*topMargin* refers to the top margin the sticky item will have when aligned to the top selector item

![topMargin example](/../master/docs/screenshots/top_margin.png?raw=true "topMargin example")

*fixedMargin* refers to the top margin the sticky item will have when the screen has scrolled past the top selector item

![fixedMargin example](/../master/docs/screenshots/fixed_margin.png?raw=true "fixedMargin example")

*bottomMargin* refers to the bottom margin the sticky item will have when aligned to the bottom selector item

![bottomMargin example](/../master/docs/screenshots/bottom_margin.png?raw=true "bottomMargin example")

Project details


Release history Release notifications | RSS feed

This version

0.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-social-share-settings-0.2.tar.gz (10.2 kB view details)

Uploaded Source

File details

Details for the file django-social-share-settings-0.2.tar.gz.

File metadata

File hashes

Hashes for django-social-share-settings-0.2.tar.gz
Algorithm Hash digest
SHA256 fa40201b691ee086a8e0b8b3bc8313fa9b471ca2c7b62ad39348f27ee257c1cc
MD5 e246b8453afc96fc436a2d59be24ae6e
BLAKE2b-256 61c85442fa60b93cd2fd8c187d6490a1a6e292f0be44d79bd3db49f3050e6f5e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page