`_
29 |
30 |
31 | .. image:: https://travis-ci.org/fusionbox/django-widgy.png?branch=master
32 | :target: http://travis-ci.org/fusionbox/django-widgy
33 | :alt: Build Status
34 |
35 | .. _GitHub: https://github.com/fusionbox/django-widgy
36 |
--------------------------------------------------------------------------------
/docs/roadmap.md:
--------------------------------------------------------------------------------
1 | Design
2 |
3 | Data Model
4 | Base Model structure
5 | Versioning
6 | WidgySite (rationale)
7 | Owner Contract
8 | JavaScript (low priority)
9 |
10 | Contrib Packages
11 |
12 | Page Builder (list of widgets)
13 | Form Builder
14 | - installation (HandleFormMixin)
15 | - list of widgets
16 | - Form API
17 | - success handlers
18 | Widgy Mezzanine
19 | - installation
20 | Review Queue
21 | - installation / permissions
22 |
23 | API Reference
24 |
25 | Model Fields
26 | Forms/Formfields
27 | Node API
28 | Content API
29 | WidgySite (API)
30 | Links API
31 |
32 |
33 | Tutorials
34 |
35 | Tutorial with Widgy Mezzanine
36 | - start at startproject
37 | - install Mezzanine
38 | - end at creating your own widget.
39 | Creating your first Widget
40 | Creating a custom widgy owner
41 | - views
42 | Creating a component (low priority)
43 |
--------------------------------------------------------------------------------
/docs/tutorials/index.rst:
--------------------------------------------------------------------------------
1 | Tutorials
2 | =========
3 |
4 |
5 | .. toctree::
6 | :maxdepth: 1
7 |
8 | widgy-mezzanine-tutorial
9 | require-optimizer
10 | first-widget
11 | proxy-widget
12 | custom-owner
13 |
--------------------------------------------------------------------------------
/docs/tutorials/require-optimizer.rst:
--------------------------------------------------------------------------------
1 | Building Widgy's JavaScript With RequireJS
2 | ==========================================
3 |
4 | Widgy's editing interface uses RequireJS to handle dependency management
5 | and to encourage code modularity. This is convenient for development,
6 | but might be slow in production due to the many small JavaScript files.
7 | Widgy supports building its JavaScript with the `RequireJS optimizer`_
8 | to remedy this. This is entirely optional and only necessary if the
9 | performance of loading many small JavaScript and template files bothers
10 | you.
11 |
12 | To build the JavaScript,
13 |
14 | - Install ``django-require``::
15 |
16 | pip install django-require
17 |
18 | - Add the settings for django-require::
19 |
20 | REQUIRE_BUILD_PROFILE = 'widgy.build.js'
21 | REQUIRE_BASE_URL = 'widgy/js'
22 | STATICFILES_STORAGE = 'require.storage.OptimizedStaticFilesStorage'
23 |
24 | - Install ``node`` or ``rhino`` to run ``r.js``. django-require will
25 | detect which one you installed. ``rhino`` is nice because you can
26 | apt-get it::
27 |
28 | apt-get install rhino
29 |
30 | Now the JavaScript will automatically built during
31 | :django:djadmin:`collectstatic`.
32 |
33 |
34 | .. _RequireJS optimizer: http://requirejs.org/docs/optimization.html
35 |
--------------------------------------------------------------------------------
/js_tests/README.md:
--------------------------------------------------------------------------------
1 | # Test Framework
2 |
--------------------------------------------------------------------------------
/js_tests/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "test_js",
3 | "version": "0.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "directories": {
7 | "test": "tests"
8 | },
9 | "dependencies": {
10 | "jsdom": "~1.0.0",
11 | "requirejs": "~2.1.4",
12 | "chai": "~1.4.2",
13 | "sinon": "~1.7.1"
14 | },
15 | "devDependencies": {
16 | "mocha": "~1.8.1",
17 | "mocha-as-promised": "~1.2.1"
18 | },
19 | "scripts": {
20 | "test": "mocha"
21 | },
22 | "repository": "",
23 | "author": "",
24 | "license": "BSD",
25 | "readmeFilename": "README.md"
26 | }
27 |
--------------------------------------------------------------------------------
/js_tests/tests/setup.js:
--------------------------------------------------------------------------------
1 | var path = require('path'),
2 | requirejs = require('requirejs'),
3 | jsdom = require('jsdom').jsdom;
4 |
5 | require('mocha-as-promised')();
6 |
7 | global.document = global.document || jsdom();
8 | global.window = global.window = global.document.parentWindow;
9 |
10 | requirejs.config({
11 | baseUrl: path.join(__dirname, "../../widgy/static/widgy/js/"),
12 | paths: {
13 | 'jquery': './lib/jquery',
14 | 'underscore': './lib/underscore',
15 | 'backbone': './lib/backbone',
16 | 'text': 'require/text'
17 | }
18 | });
19 |
20 | // Backbone expects window.jQuery to be set.
21 | var Backbone = requirejs('lib/backbone'),
22 | jQuery = requirejs('lib/jquery');
23 |
24 | Backbone.$ = jQuery;
25 |
26 | // Does this matter? Backbone needs this set
27 | global.location = {
28 | href: '//127.0.0.1'
29 | };
30 |
31 | test = {
32 | create: function(){
33 | document.innerHTML = '';
34 | },
35 |
36 | destroy: function(){
37 | document.innerHTML = '';
38 | }
39 | };
40 |
41 | requirejs.define('components/testcomponent/component', ['widgy.contents'], function(contents) {
42 | var TestContent = contents.Model.extend();
43 | var EditorView = contents.EditorView.extend();
44 |
45 | var WidgetView = contents.View.extend({
46 | editorClass: EditorView
47 | });
48 |
49 | return _.extend({}, contents, {
50 | Model: TestContent,
51 | View: WidgetView
52 | });
53 | });
54 |
55 | module.exports = {
56 | test: test
57 | };
58 |
--------------------------------------------------------------------------------
/js_tests/tests/test_nodeview.js:
--------------------------------------------------------------------------------
1 | var test = require('./setup').test,
2 | requirejs = require('requirejs'),
3 | assert = require('chai').assert,
4 | sinon = require('sinon');
5 |
6 | var nodes = requirejs('nodes/nodes'),
7 | shelves = requirejs('shelves/shelves'),
8 | _ = requirejs('underscore'),
9 | Q = requirejs('lib/q');
10 |
11 |
12 | describe('ShelfView', function() {
13 | beforeEach(function() {
14 | this.node = new nodes.Node({
15 | content: {
16 | component: 'testcomponent',
17 | shelf: true
18 | }
19 | });
20 | });
21 |
22 | it('bubbles ShelfItemView events', function() {
23 | return this.node.ready(function(node) {
24 | var node_view = new nodes.NodeView({model: node}),
25 | callback = sinon.spy(),
26 | // this would happen in renderShelf
27 | shelf = node_view.makeShelf();
28 |
29 | shelf.collection.add({});
30 | var shelf_item = shelf.list.at(0);
31 |
32 | shelf.on('foo', callback);
33 | assert.isFalse(callback.called);
34 | shelf_item.trigger('foo');
35 | assert.isTrue(callback.called);
36 | });
37 | });
38 | });
39 |
--------------------------------------------------------------------------------
/manage.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | import os, sys
3 |
4 | if __name__ == "__main__":
5 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "demo.settings")
6 |
7 | from django.core.management import execute_from_command_line
8 |
9 | execute_from_command_line(sys.argv)
10 |
--------------------------------------------------------------------------------
/pytest.ini:
--------------------------------------------------------------------------------
1 | [pytest]
2 | python_files = test_*.py tests.py
3 |
--------------------------------------------------------------------------------
/requirements-test.txt:
--------------------------------------------------------------------------------
1 | mock
2 | dj-database-url
3 | tox>=1.8.0
4 | pytest
5 | pytest-cov
6 | pytest-django
7 | py
8 |
--------------------------------------------------------------------------------
/tests/.coveragerc:
--------------------------------------------------------------------------------
1 | [run]
2 | omit = runtests,test_sqlite,regressiontests*,modeltests*,*/django/contrib/*/tests*,*/django/utils/unittest*,*/django/utils/simplejson*,*/django/utils/importlib.py,*/django/test/_doctest.py,*/django/core/servers/fastcgi.py,*/django/utils/autoreload.py,*/django/utils/dictconfig.py
3 |
4 | [html]
5 | directory = coverage_html
6 |
--------------------------------------------------------------------------------
/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/__init__.py
--------------------------------------------------------------------------------
/tests/core_tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/core_tests/__init__.py
--------------------------------------------------------------------------------
/tests/core_tests/migrations/0002_auto_20150701_1654.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | from __future__ import unicode_literals
3 |
4 | from django.db import models, migrations
5 |
6 |
7 | class Migration(migrations.Migration):
8 |
9 | dependencies = [
10 | ('core_tests', '0001_initial'),
11 | ]
12 |
13 | operations = [
14 | migrations.CreateModel(
15 | name='ManyToManyWidget',
16 | fields=[
17 | ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
18 | ],
19 | ),
20 | migrations.CreateModel(
21 | name='Tag',
22 | fields=[
23 | ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
24 | ('name', models.CharField(unique=True, max_length=100)),
25 | ],
26 | ),
27 | migrations.AddField(
28 | model_name='manytomanywidget',
29 | name='tags',
30 | field=models.ManyToManyField(to='core_tests.Tag'),
31 | ),
32 | ]
33 |
--------------------------------------------------------------------------------
/tests/core_tests/migrations/0003_compressorwidget.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-02-03 17:07
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations, models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('core_tests', '0002_auto_20150701_1654'),
12 | ]
13 |
14 | operations = [
15 | migrations.CreateModel(
16 | name='CompressorWidget',
17 | fields=[
18 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
19 | ('text', models.CharField(max_length=100)),
20 | ],
21 | options={
22 | 'abstract': False,
23 | },
24 | ),
25 | ]
26 |
--------------------------------------------------------------------------------
/tests/core_tests/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/core_tests/migrations/__init__.py
--------------------------------------------------------------------------------
/tests/core_tests/static/widgy/core_tests/admin.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/core_tests/static/widgy/core_tests/admin.scss
--------------------------------------------------------------------------------
/tests/core_tests/static/widgy/core_tests/rawtextwidget.admin.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/core_tests/static/widgy/core_tests/rawtextwidget.admin.scss
--------------------------------------------------------------------------------
/tests/core_tests/static/widgy/core_tests/rawtextwidget.js:
--------------------------------------------------------------------------------
1 | // exists for tests
2 |
--------------------------------------------------------------------------------
/tests/core_tests/static/widgy/core_tests/rawtextwidget.scss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/core_tests/static/widgy/core_tests/rawtextwidget.scss
--------------------------------------------------------------------------------
/tests/core_tests/templates/widgy/core_tests/compressorwidget/render.html:
--------------------------------------------------------------------------------
1 | {% load compress %}
2 | {% compress css %}
3 |
5 | {% endcompress %}
6 | {{ self.text }}
7 |
--------------------------------------------------------------------------------
/tests/core_tests/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/core_tests/tests/__init__.py
--------------------------------------------------------------------------------
/tests/core_tests/urls.py:
--------------------------------------------------------------------------------
1 | from django.conf.urls import url, include
2 |
3 | from .widgy_config import widgy_site
4 |
5 | urlpatterns = [
6 | url('', include(widgy_site.urls)),
7 | ]
8 |
--------------------------------------------------------------------------------
/tests/core_tests/widgy_config.py:
--------------------------------------------------------------------------------
1 | from widgy.site import WidgySite
2 | from widgy.db.fields import VersionedWidgyField, WidgyField
3 |
4 |
5 | widgy_site = WidgySite()
6 |
7 | # This emulates importing models from a site file. It must come after
8 | # widgy_site is defined, because widgy doesn't exist yet without the
9 | # site.
10 | # We have to be able to import models from the site file to use when
11 | # checking compatibility.
12 | VersionedWidgyField(site='tests.core_tests.widgy_config.widgy_site')
13 | WidgyField(site='tests.core_tests.widgy_config.widgy_site')
14 |
--------------------------------------------------------------------------------
/tests/settings_contrib.py:
--------------------------------------------------------------------------------
1 | from .settings import *
2 |
3 |
4 | PACKAGE_NAME_FILEBROWSER = "filebrowser_safe"
5 | PACKAGE_NAME_GRAPPELLI = "grappelli_safe"
6 | GRAPPELLI_INSTALLED = True
7 |
8 | INSTALLED_APPS += [
9 | 'django.contrib.redirects',
10 | 'mezzanine.conf',
11 | 'mezzanine.core',
12 | 'mezzanine.generic',
13 | 'mezzanine.pages',
14 | 'mezzanine.forms',
15 | 'filebrowser_safe',
16 | 'grappelli_safe',
17 | 'filer',
18 | 'easy_thumbnails',
19 | 'widgy.contrib.widgy_mezzanine',
20 | 'widgy.contrib.form_builder',
21 | 'widgy.contrib.page_builder',
22 | 'widgy.contrib.urlconf_include',
23 | 'widgy.contrib.widgy_i18n',
24 | ]
25 |
26 | # XXX Mezzanine insists on having some version of django comments installed.
27 | try:
28 | import django_comments
29 | except ImportError:
30 | INSTALLED_APPS.append('django.contrib.comments')
31 | else:
32 | INSTALLED_APPS.append('django_comments')
33 |
34 |
35 | TEMPLATES[0]['OPTIONS']['context_processors'] += [
36 | "mezzanine.conf.context_processors.settings",
37 | "mezzanine.pages.context_processors.page",
38 | ]
39 |
40 | ALLOWED_HOSTS = ['*']
41 |
--------------------------------------------------------------------------------
/tests/urls.py:
--------------------------------------------------------------------------------
1 | import django
2 | from django.conf.urls import include, url
3 | from django.conf import settings
4 | from django.contrib import admin
5 |
6 | if django.VERSION < (1, 7):
7 | admin.autodiscover()
8 |
9 |
10 | def dummy_view(*args, **kwargs):
11 | pass
12 |
13 |
14 | urlpatterns = [
15 | url('^core_tests/', include('tests.core_tests.urls')),
16 | url("^admin/", include(admin.site.urls)),
17 | # mezzanine.pages.views.page reverses the 'home' url.
18 | url('^$', dummy_view, name='home'),
19 | ]
20 |
21 | if 'widgy.contrib.widgy_mezzanine' in settings.INSTALLED_APPS:
22 | urlpatterns += [
23 | url('^widgy-mezzanine/', include('widgy.contrib.widgy_mezzanine.urls')),
24 | url('^mezzanine/', include('mezzanine.urls')),
25 | ]
26 |
--------------------------------------------------------------------------------
/tests/utilstests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/tests/utilstests/__init__.py
--------------------------------------------------------------------------------
/tests/utilstests/models.py:
--------------------------------------------------------------------------------
1 | from django.db import models
2 |
3 |
4 | class Base(models.Model):
5 | foo = models.AutoField(primary_key=True)
6 |
7 | class Child(Base):
8 | pass
9 |
--------------------------------------------------------------------------------
/tox.ini:
--------------------------------------------------------------------------------
1 | [tox]
2 | envlist=
3 | # core python/django/database
4 | py{27,34}-dj{111}-{sqlite,mysql,postgres},
5 | # contrib
6 | py{27,34}-dj{111}-contrib-{sqlite,mysql,postgres},
7 | # javascript
8 | javascript
9 | [testenv]
10 | basepython=
11 | py27: python2.7
12 | py34: python3.4
13 | commands=
14 | contrib: pip install -e .[page_builder,widgy_mezzanine,form_builder] --log-file {envdir}/pip-extras-require-log.log
15 | py.test {posargs}
16 | setenv=
17 | DJANGO_SETTINGS_MODULE=tests.settings
18 | sqlite: DATABASE_URL=sqlite:///test_db.sqlite3
19 | postgres: DATABASE_URL=postgres://postgres:@127.0.0.1:5432/widgy
20 | mysql: DATABASE_URL=mysql://root:@127.0.0.1:3306/widgy
21 | contrib: DJANGO_SETTINGS_MODULE=tests.settings_contrib
22 | install_command = pip install {packages}
23 | deps=
24 | dj111: Django>=1.11,<1.12
25 | mysql: mysqlclient
26 | postgres: psycopg2
27 | # Intentionaly no space between -r{toxinidir} because tox falls over if there is a space.
28 | -r{toxinidir}/requirements-test.txt
29 | whitelist_externals=
30 | env
31 | make
32 |
33 | [testenv:javascript]
34 | basepython=python2.7
35 | commands=
36 | /usr/bin/env
37 | make test-js
38 | setenv=
39 | # Needed by node-gyp, a dependency of contextify from jsdom.
40 | # Development files for node addons are downloaded to $HOME/.node-gyp.
41 | # https://github.com/TooTallNate/node-gyp/issues/21
42 | HOME=/home/travis
43 | skipsdist=true
44 | deps=
45 |
--------------------------------------------------------------------------------
/travis/my.cnf:
--------------------------------------------------------------------------------
1 | [mysqld]
2 | character-set-server=utf8
3 | collation-server=utf8_general_ci
4 |
--------------------------------------------------------------------------------
/widgy/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib.admin import ModelAdmin
2 | from django.core.exceptions import PermissionDenied
3 |
4 | from widgy.forms import WidgyForm
5 |
6 |
7 | class AuthorizedAdminMixin(object):
8 | def _has_permission(self, request, obj=None):
9 | try:
10 | self.get_site().authorize_view(request, self)
11 | return True
12 | except PermissionDenied:
13 | return False
14 |
15 | def has_add_permission(self, request, obj=None):
16 | return super(AuthorizedAdminMixin, self).has_add_permission(request, obj) and self._has_permission(request, obj)
17 |
18 | def has_change_permission(self, request, obj=None):
19 | return super(AuthorizedAdminMixin, self).has_change_permission(request, obj) and self._has_permission(request, obj)
20 |
21 | def has_delete_permission(self, request, obj=None):
22 | return super(AuthorizedAdminMixin, self).has_delete_permission(request, obj) and self._has_permission(request, obj)
23 |
24 |
25 | class WidgyAdmin(ModelAdmin):
26 | """
27 | Base class for ModelAdmins whose models contain WidgyFields.
28 | """
29 | form = WidgyForm
30 |
--------------------------------------------------------------------------------
/widgy/contrib/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/form_builder/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/migrations/0002_auto_20150311_2118.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | from __future__ import unicode_literals
3 |
4 | from django.db import models, migrations
5 | import widgy.contrib.form_builder.models
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('form_builder', '0001_initial'),
12 | ]
13 |
14 | operations = [
15 | migrations.AlterField(
16 | model_name='form',
17 | name='name',
18 | field=models.CharField(default=widgy.contrib.form_builder.models.untitled_form, help_text='A name to help identify this form. Only admins see this.', max_length=255, verbose_name='Name'),
19 | preserve_default=True,
20 | ),
21 | ]
22 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/migrations/0003_auto_20150730_1401.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | from __future__ import unicode_literals
3 |
4 | from django.db import models, migrations
5 |
6 |
7 | class Migration(migrations.Migration):
8 |
9 | dependencies = [
10 | ('form_builder', '0002_auto_20150311_2118'),
11 | ]
12 |
13 | operations = [
14 | migrations.AlterField(
15 | model_name='emailsuccesshandler',
16 | name='to',
17 | field=models.EmailField(max_length=254, verbose_name='to'),
18 | ),
19 | ]
20 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/form_builder/migrations/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/static/widgy/form_builder/admin.scss:
--------------------------------------------------------------------------------
1 | @import "/widgy/css/widgy_common.scss";
2 |
3 | li.node,
4 | li.shelfItem {
5 | @include node-icon("form_builder.choicefield", "widgy/image/widget-radio.png");
6 | @include node-icon("form_builder.emailsuccesshandler", "widgy/image/widget-email.png");
7 | @include node-icon("form_builder.emailuserhandler", "widgy/image/widget-email.png");
8 | @include node-icon("form_builder.form", "widgy/image/widget-form.gif");
9 | @include node-icon("form_builder.forminput", "widgy/image/widget-form.gif");
10 | @include node-icon("form_builder.multiplechoicefield", "widgy/image/widget-checkbox.png");
11 | @include node-icon("form_builder.savedatahandler", "widgy/image/widget-save-data.png");
12 | @include node-icon("form_builder.submitbutton", "widgy/image/widget-button.png");
13 | @include node-icon("form_builder.textarea", "widgy/image/widget-textarea.png");
14 | @include node-icon("form_builder.uncaptcha", "widgy/image/widget-hidden-field.png");
15 | @include node-icon("form_builder.webtoleadmapperhandler", "widgy/image/widget-salesforce.png");
16 | @include node-icon("form_builder.fieldmappingvalue", "widgy/image/widget-icon-mapped-field.png");
17 | }
18 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/admin/form_builder/form/change_form.html:
--------------------------------------------------------------------------------
1 | {% extends "admin/change_form.html" %}
2 |
3 | {% load i18n %}
4 |
5 | {% block content %}
6 |
7 | {% block object-tools %}
8 |
11 | {% endblock %}
12 |
13 |
14 |
15 |
16 | {% for ident, header in headers.items %}
17 | {{ header }}
18 | {% endfor %}
19 |
20 |
21 |
22 | {% for row in rows %}
23 |
24 | {% for ident, value in row.items %}
25 | {{ value }}
26 | {% endfor %}
27 |
28 | {% endfor %}
29 |
30 |
31 |
32 | {% endblock %}
33 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/widgy/form_builder/form/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/mixins/tabbed/preview.html" %}
2 | {% load i18n %}
3 | {% block title %}
4 | {{ block.super }}
5 | {% if self.submission_count %}
6 | {% trans 'view submissions' %}
7 | {% endif %}
8 | {% endblock %}
9 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/widgy/form_builder/form/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 | {% if success %}
4 | {% render self.children.meta.children.message %}
5 | {% else %}
6 |
10 | {% endif %}
11 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/widgy/form_builder/form_email.html:
--------------------------------------------------------------------------------
1 | {{ self.content|safe }}
2 | {% if self.include_form_data %}
3 | Form Data
4 |
5 |
6 | {% for label, value in data %}
7 |
8 | {{ label }}
9 | {{ value|linebreaksbr }}
10 |
11 | {% endfor %}
12 |
13 | {% endif %}
14 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/widgy/form_builder/formfield/render.html:
--------------------------------------------------------------------------------
1 | {% if field.is_hidden %}{{ field }}{% else %}
2 |
9 | {% endif %}
10 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/widgy/form_builder/forminput/render.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/form_builder/formfield/render.html" %}
2 |
3 | {% block formField_classes %}{{ self.type }}-field {{ block.super }}{% endblock %}
4 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/widgy/form_builder/submitbutton/render.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/widgy/contrib/form_builder/templates/widgy/form_builder/uncaptcha/render.html:
--------------------------------------------------------------------------------
1 | {% load argonauts i18n %}{{ field.errors }}
2 |
7 |
17 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/page_builder/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | from widgy.admin import WidgyAdmin
4 | from widgy.contrib.page_builder.models import Callout
5 |
6 |
7 | class CalloutAdmin(WidgyAdmin):
8 | fields = ('name', 'root_node', )
9 |
10 | admin.site.register(Callout, CalloutAdmin)
11 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/db/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/page_builder/db/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/migrations/0002_add_site_to_callout.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | from __future__ import unicode_literals
3 |
4 | from django.db import models, migrations
5 |
6 |
7 | class Migration(migrations.Migration):
8 |
9 | dependencies = [
10 | ('sites', '0001_initial'),
11 | ('page_builder', '0001_initial'),
12 | ]
13 |
14 | operations = [
15 | migrations.AddField(
16 | model_name='callout',
17 | name='site',
18 | field=models.ForeignKey(blank=True, to='sites.Site', null=True),
19 | ),
20 | ]
21 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/migrations/0003_auto_20160325_0914.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.9.3.dev20160222232741 on 2016-03-25 15:14
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 | import django.db.models.deletion
7 | import filer.fields.image
8 |
9 |
10 | class Migration(migrations.Migration):
11 |
12 | dependencies = [
13 | ('page_builder', '0002_add_site_to_callout'),
14 | ]
15 |
16 | operations = [
17 | migrations.AlterField(
18 | model_name='image',
19 | name='image',
20 | field=filer.fields.image.FilerImageField(null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='filer.Image', verbose_name='image'),
21 | ),
22 | ]
23 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/page_builder/migrations/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/js/components/markdown/component.js:
--------------------------------------------------------------------------------
1 | require.config({
2 | shim: {
3 | 'pagedown': {
4 | deps: ['pagedown-converter', 'pagedown-sanitizer'],
5 | exports: 'Markdown'
6 | },
7 | 'pagedown-sanitizer': {
8 | deps: ['pagedown-converter']
9 | }
10 | },
11 | paths: {
12 | 'pagedown': 'components/markdown/lib/Markdown.Editor',
13 | 'pagedown-converter': 'components/markdown/lib/Markdown.Converter',
14 | 'pagedown-sanitizer': 'components/markdown/lib/Markdown.Sanitizer'
15 | }
16 | });
17 |
18 | define([ 'underscore', 'components/widget/component', 'pagedown' ], function(_, widget, Markdown) {
19 |
20 | var idPostfix = 1;
21 |
22 | var MarkdownEditorView = widget.EditorView.extend({
23 | renderHTML: function() {
24 | widget.EditorView.prototype.renderHTML.apply(this, arguments);
25 |
26 | var textarea = this.$('textarea[name=' + this.getPrefixedFieldName('content') + ']')[0],
27 | preview = this.$('.pagedown-preview')[0],
28 | buttonBar = this.$('.pagedown-buttonbar')[0],
29 | converter = Markdown.getSanitizingConverter();
30 |
31 | var editor = new Markdown.Editor(converter, textarea, preview, buttonBar, {
32 | idPostfix: idPostfix++
33 | });
34 |
35 | editor.run();
36 |
37 | return this;
38 | }
39 | });
40 |
41 | var MarkdownView = widget.View.extend({
42 | editorClass: MarkdownEditorView
43 | });
44 |
45 | return _.extend({}, widget, {
46 | View: MarkdownView
47 | });
48 | });
49 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/js/components/markdown/lib/wmd-buttons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/page_builder/static/widgy/js/components/markdown/lib/wmd-buttons.png
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/js/components/table/component.js:
--------------------------------------------------------------------------------
1 | define([ 'underscore', 'jquery', 'components/widget/component' ], function(_, $, widget) {
2 |
3 | var TableView = widget.View.extend({
4 | initialize: function() {
5 | widget.View.prototype.initialize.apply(this, arguments);
6 |
7 | _.bindAll(this,
8 | 'block',
9 | 'unblock',
10 | 'refresh'
11 | );
12 | },
13 |
14 | block: function() {
15 | if ( ! this.overlay )
16 | this.overlay = $('
').appendTo(this.el);
17 | },
18 |
19 | unblock: function() {
20 | if ( this.overlay ) {
21 | this.overlay.remove();
22 | delete this.overlay;
23 | }
24 | },
25 |
26 | refresh: function(options) {
27 | this.node.fetch(_.extend({
28 | app: this.app,
29 | success: this.unblock
30 | }, options));
31 | }
32 | });
33 |
34 | return _.extend({}, widget, {
35 | View: TableView
36 | });
37 | });
38 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/js/components/tableheader/component.js:
--------------------------------------------------------------------------------
1 | define([ 'underscore', 'lib/q', 'components/widget/component' ], function(_, Q, widget) {
2 |
3 | var TableHeaderView = widget.View.extend({
4 | initialize: function() {
5 | widget.View.prototype.initialize.apply(this, arguments);
6 |
7 | this
8 | .listenTo(this.collection, 'destroy_child', this.parent.block)
9 | .listenTo(this.collection, 'destroy', this.parent.refresh)
10 | .listenTo(this.collection, 'receive_child', this.parent.block)
11 | .listenTo(this.collection, 'sort', this.moveColumn);
12 | },
13 |
14 | moveColumn: function(collection, options) {
15 | // Avoid recursion.
16 | if ( options && options.moveColumn )
17 | return;
18 |
19 | this.parent.refresh({moveColumn: true, resort: true});
20 | },
21 |
22 | addChild: function() {
23 | var parent = this,
24 | table = this.parent,
25 | promise = this.addChildPromise.apply(this, arguments);
26 |
27 | if ( promise ) {
28 | promise.then(function(node_view) {
29 | return Q(table.refresh({sort_silently: true})).then(function() {
30 | parent.resortChildren();
31 | });
32 | }).done();
33 | }
34 |
35 | return promise;
36 | }
37 | });
38 |
39 | return _.extend({}, widget, {
40 | View: TableHeaderView
41 | });
42 | });
43 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/accordion.js:
--------------------------------------------------------------------------------
1 | /* adapted from
2 | * http://zogovic.com/post/21784525226/simple-html5-details-polyfill
3 | */
4 | jQuery(function($) {
5 | var supported = 'open' in document.createElement('details');
6 |
7 | if ( ! supported ) {
8 | $(document.body).addClass('no-details');
9 | $('summary').on('click', function(event) {
10 | var $details = $(this).closest('details');
11 | if ( $details.attr('open') || $details.hasClass('open') )
12 | $details.removeAttr('open').removeClass('open');
13 | else
14 | $details.attr('open', true).addClass('open');
15 | });
16 | return false;
17 | }
18 | });
19 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/accordion.scss:
--------------------------------------------------------------------------------
1 | .no-details details {
2 | > * {
3 | position: absolute;
4 | visibility: hidden;
5 | }
6 |
7 | > summary, &[open] > * {
8 | position: static;
9 | visibility: visible;
10 | }
11 |
12 |
13 | > summary {
14 | display: block;
15 | &:before {
16 | content: "\25ba"; // BLACK RIGHT-POINTING TRIANGLE
17 | padding-right: 5px;
18 | }
19 | }
20 |
21 | &[open] > summary:before {
22 | content:"\25bc"; // BLACK DOWN-POINTING TRIANGLE
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/admin.scss:
--------------------------------------------------------------------------------
1 | @import "/widgy/css/widgy_common.scss";
2 |
3 | li.node,
4 | li.shelfItem {
5 | @include node-icon("page_builder.accordion", "widgy/image/widget-accordion.png");
6 | @include node-icon("page_builder.buttonwidget", "widgy/image/widget-button.png");
7 | @include node-icon("page_builder.calloutwidget", "widgy/image/widget-callout.png");
8 | @include node-icon("page_builder.figure", "widgy/image/widget-figure.png");
9 | @include node-icon("page_builder.googlemap", "widgy/image/widget-google-map.png");
10 | @include node-icon("page_builder.html", "widgy/image/widget-html.png");
11 | @include node-icon("page_builder.image", "widgy/image/widget-image.gif");
12 | @include node-icon("page_builder.markdown", "widgy/image/widget-code.gif");
13 | @include node-icon("page_builder.section", "widgy/image/widget-section.png");
14 | @include node-icon("page_builder.tableheaderdata", "widgy/image/widget-tablecolumn.png");
15 | @include node-icon("page_builder.table", "widgy/image/widget-table.gif");
16 | @include node-icon("page_builder.tablerow", "widgy/image/widget-tablerow.png");
17 | @include node-icon("page_builder.tabs", "widgy/image/widget-tab.png");
18 | @include node-icon("page_builder.video", "widgy/image/widget-video.gif");
19 | @include node-icon("page_builder.unsafehtml", "widgy/image/widget-skull-and-crossbones.png");
20 | }
21 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/figure.scss:
--------------------------------------------------------------------------------
1 | figure {
2 | display: block;
3 |
4 | &.left {
5 | display: inline;
6 | float: left;
7 | }
8 | &.right {
9 | display: inline;
10 | float: right;
11 | }
12 | &.center {
13 | margin: 0 auto;
14 | float: none;
15 | }
16 | figcaption {
17 | text-align: center;
18 | .title {
19 | display: block;
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/googlemap.scss:
--------------------------------------------------------------------------------
1 | .googleMap {
2 | iframe {
3 | display: block;
4 | width: 100%;
5 | height: 400px;
6 | }
7 |
8 | a {
9 | color: #0000ff;
10 | font-size: 75%;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/html.admin.scss:
--------------------------------------------------------------------------------
1 | @import "/widgy/css/widgy_common.scss";
2 |
3 | .widgy .node.html {
4 | .htmlOutput {
5 | @include html;
6 | display: block !important;
7 | float: none !important;
8 | width: auto !important;
9 |
10 | code {
11 | font-family: monospace;
12 | }
13 |
14 | ul {
15 | list-style: disc;
16 | padding: 0px 0px 0px 30px !important;
17 |
18 | li {
19 | list-style-type: disc;
20 | }
21 |
22 | ol, ol li {
23 | list-style-type: decimal;
24 | }
25 | }
26 |
27 | ol {
28 | list-style: decimal;
29 | padding: 0px 0px 0px 30px !important;
30 |
31 | li {
32 | list-style-type: decimal;
33 | }
34 |
35 | ul, ul li {
36 | list-style-type: disc;
37 | }
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/html.scss:
--------------------------------------------------------------------------------
1 | .cke_editable, .htmlOutput {
2 | @each $i in left center right justify {
3 | .align-#{$i} {
4 | text-align: $i;
5 | }
6 | }
7 |
8 | @for $i from 1 through 5 {
9 | .text-indent-#{$i} { text-indent: 10px * $i; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/image.admin.scss:
--------------------------------------------------------------------------------
1 | .widgy .node.image {
2 | .widget_editor {
3 | .formField.image {
4 | position: relative;
5 |
6 | label {
7 | display: none;
8 | }
9 |
10 | a {
11 | img {
12 | float: left;
13 | margin-right: 10px;
14 | }
15 | }
16 |
17 | span {
18 | float: left;
19 |
20 | }
21 |
22 | a.related-lookup {
23 | position: absolute;
24 | height: 10px;
25 | left: 53px;
26 | top: 25px;
27 | }
28 |
29 | input {
30 | float: left;
31 | margin-top: 6px;
32 | width: 86%;
33 | }
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/table.admin.scss:
--------------------------------------------------------------------------------
1 | @import "/widgy/css/widgy_common.scss";
2 |
3 | $table-cell-min-width: 120px;
4 |
5 | // Layout
6 | .widgy {
7 | .table {
8 | overflow: visible;
9 |
10 | > .widget > .nodeChildren {
11 | overflow-x: auto;
12 | overflow-y: hidden;
13 | }
14 | }
15 |
16 | .node.tableheader, .node.tablerow {
17 | @extend %horizontalChildren;
18 | }
19 |
20 | .tableheaderdata, .tabledata {
21 | min-width: $table-cell-min-width;
22 |
23 | .nodeChildren {
24 | width: auto !important;
25 | }
26 | }
27 | }
28 |
29 | @import "table-theme.admin.scss";
30 |
31 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/tabs.js:
--------------------------------------------------------------------------------
1 | jQuery(function($) {
2 | $('.tabify .tabs a').bind('click', function() {
3 | var href = $(this).attr('href'),
4 | tabify = $(this).closest('.tabify'),
5 | tabContent = tabify.find(href).first();
6 | tabify.children('.tabs').find('a').removeClass('active'); // clear the active tabs
7 | tabify.children('.tabs').find('a[href="' + href + '"]').addClass('active'); // activate the clicked tab
8 | tabify.children('.tabContent').removeClass('active'); // clear the active content
9 | tabContent.addClass('active'); // show the clicked content
10 | // Change the hash without scrolling
11 | tabContent.attr('id', '');
12 | window.location.hash = href;
13 | tabContent.attr('id', href.substr(1)); // remove the sharp
14 | return false;
15 | });
16 |
17 | //|
18 | //| If there's a #tab in the URL, CLICK ON THAT TAB!!!
19 | //|
20 | if(window.location.hash) {
21 | $('.tabs a[href="' + window.location.hash + '"]').click();
22 | }
23 | });
24 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/tabs.scss:
--------------------------------------------------------------------------------
1 | .tabify {
2 | .tabContent {
3 | display: none;
4 | padding: 10px 10px;
5 |
6 | &.active {
7 | display: block;
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/static/widgy/page_builder/video.scss:
--------------------------------------------------------------------------------
1 | iframe.video {
2 | width: 560px;
3 | height: 315px;
4 | }
5 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/page_builder/ckeditor_widget.html:
--------------------------------------------------------------------------------
1 | {% load argonauts %}
2 |
3 | {{ textarea }}
4 |
5 |
21 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/page_builder/datetime_widget.html:
--------------------------------------------------------------------------------
1 | {{ widget }}
2 |
15 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/accordion/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 |
4 | {% with section_behavior='accordion' %}
5 | {% for child in self.get_children %}
6 | {% render child %}
7 | {% endfor %}
8 | {% endwith %}
9 |
10 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/bucket/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 | {% for child in self.get_children %}
4 | {% render child %}
5 | {% endfor %}
6 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/button/render.html:
--------------------------------------------------------------------------------
1 | {{ self.text }}
2 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/calloutwidget/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 | {% if self.callout %}
4 |
5 | {% render_root self.callout 'root_node' %}
6 |
7 | {% endif %}
8 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/defaultlayout/render.html:
--------------------------------------------------------------------------------
1 | {% extends widgy.owner.base_template|default:"layout_base.html" %}
2 | {% load widgy_tags %}
3 |
4 | {% block content %}
5 |
6 | {{ widgy.owner }}
7 |
8 | {% render self.get_children.0 %}
9 |
10 |
11 |
14 | {% endblock %}
15 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/figure/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/preview.html" %}
2 | {% load i18n %}
3 | {% block content %}
4 | {% trans "Title" %}: {{ self.title|default:"" }}
5 | {% trans "Caption" %}: {{ self.caption|default:"" }}
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/figure/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 | {% for child in self.get_children %}
4 | {% render child %}
5 | {% endfor %}
6 | {% if self.title or self.caption %}
7 |
8 | {% if self.title %}
9 | {{ self.title }}
10 | {% endif %}
11 | {{ self.caption }}
12 |
13 | {% endif %}
14 |
15 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/googlemap/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/preview.html" %}
2 |
3 | {% block content %}{% spaceless %}
4 | {% if self.address %}
5 |
6 | {% endif %}
7 | {% endspaceless %}{% endblock %}
8 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/googlemap/render.html:
--------------------------------------------------------------------------------
1 | {% load i18n %}
2 |
6 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/html/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/preview.html" %}
2 | {% block content %}
3 |
4 | {{ self.content|safe|truncatewords_html:50 }}
5 |
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/html/render.html:
--------------------------------------------------------------------------------
1 |
2 | {{ self.content|safe }}
3 |
4 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/image/preview.html:
--------------------------------------------------------------------------------
1 | {% extends 'widgy/preview.html' %}
2 | {% load thumbnail_libs %}
3 |
4 | {% block content %}
5 | {% if self.image %}
6 | {% easy_thumbnail self.image.file "100x100" as im %}
7 |
8 | {% else %}
9 |
10 | {% endif %}
11 | {% endblock %}
12 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/image/render.html:
--------------------------------------------------------------------------------
1 | {% load thumbnail_libs %}
2 |
3 | {% sorl_thumbnail self.image.file.name "1200x1200" upscale=False as im %}
4 |
5 | {% endthumbnail %}
6 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/markdown/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/preview.html" %}
2 | {% load widgy_tags %}
3 | {% block content %}
4 |
5 | {{ self.content|markdown|truncatewords_html:50 }}
6 |
7 | {% endblock %}
8 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/markdown/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 | {{ self.content|markdown }}
4 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/section/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 | {% if section_behavior == 'tabs' %}
4 | {{ self.title }}:
5 |
6 | {% for child in self.get_children %}
7 | {% render child %}
8 | {% endfor %}
9 | {% else %}
10 |
11 | {{ self.title }}
12 |
13 | {% for child in self.get_children %}
14 | {% render child %}
15 | {% endfor %}
16 |
17 |
18 | {% endif %}
19 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/tableelement/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 | <{{ self.tag_name }}>
3 | {% for child in self.get_children %}
4 | {% render child %}
5 | {% endfor %}
6 | {{ self.tag_name }}>
7 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/tableheader/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 |
4 | {% for child in self.get_children %}
5 | {% render child %}
6 | {% endfor %}
7 |
8 |
9 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/tabs/render.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 |
4 |
5 | {% for tab in self.get_children %}
6 | {{ tab }}
7 | {% endfor %}
8 |
9 |
10 |
11 | {% with section_behavior='tabs' %}
12 | {% for tab in self.get_children %}
13 |
14 | {% render tab %}
15 |
16 | {% endfor %}
17 | {% endwith %}
18 |
19 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/unsafehtml/render.html:
--------------------------------------------------------------------------------
1 | {{ self.content|safe }}
2 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templates/widgy/page_builder/video/render.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/widgy/contrib/page_builder/templatetags/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/page_builder/templatetags/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/review_queue/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/management/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/review_queue/management/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/management/commands/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/review_queue/management/commands/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/management/commands/populate_review_queue.py:
--------------------------------------------------------------------------------
1 | from django.core.management.base import BaseCommand
2 |
3 |
4 | class Command(BaseCommand):
5 | help = 'Creates the required ReviewedVersionCommit objects when migrating to a ReviewedWidgySite'
6 |
7 | def handle(self, *args, **options):
8 | # XXX: why doesn't this work at the top-level?
9 | from widgy.models.versioning import VersionCommit
10 | from widgy.contrib.review_queue.models import ReviewedVersionCommit
11 |
12 | for commit in VersionCommit.objects.filter(reviewedversioncommit=None):
13 | new_commit = ReviewedVersionCommit(
14 | versioncommit_ptr=commit,
15 | approved_at=commit.created_at,
16 | approved_by_id=commit.author_id,
17 | )
18 | new_commit.__dict__.update(commit.__dict__)
19 | new_commit.save()
20 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/migrations/0001_initial.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | from __future__ import unicode_literals
3 |
4 | from django.db import models, migrations
5 | import django.db.models.deletion
6 | from django.conf import settings
7 |
8 |
9 | class Migration(migrations.Migration):
10 |
11 | dependencies = [
12 | migrations.swappable_dependency(settings.AUTH_USER_MODEL),
13 | ('widgy', '0001_initial'),
14 | ]
15 |
16 | operations = [
17 | migrations.CreateModel(
18 | name='ReviewedVersionCommit',
19 | fields=[
20 | ('versioncommit_ptr', models.OneToOneField(parent_link=True, auto_created=True, primary_key=True, serialize=False, to='widgy.VersionCommit')),
21 | ('approved_at', models.DateTimeField(default=None, null=True)),
22 | ('approved_by', models.ForeignKey(related_name='+', on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, null=True)),
23 | ],
24 | options={
25 | 'verbose_name': 'unapproved commit',
26 | 'verbose_name_plural': 'unapproved commits',
27 | },
28 | bases=('widgy.versioncommit',),
29 | ),
30 | migrations.CreateModel(
31 | name='ReviewedVersionTracker',
32 | fields=[
33 | ],
34 | options={
35 | 'proxy': True,
36 | },
37 | bases=('widgy.versiontracker',),
38 | ),
39 | ]
40 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/review_queue/migrations/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templates/admin/review_queue/reviewedversioncommit/change_list.html:
--------------------------------------------------------------------------------
1 | {% extends "admin/change_list.html" %}
2 | {% load review_queue_admin_tags %}
3 |
4 | {% block result_list %}
5 | {% if action_form and actions_on_top and cl.full_result_count %}{% admin_actions %}{% endif %}
6 | {% result_list cl %}
7 | {% if action_form and actions_on_bottom and cl.full_result_count %}{% admin_actions %}{% endif %}
8 | {% endblock %}
9 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templates/review_queue/_commit_form.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/_commit_form.html" %}
2 | {% load i18n %}
3 | {% load widgy_tags %}
4 |
5 | {% block submit_row %}
6 | {% has_change_permission site site.get_version_tracker_model.commit_model as can_approve %}
7 | {% if can_approve %}
8 |
9 | {% endif %}
10 | {{ block.super }}
11 | {% endblock %}
12 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templates/review_queue/commit.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/commit.html" %}
2 |
3 | {% block commit_form %}
4 | {% include "review_queue/_commit_form.html" with commit=object.working_copy action_url=commit_url %}
5 | {% endblock %}
6 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templates/review_queue/commit_preview.html:
--------------------------------------------------------------------------------
1 | {% load compress staticfiles widgy_tags %}
2 | {% for owner in owners %}
3 | {% get_action_links owner node as links %}
4 | {% for link in links %}
5 | {% if link.type == 'preview' %}
6 | {{ link.text }}
7 |
8 | {% endif %}
9 | {% endfor %}
10 | {% endfor %}
11 | {% compress css %}
12 |
13 | {% endcompress %}
14 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templates/review_queue/revert.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/revert.html" %}
2 |
3 | {% block popup-content %}
4 | {% include "review_queue/_commit_form.html" with commit=object.working_copy action_url=revert_url %}
5 | {% endblock %}
6 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templates/review_queue/undoform.html:
--------------------------------------------------------------------------------
1 | {% load i18n %}
2 | {% load widgy_tags %}
3 |
10 |
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templatetags/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/review_queue/templatetags/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/review_queue/templatetags/review_queue_admin_tags.py:
--------------------------------------------------------------------------------
1 | from django.template import Library
2 | from django.contrib.admin.templatetags.admin_list import (
3 | result_list as result_list_orig,
4 | admin_actions as admin_actions_orig,
5 | )
6 |
7 | register = Library()
8 |
9 | @register.inclusion_tag('admin/review_queue/reviewedversioncommit/change_list_results.html')
10 | def result_list(cl):
11 | ctx = result_list_orig(cl)
12 | # our template needs each result (a list of strings), along with the
13 | # actual commit object.
14 | ctx['cl_results'] = zip(ctx['cl'].result_list, ctx['results'])
15 | return ctx
16 |
17 | # This avoid importing admin_list tag which could conflict with result_list
18 | # This does exactly the same as django.contrib.admin.templatetags.admin_list.admin_actions
19 | @register.inclusion_tag('admin/actions.html', takes_context=True)
20 | def admin_actions(context):
21 | return admin_actions_orig(context)
22 |
--------------------------------------------------------------------------------
/widgy/contrib/urlconf_include/__init__.py:
--------------------------------------------------------------------------------
1 | from . import signalhandlers
2 |
--------------------------------------------------------------------------------
/widgy/contrib/urlconf_include/admin.py:
--------------------------------------------------------------------------------
1 | from django.contrib import admin
2 |
3 | from mezzanine.pages.admin import PageAdmin
4 |
5 | from .models import UrlconfIncludePage
6 |
7 | admin.site.register(UrlconfIncludePage, PageAdmin)
8 |
--------------------------------------------------------------------------------
/widgy/contrib/urlconf_include/migrations/0001_initial.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | from __future__ import unicode_literals
3 |
4 | from django.db import models, migrations
5 | from django.conf import settings
6 |
7 |
8 | class Migration(migrations.Migration):
9 |
10 | dependencies = [
11 | ('pages', '__first__'),
12 | ]
13 |
14 | operations = [
15 | migrations.CreateModel(
16 | name='UrlconfIncludePage',
17 | fields=[
18 | ('page_ptr', models.OneToOneField(parent_link=True, auto_created=True, primary_key=True, serialize=False, to='pages.Page')),
19 | ('urlconf_name', models.CharField(max_length=255, verbose_name='plugin name', choices=settings.URLCONF_INCLUDE_CHOICES)),
20 | ],
21 | options={
22 | 'ordering': ('_order',),
23 | 'verbose_name': 'plugin',
24 | 'verbose_name_plural': 'plugins',
25 | },
26 | bases=('pages.page',),
27 | ),
28 | ]
29 |
--------------------------------------------------------------------------------
/widgy/contrib/urlconf_include/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/urlconf_include/migrations/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/urlconf_include/signalhandlers.py:
--------------------------------------------------------------------------------
1 | from importlib import import_module
2 |
3 | from django.core.urlresolvers import set_urlconf
4 | from django.dispatch import receiver
5 | from django.conf import settings
6 |
7 | from widgy.signals import widgy_pre_index
8 |
9 |
10 |
11 | @receiver(widgy_pre_index)
12 | def patch_url_conf(sender, **kwargs):
13 | from .middleware import PatchUrlconfMiddleware
14 | root_urlconf = import_module(settings.ROOT_URLCONF)
15 | urlconf = PatchUrlconfMiddleware.get_urlconf(root_urlconf)
16 | set_urlconf(urlconf)
17 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_i18n/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/widgy_i18n/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/widgy_i18n/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/widgy_i18n/migrations/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/widgy_i18n/tests.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/widgy_i18n/tests.py
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/__init__.py:
--------------------------------------------------------------------------------
1 | def get_widgypage_model():
2 | from django.conf import settings
3 | from django.apps import apps
4 | from django.core.exceptions import ImproperlyConfigured
5 |
6 | try:
7 | app_label, model_name = getattr(settings, 'WIDGY_MEZZANINE_PAGE_MODEL', 'widgy_mezzanine.WidgyPage').split('.')
8 | except ValueError:
9 | raise ImproperlyConfigured("WIDGY_MEZZANINE_PAGE_MODEL must be of the form 'app_label.model_name'")
10 | model = apps.get_model(app_label, model_name)
11 | if model is None:
12 | raise ImproperlyConfigured("WIDGY_MEZZANINE_PAGE_MODEL refers to model '%s' that has not been installed" % settings.WIDGY_MEZZANINE_PAGE_MODEL)
13 | return model
14 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/forms.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/widgy_mezzanine/forms.py
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/migrations/0002_create_widgycalloutwidget.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | from __future__ import unicode_literals
3 |
4 | from django.db import models, migrations
5 | import django.db.models.deletion
6 | import widgy.db.fields
7 |
8 |
9 | class Migration(migrations.Migration):
10 |
11 | dependencies = [
12 | ('page_builder', '0002_add_site_to_callout'),
13 | ('widgy_mezzanine', '0001_initial'),
14 | ]
15 |
16 | operations = [
17 | migrations.CreateModel(
18 | name='MezzanineCalloutWidget',
19 | fields=[
20 | ],
21 | options={
22 | 'verbose_name': 'callout widget',
23 | 'verbose_name_plural': 'callout widgets',
24 | 'proxy': True,
25 | },
26 | bases=('page_builder.calloutwidget',),
27 | ),
28 | ]
29 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/migrations/0003_auto_20170206_1124.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # Generated by Django 1.10.5 on 2017-02-06 18:24
3 | from __future__ import unicode_literals
4 |
5 | from django.db import migrations
6 | import django.db.models.manager
7 |
8 |
9 | class Migration(migrations.Migration):
10 |
11 | dependencies = [
12 | ('widgy_mezzanine', '0002_create_widgycalloutwidget'),
13 | ]
14 |
15 | operations = [
16 | migrations.AlterModelManagers(
17 | name='widgypage',
18 | managers=[
19 | ('select_related_manager', django.db.models.manager.Manager()),
20 | ],
21 | ),
22 | ]
23 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/widgy_mezzanine/migrations/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/signals.py:
--------------------------------------------------------------------------------
1 | import warnings
2 |
3 | from widgy.signals import widgy_pre_index
4 |
5 |
6 | warnings.warn(
7 | "widgy.contrib.widgy_mezzanine.signals.widgypage_pre_index is deprecated. "
8 | "Use widgy.signals.widgy_pre_index instead.",
9 | DeprecationWarning,
10 | )
11 |
12 | widgypage_pre_index = widgy_pre_index
13 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/site.py:
--------------------------------------------------------------------------------
1 | from mezzanine.utils.sites import current_site_id, has_site_permission
2 | from widgy.models import Content
3 |
4 |
5 | class MultiSitePermissionMixin(object):
6 | def _can_edit_content(self, request, obj):
7 | if isinstance(obj, Content):
8 | owners = obj.get_root().node.versiontracker_set.get().owners
9 | any_owner_in_current_site = any(current_site_id() == o.site_id for o in owners)
10 | return has_site_permission(request.user) and any_owner_in_current_site
11 | else:
12 | return True
13 |
14 | def has_add_permission(self, request, parent, created_obj_cls):
15 | if not self._can_edit_content(request, parent):
16 | return False
17 | return super(MultiSitePermissionMixin, self).has_add_permission(
18 | request, parent, created_obj_cls)
19 |
20 | def has_change_permission(self, request, obj_or_class):
21 | if not self._can_edit_content(request, obj_or_class):
22 | return False
23 | return super(MultiSitePermissionMixin, self).has_change_permission(request, obj_or_class)
24 |
25 | def has_delete_permission(self, request, obj_or_class):
26 | if not all(self._can_edit_content(request, o) for o in obj_or_class.depth_first_order()):
27 | return False
28 | return super(MultiSitePermissionMixin, self).has_delete_permission(request, obj_or_class)
29 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/static/widgy/widgy_mezzanine/admin.scss:
--------------------------------------------------------------------------------
1 | @import "/widgy/css/widgy_common.scss";
2 |
3 | li.node,
4 | li.shelfItem {
5 | @include node-icon("widgy_mezzanine.mezzaninecalloutwidget", "widgy/image/widget-callout.png");
6 | }
7 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/pages/menus/dropdown.html:
--------------------------------------------------------------------------------
1 | {% load pages_tags %}
2 |
3 | {% if page_branch_in_menu %}
4 |
5 | {% for page in page_branch %}
6 | {% if page.in_menu %}
7 |
8 | {{ page.title }}
10 | {% if page.branch_level == 0 and page.has_children_in_menu %}
11 | {% page_menu page %}
12 | {% endif %}
13 |
14 | {% endif %}
15 | {% endfor %}
16 |
17 | {% endif %}
18 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/pages/menus/leftnav.html:
--------------------------------------------------------------------------------
1 | {% load i18n pages_tags %}
2 |
3 | {% if page_branch_in_menu %}
4 | {% for page in page_branch %}
5 | {% if page.branch_level == 0 %}
6 | {% if page.is_current_or_ascendant %}
7 |
8 |
9 | {% if not page.is_current %}
10 | {{ page.title }}
11 | {% else %}
12 | {{ page.title }}
13 | {% endif %}
14 |
15 | {% if page.has_children_in_menu and page.is_current_or_ascendant %}
16 |
17 | {% page_menu page %}
18 |
19 | {% endif %}
20 |
21 | {% endif %}
22 | {% else %}
23 | {% if page.in_menu %}
24 |
25 | {{ page.title }}
26 | {% if page.has_children_in_menu and page.is_current_or_ascendant %}
27 |
28 | {% page_menu page %}
29 |
30 | {% endif %}
31 |
32 | {% endif %}
33 | {% endif %}
34 | {% endfor %}
35 | {% endif %}
36 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/pages/widgypage.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}{% render_root page.get_content_model 'root_node' %}
2 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/pages/widgypage_base.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
3 | {% comment %}
4 | Consider this deprecated.
5 |
6 | This is here for the sake of backwards compatibility with old-style
7 | defaultlayout templating. See https://github.com/fusionbox/django-widgy/pull/41
8 | {% endcomment %}
9 |
10 | {% load widgy_tags %}
11 | {% load pages_tags %}
12 | {% load compress %}
13 | {% load staticfiles %}
14 |
15 | {% block title %}{{ page.meta_title }} {{ block.super }}{% endblock %}
16 | {% block css %}
17 | {{ block.super }}
18 | {% compress css %}
19 | {% for scss_file in 'WIDGY_MEZZANINE_SITE'|scss_files %}
20 |
21 | {% endfor %}
22 | {% endcompress %}
23 | {% endblock %}
24 |
25 | {% block js %}
26 | {{ block.super }}
27 | {% compress js %}
28 | {% for js_file in 'WIDGY_MEZZANINE_SITE'|js_files %}
29 |
30 | {% endfor %}
31 | {% endcompress %}
32 | {% endblock %}
33 |
34 | {% block seo_description %}{{ page.description }}{% endblock %}
35 | {% block seo_keywords %}{{ page.keywords_string }}{% endblock %}
36 |
37 | {% block breadcrumb %}
38 |
39 | {% page_menu "pages/menus/breadcrumb.html" %}
40 |
41 | {% endblock %}
42 |
43 | {% block leftnav %}
44 |
45 | {% page_menu "pages/menus/tree.html" %}
46 |
47 | {% endblock %}
48 |
49 | {% block content %}
50 | {% render_root page.get_content_model 'root_node' %}
51 | {% endblock %}
52 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/widgy/mezzanine_base.html:
--------------------------------------------------------------------------------
1 | {% extends "layout_base.html" %}
2 | {% load pages_tags %}
3 |
4 | {% block metadata %}
5 | {{ page.meta_title }}
6 |
7 |
8 | {% endblock %}
9 |
10 | {% block leftnav %}
11 | {% page_menu 'pages/menus/leftnav.html' %}
12 | {% endblock %}
13 |
14 | {% block breadcrumb %}
15 | {{ block.super }} {% page_menu 'pages/menus/breadcrumb.html' %}
16 | {% endblock %}
17 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/widgy/widgy_mezzanine/clone_success.html:
--------------------------------------------------------------------------------
1 |
2 | {% load argonauts %}
3 |
4 |
8 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/widgy/widgy_mezzanine/unpublish.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/popup_base.html" %}
2 | {% load i18n %}
3 |
4 | {% block content %}
5 | {% blocktrans with page_title=object.title %}Unpublishing {{ page_title }}{% endblocktrans %}
6 |
7 | {% blocktrans %}
8 | Unpublishing will cause this page to disappear from the live site. Users who
9 | go to this page will get a 404 (File Not Found) error page. Are you sure you
10 | want to unpublish this page?
11 | {% endblocktrans %}
12 |
13 |
20 | {% endblock %}
21 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/widgy/widgy_mezzanine/versioned_widgy_field.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/versioned_widgy_field_base.html" %}
2 | {% load i18n %}
3 | {% load staticfiles %}
4 |
5 | {% block widgy_tools %}
6 | {% trans "Schedule changes" %}
7 | {% trans "Reset" %}
8 | {% endblock %}
9 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/templates/widgy/widgy_mezzanine/widgypage_clone_form.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/popup_base.html" %}
2 |
3 | {% block popup-content %}
4 | Cloning {{ object }}
5 |
6 |
15 | {% endblock %}
16 |
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/contrib/widgy_mezzanine/tests/__init__.py
--------------------------------------------------------------------------------
/widgy/contrib/widgy_mezzanine/urls.py:
--------------------------------------------------------------------------------
1 | from django.conf.urls import url
2 |
3 | import widgy.contrib.widgy_mezzanine.views
4 |
5 | urlpatterns = [
6 | url('^preview/(?P[^/]+)/$',
7 | widgy.contrib.widgy_mezzanine.views.preview,
8 | name='widgy.contrib.widgy_mezzanine.views.preview'), # undelete
9 | url('^preview-page/(?P[^/]+)/(?P[^/]+)/$',
10 | widgy.contrib.widgy_mezzanine.views.preview,
11 | name='widgy.contrib.widgy_mezzanine.views.preview'),
12 | url('^form-page/(?P[^/]*)/(?P[^/]+)/$',
13 | widgy.contrib.widgy_mezzanine.views.handle_form,
14 | name='widgy.contrib.widgy_mezzanine.views.handle_form'),
15 | # deprecated urls for backwards compatibility with slug reversing
16 | url('^preview/(?P[^/]+)/(?P.+)/$',
17 | widgy.contrib.widgy_mezzanine.views.preview,
18 | name='widgy.contrib.widgy_mezzanine.views.preview'),
19 | url('^form/(?P[^/]*)/(?P.+)/$',
20 | widgy.contrib.widgy_mezzanine.views.handle_form,
21 | name='widgy.contrib.widgy_mezzanine.views.handle_form'),
22 | ]
23 |
--------------------------------------------------------------------------------
/widgy/db/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/db/__init__.py
--------------------------------------------------------------------------------
/widgy/debugtoolbar/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/debugtoolbar/__init__.py
--------------------------------------------------------------------------------
/widgy/exceptions.py:
--------------------------------------------------------------------------------
1 | from django.core.exceptions import ValidationError
2 |
3 |
4 | class InvalidOperation(ValidationError):
5 | pass
6 |
7 |
8 | class InvalidTreeMovement(InvalidOperation):
9 | """
10 | Inherits from ``django.core.exceptions.ValidationError``.
11 |
12 | Base exception for all erroneous node restructures.
13 | """
14 | def __init__(self, message):
15 | # If we don't do this, there won't be a message_dict.
16 | super(InvalidTreeMovement, self).__init__({'message': [message]})
17 |
18 |
19 | class RootDisplacementError(InvalidTreeMovement):
20 | """
21 | Raise when trying to add siblings to a root node.
22 | """
23 |
24 |
25 | class ParentChildRejection(InvalidTreeMovement):
26 | """
27 | General exception for when a child rejects a parent or vice versa.
28 | """
29 |
30 |
31 | class ParentWasRejected(ParentChildRejection):
32 | """
33 | Raised by child to reject the requested parent.
34 | """
35 |
36 |
37 | class ChildWasRejected(ParentChildRejection):
38 | """
39 | Raised by parents to reject children that don't belong.
40 | """
41 |
42 |
43 | class MutualRejection(ParentWasRejected, ChildWasRejected):
44 | """
45 | For instances where both child and parent reject the movement request.
46 | """
47 |
--------------------------------------------------------------------------------
/widgy/generic/__init__.py:
--------------------------------------------------------------------------------
1 | from django.contrib.contenttypes.fields import GenericForeignKey, GenericRelation
2 |
3 |
4 | class ProxyGenericForeignKey(GenericForeignKey):
5 | def __init__(self, *args, **kwargs):
6 | kwargs['for_concrete_model'] = False
7 | super(ProxyGenericForeignKey, self).__init__(*args, **kwargs)
8 |
9 |
10 | class ProxyGenericRelation(GenericRelation):
11 | def __init__(self, *args, **kwargs):
12 | kwargs['for_concrete_model'] = False
13 | super(ProxyGenericRelation, self).__init__(*args, **kwargs)
14 |
15 |
16 | class WidgyGenericForeignKey(ProxyGenericForeignKey):
17 | def __get__(self, instance, instance_type=None):
18 | try:
19 | return super(WidgyGenericForeignKey, self).__get__(instance, instance_type)
20 | except AttributeError:
21 | # The model for this content type couldn't be loaded. Use an
22 | # UnknownWidget instead.
23 | from widgy.models import UnknownWidget
24 | ret = UnknownWidget(getattr(instance, self.ct_field), getattr(instance, self.fk_field), instance)
25 | ret.node = instance
26 | ret.warn()
27 | return ret
28 |
--------------------------------------------------------------------------------
/widgy/generic/models.py:
--------------------------------------------------------------------------------
1 | import warnings
2 |
3 | # This module used to contain a backport of for_concrete_model, which is now in
4 | # all supported versions of django. This import remains for backwards
5 | # compatibility.
6 | from django.contrib.contenttypes.models import ContentType, ContentTypeManager # NOQA
7 |
8 | warnings.warn(
9 | "widgy.generic.models is deprecated. Use django.contrib.contentypes.models instead.",
10 | DeprecationWarning,
11 | stacklevel=2,
12 | )
13 |
--------------------------------------------------------------------------------
/widgy/locale/de/LC_MESSAGES/django.mo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/locale/de/LC_MESSAGES/django.mo
--------------------------------------------------------------------------------
/widgy/management/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/management/__init__.py
--------------------------------------------------------------------------------
/widgy/management/commands/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/management/commands/__init__.py
--------------------------------------------------------------------------------
/widgy/middleware.py:
--------------------------------------------------------------------------------
1 | from widgy.models import Node
2 |
3 | class PreventProblemsMiddleware(object):
4 | """
5 | Checks if there are any 'problems' (inconsitensies in the widgy tree)
6 | after every request. If used with TransactionMiddleware, it will
7 | prevent problems from being committed by raising an exception. Useful
8 | to turn on during development so you know right away if your code
9 | corrupts the tree. It does an absurd number of queries though,
10 | so probably not something to leave on all the time.
11 | """
12 |
13 | def get_problems(self):
14 | return Node.find_problems() + Node.find_widgy_problems()
15 |
16 | def process_response(self, request, response):
17 | problems = self.get_problems()
18 | assert not any(problems), "There are some problems: %s" % (problems,)
19 | return response
20 |
--------------------------------------------------------------------------------
/widgy/migrations/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/migrations/__init__.py
--------------------------------------------------------------------------------
/widgy/models/__init__.py:
--------------------------------------------------------------------------------
1 | from widgy.models.base import Node, Content, UnknownWidget
2 | from widgy.models.versioning import VersionTracker, VersionCommit
3 |
--------------------------------------------------------------------------------
/widgy/signals.py:
--------------------------------------------------------------------------------
1 | from django.dispatch import Signal
2 |
3 |
4 | pre_delete_widget = Signal(providing_args=['instance', 'raw'])
5 | widgy_pre_index = Signal()
6 |
--------------------------------------------------------------------------------
/widgy/static/admin/js/collapse.js:
--------------------------------------------------------------------------------
1 | // noop
2 | // If we are using grappelli, the original code for this code just fails. So
3 | // let's just not do anything.
4 |
--------------------------------------------------------------------------------
/widgy/static/daisydiff/NOTICE.txt:
--------------------------------------------------------------------------------
1 | NOTICE: Only our own original work is licensed under the terms of the Apache
2 | License Version 2.0. The licenses of some libraries might impose different
3 | redistribution or general licensing terms than those stated in the Apache
4 | License. Users and redistributors are hereby requested to verify these
5 | conditions and agree upon them.
6 |
7 | This product includes software developed by
8 | The Apache Software Foundation (http://www.apache.org/).
9 |
--------------------------------------------------------------------------------
/widgy/static/widgy/css/layout_select.scss:
--------------------------------------------------------------------------------
1 | @import "widgy_common.scss";
2 |
3 | .form-row .layoutSelect {
4 | display: inline;
5 | float: left;
6 | width: auto;
7 |
8 | ul {
9 | display: inline;
10 | float: left;
11 | list-style: none;
12 | margin: 0px;
13 | padding: 0px;
14 | width: auto;
15 |
16 | li {
17 | @include html;
18 | display: inline;
19 | float: left;
20 | height: auto;
21 | margin: 0px 10px 0px 0px;
22 | padding: 10px;
23 | text-align: center;
24 | width: 110px;
25 |
26 | label {
27 | display: block;
28 | float: none;
29 | margin: 0px;
30 | padding: 0px;
31 | width: auto;
32 | }
33 |
34 | div.previewImage {
35 | @include rounded(4px);
36 | background: url('/static/widgy/image/layout-sprite.png') no-repeat 0px -400px;
37 | border: 1px solid #cccccc;
38 | height: 100px;
39 |
40 | &.defaultlayout {
41 | background-position: 0px 0px;
42 | }
43 | }
44 |
45 | input {
46 | margin: 5px auto;
47 | }
48 |
49 | span.label {
50 | display: block;
51 | }
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/widgy/static/widgy/css/unapproved_commits.scss:
--------------------------------------------------------------------------------
1 |
2 | /* Commit Previews
3 | --------------------------------------------------*/
4 |
5 | .form-row.preview {
6 | iframe {
7 | height: 600px;
8 | width: 980px;
9 | }
10 | }
11 |
12 | /* Version Commit Page Groups
13 | --------------------------------------------------*/
14 |
15 | #changelist #result_list {
16 | tbody {
17 | > tr:first-child {
18 | > td, th {
19 | border-top: 2px solid #444444;
20 | }
21 | }
22 | }
23 | }
--------------------------------------------------------------------------------
/widgy/static/widgy/css/widgy.scss:
--------------------------------------------------------------------------------
1 | @import "widgy_layout.scss";
2 | @import "widgy_theme_default.scss";
3 |
--------------------------------------------------------------------------------
/widgy/static/widgy/css/widgy_theme_lofi.scss:
--------------------------------------------------------------------------------
1 | .widgy {
2 | .node {
3 | border: 1px solid black;
4 | }
5 |
6 | .node_drop_target {
7 | background-color: blue;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/blank.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/blank.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_close.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_loading.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_loading.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_nav_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_nav_left.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_nav_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_nav_right.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_e.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_e.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_n.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_n.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_ne.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_ne.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_nw.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_nw.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_s.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_se.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_se.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_sw.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_sw.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_shadow_w.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_shadow_w.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_title_left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_title_left.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_title_main.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_title_main.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_title_over.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_title_over.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancy_title_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancy_title_right.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancybox-x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancybox-x.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancybox-y.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancybox-y.png
--------------------------------------------------------------------------------
/widgy/static/widgy/fancybox/fancybox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/fancybox/fancybox.png
--------------------------------------------------------------------------------
/widgy/static/widgy/font/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/font/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/widgy/static/widgy/font/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/font/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/widgy/static/widgy/font/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/font/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/widgy/static/widgy/font/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/font/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/widgy/static/widgy/image/layout-sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/layout-sprite.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/loading.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/page-layout-2-column.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/page-layout-2-column.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-accordion.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-accordion.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-brand-list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-brand-list.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-bucket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-bucket.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-button.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-calendar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-calendar.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-callout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-callout.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-chart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-chart.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-checkbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-checkbox.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-code.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-code.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-email.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-email.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-figure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-figure.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-form.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-form.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-google-map.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-google-map.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-hidden-field.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-hidden-field.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-html.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-html.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-icon-mapped-field.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-icon-mapped-field.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-image-bucket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-image-bucket.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-image.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-image.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-list.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-miniboxes.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-miniboxes.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-news.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-news.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-ok-button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-ok-button.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-product-bucket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-product-bucket.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-product-list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-product-list.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-radio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-radio.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-salesforce.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-salesforce.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-save-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-save-data.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-section.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-section.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-skull-and-crossbones.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-skull-and-crossbones.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-slide.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-slide.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-submit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-submit.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-tab.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-tab.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-table.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-table.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-tablecolumn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-tablecolumn.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-tablerow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-tablerow.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-textarea.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-textarea.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-uncaptcha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-uncaptcha.png
--------------------------------------------------------------------------------
/widgy/static/widgy/image/widget-video.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/image/widget-video.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/js/app.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/components/widget/component.js:
--------------------------------------------------------------------------------
1 | define(['widgy.contents'], function(contents) {
2 | return contents;
3 | });
4 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/geometry.js:
--------------------------------------------------------------------------------
1 | define([], function() {
2 | return {
3 | /**
4 | * Returns the square of the distance between the point (px, py) and any
5 | * point in the rectangle bb (zero if the point is inside)
6 | */
7 | calculateDistance: function (bb, px, py) {
8 | var dx, dy;
9 | dy = Math.max(Math.max(bb.top - py, py - bb.bottom), 0);
10 | dx = Math.max(Math.max(bb.left - px, px - bb.right), 0);
11 | return dx * dx + dy * dy;
12 | },
13 |
14 | /**
15 | * Do the rectangles described by bb and obb overlap? The rectangles should
16 | * be in the format returned by Element.getBoundingClientRect.
17 | */
18 | rectanglesOverlap: function(bb, obb) {
19 | return (
20 | bb.left <= obb.right && bb.right >= obb.left &&
21 | bb.top <= obb.bottom && bb.bottom >= obb.top
22 | );
23 | }
24 | };
25 | });
26 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/jquery-private.js:
--------------------------------------------------------------------------------
1 | define(['jquery'], function (jq) {
2 | // http://requirejs.org/docs/jquery.html#noconflictmap
3 | return jq.noConflict( true );
4 | });
5 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/README.md:
--------------------------------------------------------------------------------
1 | CKEditor 4
2 | ==========
3 |
4 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
5 | http://ckeditor.com - See LICENSE.md for license information.
6 |
7 | CKEditor is a text editor to be used inside web pages. It's not a replacement
8 | for desktop text editors like Word or OpenOffice, but a component to be used as
9 | part of web applications and websites.
10 |
11 | ## Documentation
12 |
13 | The full editor documentation is available online at the following address:
14 | http://docs.ckeditor.com
15 |
16 | ## Installation
17 |
18 | Installing CKEditor is an easy task. Just follow these simple steps:
19 |
20 | 1. **Download** the latest version from the CKEditor website:
21 | http://ckeditor.com. You should have already completed this step, but be
22 | sure you have the very latest version.
23 | 2. **Extract** (decompress) the downloaded file into the root of your website.
24 |
25 | **Note:** CKEditor is by default installed in the `ckeditor` folder. You can
26 | place the files in whichever you want though.
27 |
28 | ## Checking Your Installation
29 |
30 | The editor comes with a few sample pages that can be used to verify that
31 | installation proceeded properly. Take a look at the `samples` directory.
32 |
33 | To test your installation, just call the following page at your website:
34 |
35 | http:////samples/index.html
36 |
37 | For example:
38 |
39 | http://www.example.com/ckeditor/samples/index.html
40 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/config.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | * For licensing, see LICENSE.html or http://ckeditor.com/license
4 | */
5 |
6 | CKEDITOR.editorConfig = function( config ) {
7 | // Define changes to default configuration here.
8 | // For the complete reference:
9 | // http://docs.ckeditor.com/#!/api/CKEDITOR.config
10 |
11 | // The toolbar groups arrangement, optimized for two toolbar rows.
12 | config.toolbarGroups = [
13 | { name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
14 | { name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] },
15 | { name: 'links' },
16 | { name: 'insert' },
17 | { name: 'forms' },
18 | { name: 'tools' },
19 | { name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
20 | { name: 'others' },
21 | '/',
22 | { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
23 | { name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi' ] },
24 | { name: 'styles' },
25 | { name: 'colors' },
26 | { name: 'about' }
27 | ];
28 |
29 | // Remove some buttons, provided by the standard plugins, which we don't
30 | // need to have in the Standard(s) toolbar.
31 | config.removeButtons = 'Underline,Subscript,Superscript';
32 |
33 | // Se the most common block elements.
34 | config.format_tags = 'p;h1;h2;h3;pre';
35 |
36 | // Make dialogs simpler.
37 | config.removeDialogTabs = 'image:advanced;link:advanced';
38 | };
39 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
2 | For licensing, see LICENSE.md or http://ckeditor.com/license
3 |
4 | cs.js Found: 30 Missing: 0
5 | cy.js Found: 30 Missing: 0
6 | da.js Found: 12 Missing: 18
7 | de.js Found: 30 Missing: 0
8 | el.js Found: 25 Missing: 5
9 | eo.js Found: 30 Missing: 0
10 | fa.js Found: 30 Missing: 0
11 | fi.js Found: 30 Missing: 0
12 | fr.js Found: 30 Missing: 0
13 | gu.js Found: 12 Missing: 18
14 | he.js Found: 30 Missing: 0
15 | it.js Found: 30 Missing: 0
16 | mk.js Found: 5 Missing: 25
17 | nb.js Found: 30 Missing: 0
18 | nl.js Found: 30 Missing: 0
19 | no.js Found: 30 Missing: 0
20 | pt-br.js Found: 30 Missing: 0
21 | ro.js Found: 6 Missing: 24
22 | tr.js Found: 30 Missing: 0
23 | ug.js Found: 27 Missing: 3
24 | vi.js Found: 6 Missing: 24
25 | zh-cn.js Found: 30 Missing: 0
26 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/about/dialogs/logo_ckeditor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/about/dialogs/logo_ckeditor.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/dialog/dialogDefinition.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/fakeobjects/images/spacer.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/fakeobjects/images/spacer.gif
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/icons.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/icons_hidpi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/icons_hidpi.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/image/images/noimage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/image/images/noimage.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifyblock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifyblock.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifycenter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifycenter.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifyleft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifyleft.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifyright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/hidpi/justifyright.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifyblock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifyblock.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifycenter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifycenter.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifyleft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifyleft.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifyright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/justify/icons/justifyright.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/af.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'af', {
6 | block: 'Uitvul',
7 | center: 'Sentreer',
8 | left: 'Links oplyn',
9 | right: 'Regs oplyn'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ar.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ar', {
6 | block: 'ضبط',
7 | center: 'توسيط',
8 | left: 'محاذاة إلى اليسار',
9 | right: 'محاذاة إلى اليمين'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/bg.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'bg', {
6 | block: 'Двустранно подравняване',
7 | center: 'Център',
8 | left: 'Подравни в ляво',
9 | right: 'Подравни в дясно'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/bn.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'bn', {
6 | block: 'ব্লক জাস্টিফাই',
7 | center: 'মাঝ বরাবর ঘেষা',
8 | left: 'বা দিকে ঘেঁষা',
9 | right: 'ডান দিকে ঘেঁষা'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/bs.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'bs', {
6 | block: 'Puno poravnanje',
7 | center: 'Centralno poravnanje',
8 | left: 'Lijevo poravnanje',
9 | right: 'Desno poravnanje'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ca.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ca', {
6 | block: 'Justificat',
7 | center: 'Centrat',
8 | left: 'Alinea a l\'esquerra',
9 | right: 'Alinea a la dreta'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/cs.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'cs', {
6 | block: 'Zarovnat do bloku',
7 | center: 'Zarovnat na střed',
8 | left: 'Zarovnat vlevo',
9 | right: 'Zarovnat vpravo'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/cy.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'cy', {
6 | block: 'Unioni',
7 | center: 'Alinio i\'r Canol',
8 | left: 'Alinio i\'r Chwith',
9 | right: 'Alinio i\'r Dde'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/da.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'da', {
6 | block: 'Lige margener',
7 | center: 'Centreret',
8 | left: 'Venstrestillet',
9 | right: 'Højrestillet'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/de.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'de', {
6 | block: 'Blocksatz',
7 | center: 'Zentriert',
8 | left: 'Linksbündig',
9 | right: 'Rechtsbündig'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/el.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'el', {
6 | block: 'Πλήρης Στοίχιση',
7 | center: 'Στο Κέντρο',
8 | left: 'Στοίχιση Αριστερά',
9 | right: 'Στοίχιση Δεξιά'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/en-au.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'en-au', {
6 | block: 'Justify',
7 | center: 'Centre',
8 | left: 'Align Left',
9 | right: 'Align Right'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/en-ca.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'en-ca', {
6 | block: 'Justify',
7 | center: 'Centre',
8 | left: 'Align Left',
9 | right: 'Align Right'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/en-gb.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'en-gb', {
6 | block: 'Justify',
7 | center: 'Centre',
8 | left: 'Align Left',
9 | right: 'Align Right'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/en.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'en', {
6 | block: 'Justify',
7 | center: 'Center',
8 | left: 'Align Left',
9 | right: 'Align Right'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/eo.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'eo', {
6 | block: 'Ĝisrandigi Ambaŭflanke',
7 | center: 'Centrigi',
8 | left: 'Ĝisrandigi maldekstren',
9 | right: 'Ĝisrandigi dekstren'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/es.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'es', {
6 | block: 'Justificado',
7 | center: 'Centrar',
8 | left: 'Alinear a Izquierda',
9 | right: 'Alinear a Derecha'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/et.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'et', {
6 | block: 'Rööpjoondus',
7 | center: 'Keskjoondus',
8 | left: 'Vasakjoondus',
9 | right: 'Paremjoondus'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/eu.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'eu', {
6 | block: 'Justifikatu',
7 | center: 'Lerrokatu Erdian',
8 | left: 'Lerrokatu Ezkerrean',
9 | right: 'Lerrokatu Eskuman'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/fa.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'fa', {
6 | block: 'بلوک چین',
7 | center: 'میان چین',
8 | left: 'چپ چین',
9 | right: 'راست چین'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/fi.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'fi', {
6 | block: 'Tasaa molemmat reunat',
7 | center: 'Keskitä',
8 | left: 'Tasaa vasemmat reunat',
9 | right: 'Tasaa oikeat reunat'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/fo.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'fo', {
6 | block: 'Javnir tekstkantar',
7 | center: 'Miðsett',
8 | left: 'Vinstrasett',
9 | right: 'Høgrasett'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/fr-ca.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'fr-ca', {
6 | block: 'Justifié',
7 | center: 'Centré',
8 | left: 'Aligner à gauche',
9 | right: 'Aligner à Droite'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/fr.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'fr', {
6 | block: 'Justifier',
7 | center: 'Centrer',
8 | left: 'Aligner à gauche',
9 | right: 'Aligner à droite'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/gl.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'gl', {
6 | block: 'Xustificado',
7 | center: 'Centrado',
8 | left: 'Aliñar á esquerda',
9 | right: 'Aliñar á dereita'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/gu.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'gu', {
6 | block: 'બ્લૉક, અંતરાય જસ્ટિફાઇ',
7 | center: 'સંકેંદ્રણ/સેંટરિંગ',
8 | left: 'ડાબી બાજુએ/બાજુ તરફ',
9 | right: 'જમણી બાજુએ/બાજુ તરફ'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/he.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'he', {
6 | block: 'יישור לשוליים',
7 | center: 'מרכוז',
8 | left: 'יישור לשמאל',
9 | right: 'יישור לימין'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/hi.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'hi', {
6 | block: 'ब्लॉक जस्टीफ़ाई',
7 | center: 'बीच में',
8 | left: 'बायीं तरफ',
9 | right: 'दायीं तरफ'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/hr.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'hr', {
6 | block: 'Blok poravnanje',
7 | center: 'Središnje poravnanje',
8 | left: 'Lijevo poravnanje',
9 | right: 'Desno poravnanje'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/hu.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'hu', {
6 | block: 'Sorkizárt',
7 | center: 'Középre',
8 | left: 'Balra',
9 | right: 'Jobbra'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/id.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'id', {
6 | block: 'Rata kiri-kanan',
7 | center: 'Pusat',
8 | left: 'Align Left', // MISSING
9 | right: 'Align Right' // MISSING
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/is.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'is', {
6 | block: 'Jafna báðum megin',
7 | center: 'Miðja texta',
8 | left: 'Vinstrijöfnun',
9 | right: 'Hægrijöfnun'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/it.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'it', {
6 | block: 'Giustifica',
7 | center: 'Centra',
8 | left: 'Allinea a sinistra',
9 | right: 'Allinea a destra'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ja.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ja', {
6 | block: '両端揃え',
7 | center: '中央揃え',
8 | left: '左揃え',
9 | right: '右揃え'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ka.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ka', {
6 | block: 'გადასწორება',
7 | center: 'შუაში სწორება',
8 | left: 'მარცხნივ სწორება',
9 | right: 'მარჯვნივ სწორება'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/km.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'km', {
6 | block: 'តម្រឹមពេញ',
7 | center: 'កណ្ដាល',
8 | left: 'តម្រឹមឆ្វេង',
9 | right: 'តម្រឹមស្ដាំ'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ko.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ko', {
6 | block: '양쪽 맞춤',
7 | center: '가운데 정렬',
8 | left: '왼쪽 정렬',
9 | right: '오른쪽 정렬'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ku.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ku', {
6 | block: 'هاوستوونی',
7 | center: 'ناوەڕاست',
8 | left: 'بەهێڵ کردنی چەپ',
9 | right: 'بەهێڵ کردنی ڕاست'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/lt.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'lt', {
6 | block: 'Lygiuoti abi puses',
7 | center: 'Centruoti',
8 | left: 'Lygiuoti kairę',
9 | right: 'Lygiuoti dešinę'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/lv.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'lv', {
6 | block: 'Izlīdzināt malas',
7 | center: 'Izlīdzināt pret centru',
8 | left: 'Izlīdzināt pa kreisi',
9 | right: 'Izlīdzināt pa labi'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/mk.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'mk', {
6 | block: 'Justify', // MISSING
7 | center: 'Center', // MISSING
8 | left: 'Align Left', // MISSING
9 | right: 'Align Right' // MISSING
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/mn.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'mn', {
6 | block: 'Тэгшлэх',
7 | center: 'Голлуулах',
8 | left: 'Зүүн талд тулгах',
9 | right: 'Баруун талд тулгах'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ms.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ms', {
6 | block: 'Jajaran Blok',
7 | center: 'Jajaran Tengah',
8 | left: 'Jajaran Kiri',
9 | right: 'Jajaran Kanan'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/nb.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'nb', {
6 | block: 'Blokkjuster',
7 | center: 'Midtstill',
8 | left: 'Venstrejuster',
9 | right: 'Høyrejuster'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/nl.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'nl', {
6 | block: 'Uitvullen',
7 | center: 'Centreren',
8 | left: 'Links uitlijnen',
9 | right: 'Rechts uitlijnen'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/no.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'no', {
6 | block: 'Blokkjuster',
7 | center: 'Midtstill',
8 | left: 'Venstrejuster',
9 | right: 'Høyrejuster'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/pl.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'pl', {
6 | block: 'Wyjustuj',
7 | center: 'Wyśrodkuj',
8 | left: 'Wyrównaj do lewej',
9 | right: 'Wyrównaj do prawej'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/pt-br.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'pt-br', {
6 | block: 'Justificado',
7 | center: 'Centralizar',
8 | left: 'Alinhar Esquerda',
9 | right: 'Alinhar Direita'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/pt.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'pt', {
6 | block: 'Justificado',
7 | center: 'Alinhar ao Centro',
8 | left: 'Alinhar à Esquerda',
9 | right: 'Alinhar à Direita'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ro.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ro', {
6 | block: 'Aliniere în bloc (Block Justify)',
7 | center: 'Aliniere centrală',
8 | left: 'Aliniere la stânga',
9 | right: 'Aliniere la dreapta'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ru.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ru', {
6 | block: 'По ширине',
7 | center: 'По центру',
8 | left: 'По левому краю',
9 | right: 'По правому краю'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/si.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'si', {
6 | block: 'Justify', // MISSING
7 | center: 'මධ්ය',
8 | left: 'Align Left', // MISSING
9 | right: 'Align Right' // MISSING
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/sk.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'sk', {
6 | block: 'Zarovnať do bloku',
7 | center: 'Zarovnať na stred',
8 | left: 'Zarovnať vľavo',
9 | right: 'Zarovnať vpravo'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/sl.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'sl', {
6 | block: 'Obojestranska poravnava',
7 | center: 'Sredinska poravnava',
8 | left: 'Leva poravnava',
9 | right: 'Desna poravnava'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/sq.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'sq', {
6 | block: 'Zgjero',
7 | center: 'Qendër',
8 | left: 'Rreshto majtas',
9 | right: 'Rreshto Djathtas'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/sr-latn.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'sr-latn', {
6 | block: 'Obostrano ravnanje',
7 | center: 'Centriran tekst',
8 | left: 'Levo ravnanje',
9 | right: 'Desno ravnanje'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/sr.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'sr', {
6 | block: 'Обострано равнање',
7 | center: 'Центриран текст',
8 | left: 'Лево равнање',
9 | right: 'Десно равнање'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/sv.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'sv', {
6 | block: 'Justera till marginaler',
7 | center: 'Centrera',
8 | left: 'Vänsterjustera',
9 | right: 'Högerjustera'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/th.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'th', {
6 | block: 'จัดพอดีหน้ากระดาษ',
7 | center: 'จัดกึ่งกลาง',
8 | left: 'จัดชิดซ้าย',
9 | right: 'จัดชิดขวา'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/tr.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'tr', {
6 | block: 'İki Kenara Yaslanmış',
7 | center: 'Ortalanmış',
8 | left: 'Sola Dayalı',
9 | right: 'Sağa Dayalı'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/ug.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'ug', {
6 | block: 'ئىككى تەرەپتىن توغرىلا',
7 | center: 'ئوتتۇرىغا توغرىلا',
8 | left: 'سولغا توغرىلا',
9 | right: 'ئوڭغا توغرىلا'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/uk.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'uk', {
6 | block: 'По ширині',
7 | center: 'По центру',
8 | left: 'По лівому краю',
9 | right: 'По правому краю'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/vi.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'vi', {
6 | block: 'Canh đều',
7 | center: 'Canh giữa',
8 | left: 'Canh trái',
9 | right: 'Canh phải'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/zh-cn.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'zh-cn', {
6 | block: '两端对齐',
7 | center: '居中',
8 | left: '左对齐',
9 | right: '右对齐'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/justify/lang/zh.js:
--------------------------------------------------------------------------------
1 | /*
2 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 | For licensing, see LICENSE.md or http://ckeditor.com/license
4 | */
5 | CKEDITOR.plugins.setLang( 'justify', 'zh', {
6 | block: '左右對齊',
7 | center: '置中',
8 | left: '靠左對齊',
9 | right: '靠右對齊'
10 | } );
11 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/link/images/anchor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/link/images/anchor.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/link/images/hidpi/anchor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/link/images/hidpi/anchor.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/magicline/images/hidpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/magicline/images/hidpi/icon.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/magicline/images/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/plugins/magicline/images/icon.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/scayt/README.md:
--------------------------------------------------------------------------------
1 | CKEditor SCAYT Plugin
2 | =====================
3 |
4 | This plugin brings Spell Check As You Type (SCAYT) into CKEditor.
5 |
6 | SCAYT is a "installation-less", using the web-services of [WebSpellChecker.net](http://www.webspellchecker.net/). It's an out of the box solution.
7 |
8 | Installation
9 | ------------
10 |
11 | 1. Clone/copy this repository contents in a new "plugins/scayt" folder in your CKEditor installation.
12 | 2. Enable the "scayt" plugin in the CKEditor configuration file (config.js):
13 |
14 | config.extraPlugins = 'scayt';
15 |
16 | That's all. SCAYT will appear on the editor toolbar and will be ready to use.
17 |
18 | License
19 | -------
20 |
21 | Licensed under the terms of any of the following licenses at your choice: [GPL](http://www.gnu.org/licenses/gpl.html), [LGPL](http://www.gnu.org/licenses/lgpl.html) and [MPL](http://www.mozilla.org/MPL/MPL-1.1.html).
22 |
23 | See LICENSE.md for more information.
24 |
25 | Developed in cooperation with [WebSpellChecker.net](http://www.webspellchecker.net/).
26 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
2 | For licensing, see LICENSE.md or http://ckeditor.com/license
3 |
4 | cs.js Found: 118 Missing: 0
5 | cy.js Found: 118 Missing: 0
6 | de.js Found: 118 Missing: 0
7 | el.js Found: 16 Missing: 102
8 | eo.js Found: 118 Missing: 0
9 | et.js Found: 31 Missing: 87
10 | fa.js Found: 24 Missing: 94
11 | fi.js Found: 23 Missing: 95
12 | fr.js Found: 118 Missing: 0
13 | hr.js Found: 23 Missing: 95
14 | it.js Found: 118 Missing: 0
15 | nb.js Found: 118 Missing: 0
16 | nl.js Found: 118 Missing: 0
17 | no.js Found: 118 Missing: 0
18 | tr.js Found: 118 Missing: 0
19 | ug.js Found: 39 Missing: 79
20 | zh-cn.js Found: 118 Missing: 0
21 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/plugins/wsc/README.md:
--------------------------------------------------------------------------------
1 | CKEditor WebSpellChecker Plugin
2 | ===============================
3 |
4 | This plugin brings Web Spell Checker (WSC) into CKEditor.
5 |
6 | WSC is "installation-less", using the web-services of [WebSpellChecker.net](http://www.webspellchecker.net/). It's an out of the box solution.
7 |
8 | Installation
9 | ------------
10 |
11 | 1. Clone/copy this repository contents in a new "plugins/wsc" folder in your CKEditor installation.
12 | 2. Enable the "wsc" plugin in the CKEditor configuration file (config.js):
13 |
14 | config.extraPlugins = 'wsc';
15 |
16 | That's all. WSC will appear on the editor toolbar and will be ready to use.
17 |
18 | License
19 | -------
20 |
21 | Licensed under the terms of any of the following licenses at your choice: [GPL](http://www.gnu.org/licenses/gpl.html), [LGPL](http://www.gnu.org/licenses/lgpl.html) and [MPL](http://www.mozilla.org/MPL/MPL-1.1.html).
22 |
23 | See LICENSE.md for more information.
24 |
25 | Developed in cooperation with [WebSpellChecker.net](http://www.webspellchecker.net/).
26 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/icons.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/icons_hidpi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/icons_hidpi.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/arrow.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/close.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/close.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/lock-open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/lock-open.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/lock.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/hidpi/refresh.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/lock-open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/lock-open.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/lock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/lock.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/refresh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/static/widgy/js/lib/ckeditor/skins/moono/images/refresh.png
--------------------------------------------------------------------------------
/widgy/static/widgy/js/modal/modal.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
Oh no!
5 |
There has been an error: <%& message %>
6 |
7 | close
8 |
9 |
10 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/nodes/drop_target.html:
--------------------------------------------------------------------------------
1 | drop here?
2 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/nodes/popped_out.html:
--------------------------------------------------------------------------------
1 | pop in
2 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/nodes/preview.html:
--------------------------------------------------------------------------------
1 |
2 | <% title %>
3 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/popup.js:
--------------------------------------------------------------------------------
1 | jQuery(function($) {
2 | // show/hide publish at calendar fields according to what the publish_radio
3 | // field dictates.
4 | var $publish_at = $('.publish_at_container');
5 | function showHideCalendar() {
6 | var publish_now = $('[name=publish_radio]:checked').val() == 'now';
7 |
8 | if ( publish_now ) {
9 | $publish_at.hide();
10 | } else {
11 | $publish_at.show();
12 | }
13 | }
14 | $('[name=publish_radio]').on('change', showHideCalendar);
15 | showHideCalendar();
16 |
17 | // Loading spinner
18 | $('.popUp form [type=submit]').click(function() {
19 | $(this).addClass('loading');
20 | });
21 | $('.popUp form').submit(function() {
22 | var $form = $(this);
23 | var $submits = $form.find('[type=submit]');
24 | if ( $form.find('.loading').length == 0 ) {
25 | // enter pressed
26 | $submits.first().addClass('loading');
27 | }
28 | // We want to disable the submit buttons to prevent double-submission, but
29 | // we need the data from the submit button to be submitted, which won't
30 | // happen if it's disabled in this frame.
31 | setTimeout(function() {
32 | $submits.attr('disabled', true);
33 | }, 0);
34 | });
35 | });
36 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/require/depend.js:
--------------------------------------------------------------------------------
1 | /** @license
2 | * Plugin to load JS files that have dependencies but aren't wrapped into
3 | * `define` calls.
4 | * Author: Miller Medeiros
5 | * Version: 0.1.0 (2011/12/13)
6 | * Released under the MIT license
7 | */
8 | define(function () {
9 |
10 | var rParts = /^(.*)\[([^\]]*)\]$/;
11 |
12 | return {
13 |
14 | //example: depend!bar[jquery,lib/foo]
15 | load : function(name, req, onLoad, config){
16 | var parts = rParts.exec(name);
17 |
18 | req(parts[2].split(','), function(){
19 | req([parts[1]], function(mod){
20 | onLoad(mod);
21 | });
22 | });
23 | }
24 |
25 | };
26 |
27 | });
28 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/shelves/shelf.html:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/templates.js:
--------------------------------------------------------------------------------
1 | define([
2 | 'widgy.backbone',
3 | 'underscore',
4 | 'lib/q',
5 | 'modal/modal'
6 | ], function(
7 | Backbone,
8 | _,
9 | Q,
10 | modal
11 | ) {
12 |
13 | var Template = Backbone.Model.extend({
14 | initialize: function() {
15 | Backbone.Model.prototype.initialize.apply(this, arguments);
16 |
17 | _.bindAll(this,
18 | 'render'
19 | );
20 | },
21 |
22 | render: function(type, context) {
23 | return Backbone.renderTemplate(this.get(type), context);
24 | }
25 | });
26 |
27 | var getTemplate = function(template_id) {
28 | return Q(Backbone.ajax({url: template_id, cache: false}))
29 | .then(function(template) {
30 | var model = new Template(_.extend({url: template_id}, template));
31 | return model;
32 | })
33 | .fail(modal.ajaxError);
34 | };
35 |
36 | return {
37 | getTemplate: getTemplate
38 | };
39 | });
40 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/widgets/widget.html:
--------------------------------------------------------------------------------
1 | {{{ yield }}}
2 | Edit
3 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/widgy-main.js:
--------------------------------------------------------------------------------
1 | require(['widgy'], function() {
2 | // stub for loading compiled widgy bundle
3 | });
4 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/widgy.admin.js:
--------------------------------------------------------------------------------
1 | jQuery(function($) {
2 | $('a.widgy-fancybox').fancybox({
3 | width: 700,
4 | type: 'iframe',
5 | onComplete: function() {
6 | $.fancybox.showActivity();
7 | $('#fancybox-frame').load(function(){
8 | $.fancybox.hideActivity();
9 | });
10 | }
11 | });
12 | window.closeFancybox = $.fancybox.close;
13 | });
14 |
15 | if ( typeof window.console == 'undefined' )
16 | {
17 | var $console = $('');
18 | $(document.body).append($console);
19 | window.console = {
20 | log: function(what) {
21 | $console.append($(' ').text(what));
22 | }
23 | };
24 | }
25 |
--------------------------------------------------------------------------------
/widgy/static/widgy/js/widgy.build.js:
--------------------------------------------------------------------------------
1 | ({
2 | paths: {
3 | 'jquery': './lib/jquery',
4 | 'underscore': './lib/underscore',
5 | 'backbone': './lib/backbone',
6 | 'text': 'require/text',
7 | },
8 | skipDirOptimize: true,
9 | modules: [
10 | {
11 | name: 'widgy-main',
12 | // components get included dynamically, so they can't be detected.
13 | include: [
14 | 'components/widget/component',
15 | 'components/tabbed/component',
16 | 'components/table/component',
17 | 'components/tableheader/component',
18 | ],
19 | }
20 | ],
21 | map: {
22 | // http://requirejs.org/docs/jquery.html#noconflictmap
23 | '*': { 'jquery': 'jquery-private' },
24 | 'jquery-private': { 'jquery': 'jquery' }
25 | }
26 | })
27 |
--------------------------------------------------------------------------------
/widgy/static/widgy/mixins/tabbed.admin.scss:
--------------------------------------------------------------------------------
1 | @import "/widgy/css/widgy_common";
2 |
3 | // Layout
4 | .widgy {
5 | .tabbed {
6 | > .widget > .nodeChildren {
7 | @include box-sizing(border-box);
8 | @include clearfix;
9 | width: 100% !important;
10 |
11 | > li {
12 | display: inline-block;
13 | float: left;
14 |
15 | // Only show the buttons if we are on the current tab.
16 | &:not(.active) {
17 | .edit, .delete {
18 | display: none;
19 | }
20 | }
21 |
22 | &.node_drop_target {
23 | margin-bottom: 0;
24 | width: 50px;
25 |
26 | &.active {
27 | width: 100px;
28 | }
29 | }
30 |
31 | .drag-row {
32 | @include cursor(pointer);
33 | }
34 | .draggable > .drag-row {
35 | @include cursor(grab, pointer);
36 | }
37 | &.being_dragged .drag-row {
38 | @include cursor(grabbing, pointer);
39 | }
40 | }
41 | }
42 |
43 | .current {
44 | clear: both;
45 | width: 100%;
46 | }
47 | }
48 |
49 | // if the tabs are at the root level make the current tab look
50 | // like a root level node.
51 | section.tabbed > .widget > .current {
52 | float: left;
53 | width: 63%;
54 | }
55 | }
56 |
57 | @import "tabbed-theme.admin.scss";
58 |
--------------------------------------------------------------------------------
/widgy/templates/layout_base.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/_commit_form.html:
--------------------------------------------------------------------------------
1 | {% load i18n %}
2 | {% load widgy_tags %}
3 |
4 |
15 |
16 |
42 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/commit.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/popup_base.html" %}
2 | {% load i18n %}
3 |
4 | {% block popup-content %}
5 | {% if changed_anything %}
6 | {% block commit_form %}
7 | {% include "widgy/_commit_form.html" with commit=tracker.working_copy action_url=commit_url %}
8 | {% endblock %}
9 | {% else %}
10 | {% trans "Nothing has changed — no need to commit." %}
11 | {% endif %}
12 | {% endblock %}
13 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/commit_success.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/popup_base.html" %}
2 | {% load i18n %}
3 | {% block popup-content %}
4 | {% trans "Change(s) successfully committed." %}
5 |
8 | {% endblock %}
9 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/debugtoolbar/templates.html:
--------------------------------------------------------------------------------
1 | get_templates_hierarchy
2 |
3 |
4 |
5 | Class
6 | Templates
7 | Used
8 |
9 |
10 | {% for call in calls %}
11 | {% ifchanged call.templates %}
12 |
13 | {{ call.cls_name }}
14 | {% for template in call.templates %}
15 | {{ template }}
{% if not forloop.last %}, {% endif %}
16 | {% endfor %}
17 | {{ call.used }}
18 |
19 | {% endifchanged %}
20 | {% endfor %}
21 |
22 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/diff.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}{% load compress staticfiles %}
2 | {% block body %}
3 | {% compress css %}
4 | {# designers -- when you get to this, feel free to completely remove this #}
5 | {# css file and write your own #}
6 |
7 | {% endcompress %}
8 |
19 | {{ diff|safe }}
20 | {% endblock %}
21 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/edit.html:
--------------------------------------------------------------------------------
1 | {% load i18n %}
2 |
19 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/field_as_div.html:
--------------------------------------------------------------------------------
1 | {% if field.is_hidden %}
2 | {{ field }}
3 | {% else %}
4 |
13 | {% endif %}
14 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/forms/widgets/contenttyperadioselect.html:
--------------------------------------------------------------------------------
1 | {% load compress static %}
2 |
3 | {% include 'django/forms/widgets/radio.html' %}
4 |
5 | {% compress css %}
6 |
7 | {% endcompress %}
8 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/forms/widgets/contenttyperadioselect_option.html:
--------------------------------------------------------------------------------
1 | {% load widgy_tags %}
2 |
3 |
4 | {% include "django/forms/widgets/input.html" %}
5 | {{ widget.label }}
6 |
7 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/mixins/invisible/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/preview.html" %}
2 |
3 | {% block drag-row %}{% endblock %}
4 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/mixins/tabbed/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/preview.html" %}
2 | {% load compress %}
3 |
4 | {% block children %}
5 | {{ block.super }}
6 |
7 |
8 | {% endblock %}
9 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/popup_base.html:
--------------------------------------------------------------------------------
1 | {% extends "admin/base.html" %}
2 | {% load compress static %}
3 |
4 | {% block extrastyle %}{{ block.super }}
5 | {% compress css %}
6 |
7 | {% endcompress %}
8 |
9 | {% endblock %}
10 |
11 | {% block extrahead %}{{ block.super }}
12 | {% url 'admin:jsi18n' as jsi18nurl %}
13 |
14 | {% compress js %}
15 |
16 |
17 |
18 |
19 |
20 | {% endcompress %}
21 |
24 | {% endblock %}
25 |
26 | {% block breadcrumbs %}{% endblock %}
27 |
28 | {% block content %}
29 |
39 | {% endblock %}
40 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/preview.html:
--------------------------------------------------------------------------------
1 | {% load i18n %}
2 |
32 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/reset.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/popup_base.html" %}
2 | {% load i18n %}
3 |
4 | {% block popup-content %}
5 | {% if not has_commits %}
6 | {% trans "There are no commits yet, nothing to reset to" %}
7 | {% elif changed_anything %}
8 | {% trans "This will irrevocably destroy all uncommited changes. Are you sure?" %}
9 |
13 | {% else %}
14 | {% trans "Nothing has changed — no need to reset." %}
15 | {% endif %}
16 | {% endblock %}
17 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/reset_success.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/popup_base.html" %}
2 | {% load i18n %}
3 |
4 | {% block popup-content %}
5 | {% trans 'Your changes were successfully erased.' %}
6 |
10 | {% endblock %}
11 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/revert.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/popup_base.html" %}
2 | {% load i18n %}
3 |
4 | {% block popup-content %}
5 | {% include "widgy/_commit_form.html" with commit=tracker.root_node action_url=revert_url %}
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/versioned_widgy_field_base.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/widgy_field.html" %}
2 | {% load i18n %}
3 |
4 | {% block widgy_tools %}
5 | {% trans "Commit" %}
6 | {% trans "Reset" %}
7 | {% trans "History" %}
8 | {{ block.super }}
9 | {% endblock %}
10 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/views/README:
--------------------------------------------------------------------------------
1 | These templates are used internally by Widgy. They are unrelated to the
2 | templates for Content models.
3 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/views/edit_node.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Edit Node
5 |
6 |
7 | {% include "widgy/widgy_field.html" %}
8 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/widgy/templates/widgy/widgy/unknownwidget/preview.html:
--------------------------------------------------------------------------------
1 | {% extends "widgy/preview.html" %}
2 | {% block content %}
3 |
4 | Unknown Widget Type: {{ self.content_type.app_label }}.{{ self.content_type.model }}
5 |
6 | {% endblock %}
7 |
--------------------------------------------------------------------------------
/widgy/templatetags/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/fusionbox/django-widgy/a730bff31ce5a7c7cfd9fbbc0df98f4c22e8e2e5/widgy/templatetags/__init__.py
--------------------------------------------------------------------------------
/widgy/views/__init__.py:
--------------------------------------------------------------------------------
1 | from widgy.views.api import *
2 | from widgy.views.versioning import *
3 |
--------------------------------------------------------------------------------
/widgy/views/base.py:
--------------------------------------------------------------------------------
1 | from django.contrib.auth.views import redirect_to_login
2 | from django.core.exceptions import PermissionDenied
3 |
4 |
5 | class WidgyViewMixin(object):
6 | site = None
7 |
8 | def auth(self, request, *args, **kwargs):
9 | self.site.authorize_view(request, self)
10 |
11 |
12 | class AuthorizedMixin(WidgyViewMixin):
13 | """
14 | Makes sure to call auth before doing anything.
15 |
16 | This class should not be used by RestView subclasses. RestView already
17 | makes the call to auth, but conveniently wraps the errors to return them in
18 | JSON-encoded responses.
19 | """
20 | def dispatch(self, request, *args, **kwargs):
21 | try:
22 | self.auth(request, *args, **kwargs)
23 | except PermissionDenied:
24 | if request.user.is_authenticated():
25 | raise
26 | else:
27 | return redirect_to_login(request.get_full_path())
28 | else:
29 | return super(AuthorizedMixin, self).dispatch(request, *args, **kwargs)
30 |
--------------------------------------------------------------------------------
/widgy/widgets.py:
--------------------------------------------------------------------------------
1 | from django.contrib.admin import widgets
2 | from django.template.loader import render_to_string
3 |
4 |
5 | class DateTimeMixin(object):
6 | class Media:
7 | extend = False
8 | js = tuple()
9 |
10 | def render(self, name, value, attrs=None):
11 | widget = super(DateTimeMixin, self).render(name, value, attrs)
12 | return render_to_string('page_builder/datetime_widget.html', {
13 | 'widget': widget,
14 | })
15 |
16 |
17 | class DateTimeWidget(DateTimeMixin, widgets.AdminSplitDateTime):
18 | pass
19 |
20 |
21 | class DateWidget(DateTimeMixin, widgets.AdminDateWidget):
22 | pass
23 |
24 |
25 | class TimeWidget(DateTimeMixin, widgets.AdminTimeWidget):
26 | pass
27 |
--------------------------------------------------------------------------------