diff --git a/frontend/frontend/migrations/0006_feed_owner.py b/frontend/frontend/migrations/0006_feed_owner.py
deleted file mode 100644
index 4138cbb..0000000
--- a/frontend/frontend/migrations/0006_feed_owner.py
+++ /dev/null
@@ -1,23 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.10 on 2018-02-10 22:54
-from __future__ import unicode_literals
-
-from django.conf import settings
-from django.db import migrations, models
-import django.db.models.deletion
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- migrations.swappable_dependency(settings.AUTH_USER_MODEL),
- ('frontend', '0005_auto_20180131_1949'),
- ]
-
- operations = [
- migrations.AddField(
- model_name='feed',
- name='owner',
- field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL),
- ),
- ]
diff --git a/frontend/frontend/migrations/0007_auto_20180211_0027.py b/frontend/frontend/migrations/0007_auto_20180211_0027.py
deleted file mode 100644
index bd1846c..0000000
--- a/frontend/frontend/migrations/0007_auto_20180211_0027.py
+++ /dev/null
@@ -1,29 +0,0 @@
-# -*- coding: utf-8 -*-
-# Generated by Django 1.11.10 on 2018-02-11 00:27
-from __future__ import unicode_literals
-
-from django.db import migrations, models
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('frontend', '0006_feed_owner'),
- ]
-
- operations = [
- migrations.RunSQL("ALTER TABLE `frontend_feed` ADD COLUMN `js` ENUM('Y','N') DEFAULT 'N' NOT NULL;"
- "ALTER TABLE `frontend_feed` ALTER COLUMN `js` DROP DEFAULT;",
- state_operations=[
- migrations.AddField(
- model_name='feed',
- name='js',
- field=models.CharField(choices=[(b'N', b'No javascript'), (b'Y', b'With javascript')], default=b'N', max_length=1),
- )
- ]),
- migrations.AddField(
- model_name='feed',
- name='name',
- field=models.CharField(max_length=255, null=True),
- ),
- ]
diff --git a/frontend/frontend/migrations/0008_auto_20180215_1445.py b/frontend/frontend/migrations/0008_auto_20180215_1445.py
index 7259617..e3b5123 100644
--- a/frontend/frontend/migrations/0008_auto_20180215_1445.py
+++ b/frontend/frontend/migrations/0008_auto_20180215_1445.py
@@ -8,7 +8,7 @@ from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
- ('frontend', '0007_auto_20180211_0027'),
+ ('frontend', '0005_auto_20180131_1949'),
]
operations = [
diff --git a/frontend/frontend/setup_tool_ext.py b/frontend/frontend/setup_tool_ext.py
index af0710c..f082ef8 100644
--- a/frontend/frontend/setup_tool_ext.py
+++ b/frontend/frontend/setup_tool_ext.py
@@ -31,52 +31,52 @@ def build_xpath_results(selectors, file_name):
if post_elems:
for elem in post_elems:
selected_required = True
- selected_link = True
extracted_post = {}
- for name, xpath in field_xpathes.iteritems():
- if not (name in field_results):
- field_results[name] = {}
+ for field_id, xpath_required in field_xpathes.iteritems():
+ xpath, required = xpath_required
+ if not (field_id in field_results):
+ field_results[field_id] = {}
xpath = xpath.strip()
try:
extracts = elem.xpath(xpath).extract()
- if name == 'link':
- if not extracts:
- selected_link = False
- else:
- extracted_post[name] = u''.join(extracts)
+ if not required:
+ if extracts:
+ extracted_post[field_id] = u''.join(extracts)
else:
if not extracts:
selected_required = False
else:
- extracted_post[name] = u''.join(extracts)
+ extracted_post[field_id] = u''.join(extracts)
except ValueError as ex:
success = False
- field_results[name]['error'] = ex.message
+ field_results[field_id]['error'] = ex.message
if selected_required:
- for name, xpath in field_xpathes.iteritems():
- if name == 'link':
- if selected_link:
- if 'count' in field_results[name]:
- field_results[name]['count'] += 1
+ for field_id, xpath_required in field_xpathes.iteritems():
+ xpath, required = xpath_required
+ if not required:
+ if field_id in extracted_post:
+ if 'count' in field_results[field_id]:
+ field_results[field_id]['count'] += 1
else:
- field_results[name]['count'] = 1
+ field_results[field_id]['count'] = 1
else:
- if 'count' in field_results[name]:
- field_results[name]['count'] += 1
+ if 'count' in field_results[field_id]:
+ field_results[field_id]['count'] += 1
else:
- field_results[name]['count'] = 1
+ field_results[field_id]['count'] = 1
extracted_posts.append(extracted_post)
else:
- for name, xpath in field_xpathes.iteritems():
+ for field_id, xpath_required in field_xpathes.iteritems():
+ xpath, required = xpath_required
xpath = xpath.strip()
try:
doc.xpath(xpath).extract()
except ValueError as ex:
- if not (name in field_results):
- field_results[name] = {}
- field_results[name]['error'] = ex.message
+ if not (field_id in field_results):
+ field_results[field_id] = {}
+ field_results[field_id]['error'] = ex.message
success = False
diff --git a/frontend/frontend/templates/frontend/setup.html b/frontend/frontend/templates/frontend/setup.html
index 6fb17fc..4c83b9e 100644
--- a/frontend/frontend/templates/frontend/setup.html
+++ b/frontend/frontend/templates/frontend/setup.html
@@ -80,9 +80,9 @@
-