emojis and migrations
This commit is contained in:
parent
8107e46b60
commit
87b7f0d204
2
.gitignore
vendored
2
.gitignore
vendored
@ -70,5 +70,3 @@ secret_settings\.py
|
||||
*.sqlite3
|
||||
|
||||
\.idea/workspace\.xml
|
||||
|
||||
cookbook/migrations/
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="JavaScriptLibraryMappings">
|
||||
<file url="file://$PROJECT_DIR$" libraries="{bootstrap, jquery-3.2.1, jquery-3.2.1.slim, jquery-3.3.1, popper, select2}" />
|
||||
<file url="file://$PROJECT_DIR$" libraries="{bootstrap, jquery-3.2.1.slim, jquery-3.3.1, popper, select2}" />
|
||||
</component>
|
||||
</project>
|
@ -1,4 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.6.1 (C:\Users\vabene1111\AppData\Local\Programs\Python\Python36\python.exe)" project-jdk-type="Python SDK" />
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.6 (recipies)" project-jdk-type="Python SDK" />
|
||||
</project>
|
@ -16,7 +16,7 @@
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/venv" />
|
||||
</content>
|
||||
<orderEntry type="jdk" jdkName="Python 3.6.1 (C:\Users\vabene1111\AppData\Local\Programs\Python\Python36\python.exe)" jdkType="Python SDK" />
|
||||
<orderEntry type="jdk" jdkName="Python 3.6 (recipies)" jdkType="Python SDK" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="bootstrap" level="application" />
|
||||
<orderEntry type="library" name="jquery-3.2.1.slim" level="application" />
|
||||
@ -27,6 +27,8 @@
|
||||
<orderEntry type="library" name="jquery-3.2.1" level="application" />
|
||||
<orderEntry type="library" name="jquery-3.3.1" level="application" />
|
||||
<orderEntry type="library" name="select2" level="application" />
|
||||
<orderEntry type="library" name="jquery-3.3.1" level="application" />
|
||||
<orderEntry type="library" name="select2" level="application" />
|
||||
</component>
|
||||
<component name="TemplatesService">
|
||||
<option name="TEMPLATE_CONFIGURATION" value="Django" />
|
||||
|
80
cookbook/migrations/0001_initial.py
Normal file
80
cookbook/migrations/0001_initial.py
Normal file
@ -0,0 +1,80 @@
|
||||
# Generated by Django 2.0.5 on 2018-05-14 08:50
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Category',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=64, unique=True)),
|
||||
('description', models.TextField(blank=True, default='')),
|
||||
('created_by', models.IntegerField(default=0)),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('updated_at', models.DateTimeField(auto_now=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Keyword',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=64, unique=True)),
|
||||
('description', models.TextField(blank=True, default='')),
|
||||
('created_by', models.IntegerField(default=0)),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('updated_at', models.DateTimeField(auto_now=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Recipe',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=128)),
|
||||
('path', models.CharField(default='', max_length=512)),
|
||||
('link', models.CharField(default='', max_length=512)),
|
||||
('created_by', models.IntegerField(default=0)),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('updated_at', models.DateTimeField(auto_now=True)),
|
||||
('category', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='cookbook.Category')),
|
||||
('keywords', models.ManyToManyField(blank=True, to='cookbook.Keyword')),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='RecipeImport',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=128)),
|
||||
('path', models.CharField(default='', max_length=512)),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Sync',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('path', models.CharField(default='', max_length=512)),
|
||||
('last_checked', models.DateTimeField()),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('updated_at', models.DateTimeField(auto_now=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='SyncLog',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('status', models.CharField(max_length=32)),
|
||||
('msg', models.TextField(default='')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('monitor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='cookbook.Sync')),
|
||||
],
|
||||
),
|
||||
]
|
18
cookbook/migrations/0002_category_icon.py
Normal file
18
cookbook/migrations/0002_category_icon.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 2.0.5 on 2018-05-14 08:58
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('cookbook', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='category',
|
||||
name='icon',
|
||||
field=models.CharField(blank=True, max_length=4, null=True),
|
||||
),
|
||||
]
|
23
cookbook/migrations/0003_auto_20180514_1121.py
Normal file
23
cookbook/migrations/0003_auto_20180514_1121.py
Normal file
@ -0,0 +1,23 @@
|
||||
# Generated by Django 2.0.5 on 2018-05-14 09:21
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('cookbook', '0002_category_icon'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='keyword',
|
||||
name='icon',
|
||||
field=models.CharField(blank=True, max_length=1, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='category',
|
||||
name='icon',
|
||||
field=models.CharField(blank=True, max_length=1, null=True),
|
||||
),
|
||||
]
|
0
cookbook/migrations/__init__.py
Normal file
0
cookbook/migrations/__init__.py
Normal file
@ -3,6 +3,7 @@ from django.db import models
|
||||
|
||||
class Keyword(models.Model):
|
||||
name = models.CharField(max_length=64, unique=True)
|
||||
icon = models.CharField(max_length=1, blank=True, null=True)
|
||||
description = models.TextField(default="", blank=True)
|
||||
created_by = models.IntegerField(default=0)
|
||||
created_at = models.DateTimeField(auto_now_add=True)
|
||||
@ -14,6 +15,7 @@ class Keyword(models.Model):
|
||||
|
||||
class Category(models.Model):
|
||||
name = models.CharField(max_length=64, unique=True)
|
||||
icon = models.CharField(max_length=1, blank=True, null=True)
|
||||
description = models.TextField(default="", blank=True)
|
||||
created_by = models.IntegerField(default=0)
|
||||
created_at = models.DateTimeField(auto_now_add=True)
|
||||
|
560
cookbook/static/emojionearea/emojionearea.css
Normal file
560
cookbook/static/emojionearea/emojionearea.css
Normal file
@ -0,0 +1,560 @@
|
||||
.dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] {
|
||||
position: absolute;
|
||||
z-index: 1000;
|
||||
min-width: 160px;
|
||||
padding: 5px 0;
|
||||
margin: 2px 0 0;
|
||||
font-size: 14px;
|
||||
text-align: left;
|
||||
list-style: none;
|
||||
background-color: #fff;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip: padding-box;
|
||||
border: 1px solid #ccc;
|
||||
border: 1px solid rgba(0, 0, 0, 0.15);
|
||||
-moz-border-radius: 4px;
|
||||
-webkit-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
-moz-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
||||
-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
|
||||
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); }
|
||||
.dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] li.textcomplete-item {
|
||||
font-size: 14px;
|
||||
padding: 1px 3px;
|
||||
border: 0; }
|
||||
.dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] li.textcomplete-item a {
|
||||
text-decoration: none;
|
||||
display: block;
|
||||
height: 100%;
|
||||
line-height: 1.8em;
|
||||
padding: 0 1.54em 0 .615em;
|
||||
color: #4f4f4f; }
|
||||
.dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] li.textcomplete-item:hover, .dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] li.textcomplete-item.active {
|
||||
background-color: #e4e4e4; }
|
||||
.dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] li.textcomplete-item:hover a, .dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] li.textcomplete-item.active a {
|
||||
color: #333; }
|
||||
.dropdown-menu.textcomplete-dropdown[data-strategy="emojionearea"] li.textcomplete-item .emojioneemoji {
|
||||
font-size: inherit;
|
||||
height: 2ex;
|
||||
width: 2.1ex;
|
||||
min-height: 20px;
|
||||
min-width: 20px;
|
||||
display: inline-block;
|
||||
margin: 0 5px .2ex 0;
|
||||
line-height: normal;
|
||||
vertical-align: middle;
|
||||
max-width: 100%;
|
||||
top: 0; }
|
||||
|
||||
.emojionearea-text [class*=emojione-], .emojionearea-text .emojioneemoji {
|
||||
font-size: inherit;
|
||||
height: 2ex;
|
||||
width: 2.1ex;
|
||||
min-height: 20px;
|
||||
min-width: 20px;
|
||||
display: inline-block;
|
||||
margin: -.2ex .15em .2ex;
|
||||
line-height: normal;
|
||||
vertical-align: middle;
|
||||
max-width: 100%;
|
||||
top: 0; }
|
||||
|
||||
.emojionearea, .emojionearea * {
|
||||
-moz-box-sizing: border-box;
|
||||
-webkit-box-sizing: border-box;
|
||||
box-sizing: border-box; }
|
||||
.emojionearea.emojionearea-disable {
|
||||
position: relative;
|
||||
background-color: #eee;
|
||||
-moz-user-select: -moz-none;
|
||||
-ms-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
user-select: none; }
|
||||
.emojionearea.emojionearea-disable:before {
|
||||
content: "";
|
||||
display: block;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
z-index: 1;
|
||||
opacity: 0.3;
|
||||
position: absolute;
|
||||
background-color: #eee; }
|
||||
.emojionearea, .emojionearea.form-control {
|
||||
display: block;
|
||||
position: relative !important;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
padding: 0;
|
||||
font-size: 14px;
|
||||
border: 0;
|
||||
background-color: #FFFFFF;
|
||||
border: 1px solid #CCCCCC;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
|
||||
-moz-transition: border-color 0.15s ease-in-out, -moz-box-shadow 0.15s ease-in-out;
|
||||
-o-transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
||||
-webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
|
||||
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
|
||||
.emojionearea.focused {
|
||||
border-color: #66AFE9;
|
||||
outline: 0;
|
||||
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
|
||||
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }
|
||||
.emojionearea .emojionearea-editor {
|
||||
display: block;
|
||||
height: auto;
|
||||
min-height: 8em;
|
||||
max-height: 15em;
|
||||
overflow: auto;
|
||||
padding: 6px 24px 6px 12px;
|
||||
line-height: 1.42857143;
|
||||
font-size: inherit;
|
||||
color: #555555;
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
cursor: text;
|
||||
margin-right: 1px;
|
||||
-moz-border-radius: 0;
|
||||
-webkit-border-radius: 0;
|
||||
border-radius: 0;
|
||||
-moz-box-shadow: none;
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none; }
|
||||
.emojionearea .emojionearea-editor:empty:before {
|
||||
content: attr(placeholder);
|
||||
display: block;
|
||||
color: #BBBBBB; }
|
||||
.emojionearea .emojionearea-editor:focus {
|
||||
border: 0;
|
||||
outline: 0;
|
||||
-moz-box-shadow: none;
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none; }
|
||||
.emojionearea .emojionearea-editor [class*=emojione-], .emojionearea .emojionearea-editor .emojioneemoji {
|
||||
font-size: inherit;
|
||||
height: 2ex;
|
||||
width: 2.1ex;
|
||||
min-height: 20px;
|
||||
min-width: 20px;
|
||||
display: inline-block;
|
||||
margin: -.2ex .15em .2ex;
|
||||
line-height: normal;
|
||||
vertical-align: middle;
|
||||
max-width: 100%;
|
||||
top: 0; }
|
||||
.emojionearea.emojionearea-inline {
|
||||
height: 34px; }
|
||||
.emojionearea.emojionearea-inline > .emojionearea-editor {
|
||||
height: 32px;
|
||||
min-height: 20px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 12px;
|
||||
right: 24px;
|
||||
padding: 6px 0; }
|
||||
.emojionearea.emojionearea-inline > .emojionearea-button {
|
||||
top: 4px; }
|
||||
.emojionearea .emojionearea-button {
|
||||
z-index: 5;
|
||||
position: absolute;
|
||||
right: 3px;
|
||||
top: 3px;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
opacity: 0.6;
|
||||
cursor: pointer;
|
||||
-moz-transition: opacity 300ms ease-in-out;
|
||||
-o-transition: opacity 300ms ease-in-out;
|
||||
-webkit-transition: opacity 300ms ease-in-out;
|
||||
transition: opacity 300ms ease-in-out; }
|
||||
.emojionearea .emojionearea-button:hover {
|
||||
opacity: 1; }
|
||||
.emojionearea .emojionearea-button > div {
|
||||
display: block;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
position: absolute;
|
||||
-moz-transition: all 400ms ease-in-out;
|
||||
-o-transition: all 400ms ease-in-out;
|
||||
-webkit-transition: all 400ms ease-in-out;
|
||||
transition: all 400ms ease-in-out; }
|
||||
.emojionearea .emojionearea-button > div.emojionearea-button-open {
|
||||
background-position: 0 -24px;
|
||||
filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
|
||||
opacity: 1; }
|
||||
.emojionearea .emojionearea-button > div.emojionearea-button-close {
|
||||
background-position: 0 0;
|
||||
-webkit-transform: rotate(-45deg);
|
||||
-o-transform: rotate(-45deg);
|
||||
transform: rotate(-45deg);
|
||||
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
|
||||
opacity: 0; }
|
||||
.emojionearea .emojionearea-button.active > div.emojionearea-button-open {
|
||||
-webkit-transform: rotate(45deg);
|
||||
-o-transform: rotate(45deg);
|
||||
transform: rotate(45deg);
|
||||
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
|
||||
opacity: 0; }
|
||||
.emojionearea .emojionearea-button.active > div.emojionearea-button-close {
|
||||
-webkit-transform: rotate(0deg);
|
||||
-o-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
|
||||
opacity: 1; }
|
||||
.emojionearea .emojionearea-picker {
|
||||
background: #FFFFFF;
|
||||
position: absolute;
|
||||
-moz-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.32);
|
||||
-webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.32);
|
||||
box-shadow: 0 1px 5px rgba(0, 0, 0, 0.32);
|
||||
-moz-border-radius: 5px;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
height: 276px;
|
||||
width: 316px;
|
||||
top: -15px;
|
||||
right: -15px;
|
||||
z-index: 90;
|
||||
-moz-transition: all 0.25s ease-in-out;
|
||||
-o-transition: all 0.25s ease-in-out;
|
||||
-webkit-transition: all 0.25s ease-in-out;
|
||||
transition: all 0.25s ease-in-out;
|
||||
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
|
||||
opacity: 0;
|
||||
-moz-user-select: -moz-none;
|
||||
-ms-user-select: none;
|
||||
-webkit-user-select: none;
|
||||
user-select: none; }
|
||||
.emojionearea .emojionearea-picker.hidden {
|
||||
display: none; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-wrapper {
|
||||
position: relative;
|
||||
height: 276px;
|
||||
width: 316px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-wrapper:after {
|
||||
content: "";
|
||||
display: block;
|
||||
position: absolute;
|
||||
background-repeat: no-repeat;
|
||||
z-index: 91; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-filters {
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
z-index: 95; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-filters {
|
||||
background: #F5F7F9;
|
||||
padding: 0 0 0 7px;
|
||||
height: 40px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-filters .emojionearea-filter {
|
||||
display: block;
|
||||
float: left;
|
||||
height: 40px;
|
||||
width: 32px;
|
||||
filter: inherit;
|
||||
padding: 7px 1px 0;
|
||||
cursor: pointer;
|
||||
-webkit-filter: grayscale(1);
|
||||
filter: grayscale(1); }
|
||||
.emojionearea .emojionearea-picker .emojionearea-filters .emojionearea-filter.active {
|
||||
background: #fff; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-filters .emojionearea-filter.active, .emojionearea .emojionearea-picker .emojionearea-filters .emojionearea-filter:hover {
|
||||
-webkit-filter: grayscale(0);
|
||||
filter: grayscale(0); }
|
||||
.emojionearea .emojionearea-picker .emojionearea-filters .emojionearea-filter > i {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
top: 0; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-filters .emojionearea-filter > img {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin: 0 3px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-search-panel {
|
||||
height: 30px;
|
||||
position: absolute;
|
||||
z-index: 95;
|
||||
top: 40px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
padding: 5px 0 5px 8px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-search-panel .emojionearea-tones {
|
||||
float: right;
|
||||
margin-right: 10px;
|
||||
margin-top: -1px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones-panel .emojionearea-tones {
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
left: 171px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-search {
|
||||
float: left;
|
||||
padding: 0;
|
||||
height: 20px;
|
||||
width: 160px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-search > input {
|
||||
outline: none;
|
||||
width: 160px;
|
||||
min-width: 160px;
|
||||
height: 20px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones {
|
||||
padding: 0;
|
||||
width: 120px;
|
||||
height: 20px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone {
|
||||
display: inline-block;
|
||||
padding: 0;
|
||||
border: 0;
|
||||
vertical-align: middle;
|
||||
outline: none;
|
||||
background: transparent;
|
||||
cursor: pointer;
|
||||
position: relative; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-0, .emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-0:after {
|
||||
background-color: #ffcf3e; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-1, .emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-1:after {
|
||||
background-color: #fae3c5; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-2, .emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-2:after {
|
||||
background-color: #e2cfa5; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-3, .emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-3:after {
|
||||
background-color: #daa478; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-4, .emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-4:after {
|
||||
background-color: #a78058; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-5, .emojionearea .emojionearea-picker .emojionearea-tones > .btn-tone.btn-tone-5:after {
|
||||
background-color: #5e4d43; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-bullet > .btn-tone, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-square > .btn-tone {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
margin: 0;
|
||||
background-color: transparent; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-bullet > .btn-tone:after, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-square > .btn-tone:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
display: block;
|
||||
top: 4px;
|
||||
left: 4px;
|
||||
width: 12px;
|
||||
height: 12px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-bullet > .btn-tone.active:after, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-square > .btn-tone.active:after {
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 20px;
|
||||
height: 20px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-radio > .btn-tone, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-checkbox > .btn-tone {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
margin: 0px 2px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-radio > .btn-tone.active:after, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-checkbox > .btn-tone.active:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
display: block;
|
||||
background-color: transparent;
|
||||
border: 2px solid #fff;
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
top: 2px;
|
||||
left: 2px;
|
||||
box-sizing: initial; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-bullet > .btn-tone, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-bullet > .btn-tone:after, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-radio > .btn-tone, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-radio > .btn-tone:after {
|
||||
-moz-border-radius: 100%;
|
||||
-webkit-border-radius: 100%;
|
||||
border-radius: 100%; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-square > .btn-tone, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-square > .btn-tone:after, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-checkbox > .btn-tone, .emojionearea .emojionearea-picker .emojionearea-tones.emojionearea-tones-checkbox > .btn-tone:after {
|
||||
-moz-border-radius: 1px;
|
||||
-webkit-border-radius: 1px;
|
||||
border-radius: 1px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area {
|
||||
height: 236px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-search-panel + .emojionearea-scroll-area {
|
||||
height: 206px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area {
|
||||
overflow: auto;
|
||||
overflow-x: hidden;
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
padding: 0 0 5px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-emojis-list {
|
||||
z-index: 1; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-title {
|
||||
display: block;
|
||||
font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;
|
||||
font-size: 13px;
|
||||
font-weight: normal;
|
||||
color: #b2b2b2;
|
||||
background: #FFFFFF;
|
||||
line-height: 20px;
|
||||
margin: 0;
|
||||
padding: 7px 0 5px 6px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-title:after, .emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-title:before {
|
||||
content: " ";
|
||||
display: block;
|
||||
clear: both; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-block {
|
||||
padding: 0 0 0 7px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-block > .emojionearea-category {
|
||||
padding: 0 !important; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-block > .emojionearea-category:after, .emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-block > .emojionearea-category:before {
|
||||
content: " ";
|
||||
display: block;
|
||||
clear: both; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-block:after, .emojionearea .emojionearea-picker .emojionearea-scroll-area .emojionearea-category-block:before {
|
||||
content: " ";
|
||||
display: block;
|
||||
clear: both; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area [class*=emojione-] {
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
margin: 0;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
top: 0; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojibtn {
|
||||
-moz-box-sizing: content-box;
|
||||
-webkit-box-sizing: content-box;
|
||||
box-sizing: content-box;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
float: left;
|
||||
display: block;
|
||||
margin: 1px;
|
||||
padding: 3px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojibtn:hover {
|
||||
-moz-border-radius: 4px;
|
||||
-webkit-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
background-color: #e4e4e4;
|
||||
cursor: pointer; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojibtn i, .emojionearea .emojionearea-picker .emojionearea-scroll-area .emojibtn img {
|
||||
float: left;
|
||||
display: block;
|
||||
width: 24px;
|
||||
height: 24px; }
|
||||
.emojionearea .emojionearea-picker .emojionearea-scroll-area .emojibtn img.lazy-emoji {
|
||||
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
|
||||
opacity: 0; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-top .emojionearea-filters {
|
||||
top: 0;
|
||||
-moz-border-radius-topleft: 5px;
|
||||
-webkit-border-top-left-radius: 5px;
|
||||
border-top-left-radius: 5px;
|
||||
-moz-border-radius-topright: 5px;
|
||||
-webkit-border-top-right-radius: 5px;
|
||||
border-top-right-radius: 5px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-top.emojionearea-search-position-top .emojionearea-scroll-area {
|
||||
bottom: 0; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-top.emojionearea-search-position-bottom .emojionearea-scroll-area {
|
||||
top: 40px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-top.emojionearea-search-position-bottom .emojionearea-search-panel {
|
||||
top: initial;
|
||||
bottom: 0; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-bottom .emojionearea-filters {
|
||||
bottom: 0;
|
||||
-moz-border-radius-bottomleft: 5px;
|
||||
-webkit-border-bottom-left-radius: 5px;
|
||||
border-bottom-left-radius: 5px;
|
||||
-moz-border-radius-bottomright: 5px;
|
||||
-webkit-border-bottom-right-radius: 5px;
|
||||
border-bottom-right-radius: 5px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-bottom.emojionearea-search-position-bottom .emojionearea-scroll-area {
|
||||
top: 0; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-bottom.emojionearea-search-position-bottom .emojionearea-search-panel {
|
||||
top: initial;
|
||||
bottom: 40px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-bottom.emojionearea-search-position-top .emojionearea-scroll-area {
|
||||
top: initial;
|
||||
bottom: 40px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-filters-position-bottom.emojionearea-search-position-top .emojionearea-search-panel {
|
||||
top: 0; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-top {
|
||||
margin-top: -286px;
|
||||
right: -14px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-top .emojionearea-wrapper:after {
|
||||
width: 19px;
|
||||
height: 10px;
|
||||
background-position: -2px -49px;
|
||||
bottom: -10px;
|
||||
right: 20px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-top.emojionearea-filters-position-bottom .emojionearea-wrapper:after {
|
||||
background-position: -2px -80px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-left, .emojionearea .emojionearea-picker.emojionearea-picker-position-right {
|
||||
margin-right: -326px;
|
||||
top: -8px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-left .emojionearea-wrapper:after, .emojionearea .emojionearea-picker.emojionearea-picker-position-right .emojionearea-wrapper:after {
|
||||
width: 10px;
|
||||
height: 19px;
|
||||
background-position: 0px -60px;
|
||||
top: 13px;
|
||||
left: -10px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-left.emojionearea-filters-position-bottom .emojionearea-wrapper:after, .emojionearea .emojionearea-picker.emojionearea-picker-position-right.emojionearea-filters-position-bottom .emojionearea-wrapper:after {
|
||||
background-position: right -60px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-bottom {
|
||||
margin-top: 10px;
|
||||
right: -14px;
|
||||
top: 47px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-bottom .emojionearea-wrapper:after {
|
||||
width: 19px;
|
||||
height: 10px;
|
||||
background-position: -2px -100px;
|
||||
top: -10px;
|
||||
right: 20px; }
|
||||
.emojionearea .emojionearea-picker.emojionearea-picker-position-bottom.emojionearea-filters-position-bottom .emojionearea-wrapper:after {
|
||||
background-position: -2px -90px; }
|
||||
.emojionearea .emojionearea-button.active + .emojionearea-picker {
|
||||
filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
|
||||
opacity: 1; }
|
||||
.emojionearea .emojionearea-button.active + .emojionearea-picker-position-top {
|
||||
margin-top: -269px; }
|
||||
.emojionearea .emojionearea-button.active + .emojionearea-picker-position-left,
|
||||
.emojionearea .emojionearea-button.active + .emojionearea-picker-position-right {
|
||||
margin-right: -309px; }
|
||||
.emojionearea .emojionearea-button.active + .emojionearea-picker-position-bottom {
|
||||
margin-top: -7px; }
|
||||
.emojionearea.emojionearea-standalone {
|
||||
display: inline-block;
|
||||
width: auto;
|
||||
box-shadow: none; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-editor {
|
||||
min-height: 33px;
|
||||
position: relative;
|
||||
padding: 6px 42px 6px 6px; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-editor::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
left: 50%;
|
||||
bottom: 4px;
|
||||
border-left: 1px solid #e6e6e6; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-editor.has-placeholder {
|
||||
background-repeat: no-repeat;
|
||||
background-position: 20px 4px; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-editor.has-placeholder .emojioneemoji {
|
||||
opacity: 0.4; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-button {
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: auto;
|
||||
height: auto; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-button > div {
|
||||
right: 6px;
|
||||
top: 5px; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-picker.emojionearea-picker-position-bottom .emojionearea-wrapper:after, .emojionearea.emojionearea-standalone .emojionearea-picker.emojionearea-picker-position-top .emojionearea-wrapper:after {
|
||||
right: 23px; }
|
||||
.emojionearea.emojionearea-standalone .emojionearea-picker.emojionearea-picker-position-left .emojionearea-wrapper:after, .emojionearea.emojionearea-standalone .emojionearea-picker.emojionearea-picker-position-right .emojionearea-wrapper:after {
|
||||
top: 15px; }
|
||||
|
||||
.emojionearea .emojionearea-button > div, .emojionearea .emojionearea-picker .emojionearea-wrapper:after {
|
||||
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAABuCAYAAADMB4ipAAAHfElEQVRo3u1XS1NT2Rb+9uOcQF4YlAJzLymFUHaLrdxKULvEUNpdTnRqD532f+AHMLMc94gqR1Zbt8rBnUh3YXipPGKwRDoWgXvrYiFUlEdIkPPYZ/dAkwox5yQCVt/bzRrBPnt9e+211/etFeDQDu3ArL+/X37OeqmRWoH7+vpItfWawStF1tfXR+zW9xW5ne0p8loOcAKuCdwpRft60C8a+X5zTvebCqcAvmidf1GGHtqhHdpf1qqKzsrKipyensbi4iKWl5cBAMFgEG1tbYhGo2hpadlbmxseHpaDg4MAgI6ODng8HgBAPp/H/Pw8AODatWvo7e2tvUHrui7v3r2L+fl5XL58GVeuXIHH49m1N5/Py0ePHmF0dBQdHR24desWVFXdtYdXAn/48CHm5+dx8+ZNRKPRigEUDpuenpb3799H4YaOnWh5eVmOj48jFoshGo0STdPkwMCAXF5elqV7BgYGpKZpMhqNklgshrGxMbx580Y6gicSCTDGEIvFAADpdBqpVArJZLK4J5lMIpVKIZ1OAwBisRgYY0gkEs6Rp1IphMNh+Hw+AgCGYQAANE0r7in8Xfjm8/lIOBzGq1evnMHX19fR1NRU/D8UCoFzjnA4XFwLh8PgnCMUChXXmpqakM1mUfVBS62xsZHk83lZWi1nz579ZA0AhBDO4A0NDchkMsWSJIRAURRiVy26rktVVUkmk0EgEHAGP3XqFKamppDP56Vpmrhz5w5u374t/X4/OP+w3TRNZLNZ6LoO0zSRz+dlf38/Ll686Jzz8+fPQwiBeDwOt9tNrl+/jkwmU6yaQpVkMhncuHEDbrebxONxCCEQiUScIw8Gg+TBgwdyZGQEyWRSdnV1kVQqJYeGhrC6ugrGGEKhEHp7e3Hy5EmSTCblvXv30NPTg2AwSA6M/vF4HCMjI7b0/yzh8vv9AIBsNrt34aokuQsLC7skt729varkHtqftUFf++FHsrq0QN3eBvp68Tfvf9Mv12oFCYU7G//e9nVuO7dpNbe2W4M//yQr0p8yRvyBo1Zr++lwLcCt7afD/sBRizJGavrB1dDYYh47Htrq+Kb7jBNwxzfdZ44dD201NLaYVUkU7ozQpuAJBkARwnRZpunN5zaa5hJjiXLH05GeiMd7JEM5zzHGNQBGZvk/Iv0yYVWMvK0zKk1Dl6ahW5RQobjqdjy+wEZn9PKF0n2d0csXPL7AhuKq26GECtPQLdPQZVtn1LlB69p7yRVVSEiDEGJwRd12e4+8PR3piRQidnuPvOWKuk0IMSSkwRVV6Np7WVVbSqvGsgSnlKkAFNPQXdrOtuKqcxtcUTUAhmUJnVJmlleJo3CVHmAaOlPUOmYJkxFKibQsSRkXhr4juKIKO2BHVSwcoLrqCVdUYho6K3YYRRWmoUtdey/tgKtK7rUffiQAsLq08MnbNLe2WwBgB/zHzueFyD8nwlIfbvdx8eU0WV1aKD1cVAMs9+F2j9gUPEEKemEJIe3AnXy4XfkBoNKSZHNthWfX31EA69VKttyHVyIOY1wRwmS6tqNsrr31vXo5k/bUu4gT2cp9lhbm0rzCJpeUUrE0vS63+c7/6uXMbDUWl/ssLczNFrVFddUT09AZpUy1LKvO0DVfPrfR9HxqfNbuEe185l9MFX3o6tIC5YpKFLWOfdQQ93Zu49j0+FDCDtjOp1yaOQCYhs4Y40wI05XfWj8yPT40Ua2ey33mEmMTtp2IUEq0nW3FKeJPGPjRp1Iz2QUuLUu66txG9NLVSK3gBZ+C1lcE54oqKOOCK6rm8QU2unu+u1ANuNynvFsBAG1ubbdMQ5eGviMAFDuP0w3sfMpvQEtb24fOQncU1bXl8R7JnOu+ZNv97XxKJwY6+PNPsrm13drObVqUMlMIU5OWpVHOc96Go5lTnV2fzC/VfAozD7HTCa6olBBa1Imlhbmq2lLuQ5xaW6nCPfnln0Yt7bDUhzhps8cfKH5//uTXmvS81OeLdqI/ZoROzSZrHqG/OvOPzxuhK5VgJTvV2bW3EdqJRABwrvvS/kfoSkoZvXT1YEbociHr7vnuYEfogpBFL109HKH/h0fomnXg3Lff79r7/MmvVbWG7gX4QObzc99+Tz7mHKah05KcW6ahQ9feS6cbMCdgt7eBWJagjCuUAC5tZzuouuo0Spm0hElc9R4cbf4bVl8v1p6WUmCuqEwIs34ruxaeeTy4uJVd67As08UVlVmWoG5vA7FLG3WMmHEupVTyW+vh2cn4DADMTsaTuc21LiGEhzHOnQ6gNtMrJSBMCKHkNt999WLi0S7hejEZH81n174WpukiIMw0dKq66p3Bw50RwhUVXFGJKUy28Xal48VkfKrSlWenhsc23q2cEB9SR7iiItwZIbbgHn8AlDFCCMW7laXjqZnHjkNpaubJzNuVpWZCKChjxOMPVH/QlaW0f/G3ZLqWWl6ce/bvlddp7yFD/w8Z+njoX1+GoZMjgzMAMDkyeLAMnRh+uKveJ0YGD4ahEyODFRk6OfrL/hj67GnckaHPng7vjaGzyYmaGDr77KktQ38H8tqx8Wja+WIAAAAASUVORK5CYII=') !important; }
|
||||
|
||||
.emojionearea.emojionearea-standalone .emojionearea-editor.has-placeholder {
|
||||
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAC/v79T5hyIAAAAAXRSTlMAQObYZgAAABNJREFUCNdjYGNgQEb/P4AQqiAASiUEG6Vit44AAAAASUVORK5CYII=') !important; }
|
||||
|
||||
/*# sourceMappingURL=emojionearea.css.map */
|
1743
cookbook/static/emojionearea/emojionearea.js
Normal file
1743
cookbook/static/emojionearea/emojionearea.js
Normal file
File diff suppressed because it is too large
Load Diff
1
cookbook/static/emojionearea/emojionearea.min.css
vendored
Normal file
1
cookbook/static/emojionearea/emojionearea.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
4
cookbook/static/emojionearea/emojionearea.min.js
vendored
Normal file
4
cookbook/static/emojionearea/emojionearea.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -1,6 +1,6 @@
|
||||
import django_tables2 as tables
|
||||
from django_tables2.utils import A # alias for Accessor
|
||||
from django.utils.translation import gettext as _
|
||||
from django_tables2.utils import A # alias for Accessor
|
||||
|
||||
from .models import *
|
||||
|
||||
@ -13,7 +13,8 @@ class RecipeTable(tables.Table):
|
||||
attrs={'td': {'class': 'd-none d-lg-table-cell'}, 'th': {'class': 'd-none d-lg-table-cell'}})
|
||||
all_tags = tables.Column(
|
||||
attrs={'td': {'class': 'd-none d-lg-table-cell'}, 'th': {'class': 'd-none d-lg-table-cell'}})
|
||||
delete = tables.TemplateColumn("<a href='{% url 'delete_recipe' record.id %}' >" + _('Delete') + "</a>") # TODO remove and put into edit page
|
||||
delete = tables.TemplateColumn(
|
||||
"<a href='{% url 'delete_recipe' record.id %}' >" + _('Delete') + "</a>") # TODO remove and put into edit page
|
||||
|
||||
class Meta:
|
||||
model = Recipe
|
||||
@ -28,7 +29,7 @@ class CategoryTable(tables.Table):
|
||||
class Meta:
|
||||
model = Category
|
||||
template_name = 'generic/table_template.html'
|
||||
fields = ('id', 'name')
|
||||
fields = ('id', 'icon', 'name')
|
||||
|
||||
|
||||
class KeywordTable(tables.Table):
|
||||
@ -38,7 +39,7 @@ class KeywordTable(tables.Table):
|
||||
class Meta:
|
||||
model = Keyword
|
||||
template_name = 'generic/table_template.html'
|
||||
fields = ('id', 'name')
|
||||
fields = ('id', 'icon', 'name')
|
||||
|
||||
|
||||
class ImportLogTable(tables.Table):
|
||||
|
@ -23,6 +23,9 @@
|
||||
|
||||
<link rel="stylesheet" href="{% static "fontawesome/fontawesome-all.css" %}">
|
||||
|
||||
<link rel="stylesheet" href="{% static "emojionearea/emojionearea.min.css" %}">
|
||||
<script type="text/javascript" src="{% static "emojionearea/emojionearea.min.js" %}"></script>
|
||||
|
||||
<style>
|
||||
@media (max-width: 1025px) {
|
||||
.container {
|
||||
|
@ -20,6 +20,7 @@
|
||||
//shitty solution that needs to be redone at some point
|
||||
$(document).ready(function () {
|
||||
$('#id_keywords').select2();
|
||||
$('#id_icon').emojioneArea();
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
@ -20,6 +20,8 @@
|
||||
//shitty solution that needs to be redone at some point
|
||||
$(document).ready(function () {
|
||||
$('#id_keywords').select2();
|
||||
$('#id_icon').emojioneArea();
|
||||
});
|
||||
|
||||
</script>
|
||||
{% endblock %}
|
@ -30,7 +30,6 @@ def batch_monitor(request):
|
||||
|
||||
@login_required
|
||||
def batch_import_all(request):
|
||||
if request.method == "POST":
|
||||
imports = RecipeImport.objects.all()
|
||||
for new_recipe in imports:
|
||||
recipe = Recipe(name=new_recipe.name, path=new_recipe.path)
|
||||
|
@ -25,7 +25,7 @@ class MonitorUpdate(LoginRequiredMixin, UpdateView):
|
||||
class CategoryUpdate(LoginRequiredMixin, UpdateView):
|
||||
template_name = "generic\edit_template.html"
|
||||
model = Category
|
||||
fields = ['name', 'description']
|
||||
fields = ['name', 'icon', 'description']
|
||||
|
||||
def get_success_url(self):
|
||||
return reverse('edit_recipe', kwargs={'pk': self.object.pk})
|
||||
@ -39,7 +39,7 @@ class CategoryUpdate(LoginRequiredMixin, UpdateView):
|
||||
class KeywordUpdate(LoginRequiredMixin, UpdateView):
|
||||
template_name = "generic\edit_template.html"
|
||||
model = Keyword
|
||||
fields = ['name', 'description']
|
||||
fields = ['name', 'icon', 'description']
|
||||
|
||||
def get_success_url(self):
|
||||
return reverse('edit_recipe', kwargs={'pk': self.object.pk})
|
||||
|
@ -25,7 +25,7 @@ class RecipeCreate(LoginRequiredMixin, CreateView): # this exists for completen
|
||||
class CategoryCreate(LoginRequiredMixin, CreateView):
|
||||
template_name = "generic\\new_template.html"
|
||||
model = Category
|
||||
fields = ['name', 'description']
|
||||
fields = ['name', 'icon', 'description']
|
||||
success_url = reverse_lazy('list_category')
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
@ -37,7 +37,7 @@ class CategoryCreate(LoginRequiredMixin, CreateView):
|
||||
class KeywordCreate(LoginRequiredMixin, CreateView):
|
||||
template_name = "generic\\new_template.html"
|
||||
model = Keyword
|
||||
fields = ['name', 'description']
|
||||
fields = ['name', 'icon', 'description']
|
||||
success_url = reverse_lazy('list_keyword')
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
|
Loading…
Reference in New Issue
Block a user