diff options
Diffstat (limited to 'src/Wallabag/ImportBundle/Resources')
12 files changed, 450 insertions, 9 deletions
diff --git a/src/Wallabag/ImportBundle/Resources/config/rabbit.yml b/src/Wallabag/ImportBundle/Resources/config/rabbit.yml new file mode 100644 index 00000000..70b8a0d4 --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/config/rabbit.yml | |||
@@ -0,0 +1,51 @@ | |||
1 | # RabbitMQ stuff | ||
2 | services: | ||
3 | wallabag_import.consumer.amqp.pocket: | ||
4 | class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer | ||
5 | arguments: | ||
6 | - "@doctrine.orm.entity_manager" | ||
7 | - "@wallabag_user.user_repository" | ||
8 | - "@wallabag_import.pocket.import" | ||
9 | - "@logger" | ||
10 | wallabag_import.consumer.amqp.readability: | ||
11 | class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer | ||
12 | arguments: | ||
13 | - "@doctrine.orm.entity_manager" | ||
14 | - "@wallabag_user.user_repository" | ||
15 | - "@wallabag_import.readability.import" | ||
16 | - "@logger" | ||
17 | wallabag_import.consumer.amqp.instapaper: | ||
18 | class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer | ||
19 | arguments: | ||
20 | - "@doctrine.orm.entity_manager" | ||
21 | - "@wallabag_user.user_repository" | ||
22 | - "@wallabag_import.instapaper.import" | ||
23 | - "@logger" | ||
24 | wallabag_import.consumer.amqp.wallabag_v1: | ||
25 | class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer | ||
26 | arguments: | ||
27 | - "@doctrine.orm.entity_manager" | ||
28 | - "@wallabag_user.user_repository" | ||
29 | - "@wallabag_import.wallabag_v1.import" | ||
30 | - "@logger" | ||
31 | wallabag_import.consumer.amqp.wallabag_v2: | ||
32 | class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer | ||
33 | arguments: | ||
34 | - "@doctrine.orm.entity_manager" | ||
35 | - "@wallabag_user.user_repository" | ||
36 | - "@wallabag_import.wallabag_v2.import" | ||
37 | - "@logger" | ||
38 | wallabag_import.consumer.amqp.firefox: | ||
39 | class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer | ||
40 | arguments: | ||
41 | - "@doctrine.orm.entity_manager" | ||
42 | - "@wallabag_user.user_repository" | ||
43 | - "@wallabag_import.firefox.import" | ||
44 | - "@logger" | ||
45 | wallabag_import.consumer.amqp.chrome: | ||
46 | class: Wallabag\ImportBundle\Consumer\AMQPEntryConsumer | ||
47 | arguments: | ||
48 | - "@doctrine.orm.entity_manager" | ||
49 | - "@wallabag_user.user_repository" | ||
50 | - "@wallabag_import.chrome.import" | ||
51 | - "@logger" | ||
diff --git a/src/Wallabag/ImportBundle/Resources/config/redis.yml b/src/Wallabag/ImportBundle/Resources/config/redis.yml new file mode 100644 index 00000000..0a81e1b5 --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/config/redis.yml | |||
@@ -0,0 +1,141 @@ | |||
1 | # Redis stuff | ||
2 | services: | ||
3 | # readability | ||
4 | wallabag_import.queue.redis.readability: | ||
5 | class: Simpleue\Queue\RedisQueue | ||
6 | arguments: | ||
7 | - "@wallabag_core.redis.client" | ||
8 | - "wallabag.import.readability" | ||
9 | |||
10 | wallabag_import.producer.redis.readability: | ||
11 | class: Wallabag\ImportBundle\Redis\Producer | ||
12 | arguments: | ||
13 | - "@wallabag_import.queue.redis.readability" | ||
14 | |||
15 | wallabag_import.consumer.redis.readability: | ||
16 | class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer | ||
17 | arguments: | ||
18 | - "@doctrine.orm.entity_manager" | ||
19 | - "@wallabag_user.user_repository" | ||
20 | - "@wallabag_import.readability.import" | ||
21 | - "@logger" | ||
22 | |||
23 | # instapaper | ||
24 | wallabag_import.queue.redis.instapaper: | ||
25 | class: Simpleue\Queue\RedisQueue | ||
26 | arguments: | ||
27 | - "@wallabag_core.redis.client" | ||
28 | - "wallabag.import.instapaper" | ||
29 | |||
30 | wallabag_import.producer.redis.instapaper: | ||
31 | class: Wallabag\ImportBundle\Redis\Producer | ||
32 | arguments: | ||
33 | - "@wallabag_import.queue.redis.instapaper" | ||
34 | |||
35 | wallabag_import.consumer.redis.instapaper: | ||
36 | class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer | ||
37 | arguments: | ||
38 | - "@doctrine.orm.entity_manager" | ||
39 | - "@wallabag_user.user_repository" | ||
40 | - "@wallabag_import.instapaper.import" | ||
41 | - "@logger" | ||
42 | |||
43 | |||
44 | wallabag_import.queue.redis.pocket: | ||
45 | class: Simpleue\Queue\RedisQueue | ||
46 | arguments: | ||
47 | - "@wallabag_core.redis.client" | ||
48 | - "wallabag.import.pocket" | ||
49 | |||
50 | wallabag_import.producer.redis.pocket: | ||
51 | class: Wallabag\ImportBundle\Redis\Producer | ||
52 | arguments: | ||
53 | - "@wallabag_import.queue.redis.pocket" | ||
54 | |||
55 | wallabag_import.consumer.redis.pocket: | ||
56 | class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer | ||
57 | arguments: | ||
58 | - "@doctrine.orm.entity_manager" | ||
59 | - "@wallabag_user.user_repository" | ||
60 | - "@wallabag_import.pocket.import" | ||
61 | - "@logger" | ||
62 | |||
63 | # wallabag v1 | ||
64 | wallabag_import.queue.redis.wallabag_v1: | ||
65 | class: Simpleue\Queue\RedisQueue | ||
66 | arguments: | ||
67 | - "@wallabag_core.redis.client" | ||
68 | - "wallabag.import.wallabag_v1" | ||
69 | |||
70 | wallabag_import.producer.redis.wallabag_v1: | ||
71 | class: Wallabag\ImportBundle\Redis\Producer | ||
72 | arguments: | ||
73 | - "@wallabag_import.queue.redis.wallabag_v1" | ||
74 | |||
75 | wallabag_import.consumer.redis.wallabag_v1: | ||
76 | class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer | ||
77 | arguments: | ||
78 | - "@doctrine.orm.entity_manager" | ||
79 | - "@wallabag_user.user_repository" | ||
80 | - "@wallabag_import.wallabag_v1.import" | ||
81 | - "@logger" | ||
82 | |||
83 | # wallabag v2 | ||
84 | wallabag_import.queue.redis.wallabag_v2: | ||
85 | class: Simpleue\Queue\RedisQueue | ||
86 | arguments: | ||
87 | - "@wallabag_core.redis.client" | ||
88 | - "wallabag.import.wallabag_v2" | ||
89 | |||
90 | wallabag_import.producer.redis.wallabag_v2: | ||
91 | class: Wallabag\ImportBundle\Redis\Producer | ||
92 | arguments: | ||
93 | - "@wallabag_import.queue.redis.wallabag_v2" | ||
94 | |||
95 | wallabag_import.consumer.redis.wallabag_v2: | ||
96 | class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer | ||
97 | arguments: | ||
98 | - "@doctrine.orm.entity_manager" | ||
99 | - "@wallabag_user.user_repository" | ||
100 | - "@wallabag_import.wallabag_v2.import" | ||
101 | - "@logger" | ||
102 | |||
103 | # firefox | ||
104 | wallabag_import.queue.redis.firefox: | ||
105 | class: Simpleue\Queue\RedisQueue | ||
106 | arguments: | ||
107 | - "@wallabag_core.redis.client" | ||
108 | - "wallabag.import.firefox" | ||
109 | |||
110 | wallabag_import.producer.redis.firefox: | ||
111 | class: Wallabag\ImportBundle\Redis\Producer | ||
112 | arguments: | ||
113 | - "@wallabag_import.queue.redis.firefox" | ||
114 | |||
115 | wallabag_import.consumer.redis.firefox: | ||
116 | class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer | ||
117 | arguments: | ||
118 | - "@doctrine.orm.entity_manager" | ||
119 | - "@wallabag_user.user_repository" | ||
120 | - "@wallabag_import.firefox.import" | ||
121 | - "@logger" | ||
122 | |||
123 | # chrome | ||
124 | wallabag_import.queue.redis.chrome: | ||
125 | class: Simpleue\Queue\RedisQueue | ||
126 | arguments: | ||
127 | - "@wallabag_core.redis.client" | ||
128 | - "wallabag.import.chrome" | ||
129 | |||
130 | wallabag_import.producer.redis.chrome: | ||
131 | class: Wallabag\ImportBundle\Redis\Producer | ||
132 | arguments: | ||
133 | - "@wallabag_import.queue.redis.chrome" | ||
134 | |||
135 | wallabag_import.consumer.redis.chrome: | ||
136 | class: Wallabag\ImportBundle\Consumer\RedisEntryConsumer | ||
137 | arguments: | ||
138 | - "@doctrine.orm.entity_manager" | ||
139 | - "@wallabag_user.user_repository" | ||
140 | - "@wallabag_import.chrome.import" | ||
141 | - "@logger" | ||
diff --git a/src/Wallabag/ImportBundle/Resources/config/services.yml b/src/Wallabag/ImportBundle/Resources/config/services.yml index 86b44cb3..89adc71b 100644 --- a/src/Wallabag/ImportBundle/Resources/config/services.yml +++ b/src/Wallabag/ImportBundle/Resources/config/services.yml | |||
@@ -1,3 +1,7 @@ | |||
1 | imports: | ||
2 | - { resource: rabbit.yml } | ||
3 | - { resource: redis.yml } | ||
4 | |||
1 | services: | 5 | services: |
2 | wallabag_import.chain: | 6 | wallabag_import.chain: |
3 | class: Wallabag\ImportBundle\Import\ImportChain | 7 | class: Wallabag\ImportBundle\Import\ImportChain |
@@ -14,7 +18,6 @@ services: | |||
14 | wallabag_import.pocket.import: | 18 | wallabag_import.pocket.import: |
15 | class: Wallabag\ImportBundle\Import\PocketImport | 19 | class: Wallabag\ImportBundle\Import\PocketImport |
16 | arguments: | 20 | arguments: |
17 | - "@security.token_storage" | ||
18 | - "@doctrine.orm.entity_manager" | 21 | - "@doctrine.orm.entity_manager" |
19 | - "@wallabag_core.content_proxy" | 22 | - "@wallabag_core.content_proxy" |
20 | - "@craue_config" | 23 | - "@craue_config" |
@@ -43,3 +46,42 @@ services: | |||
43 | - [ setLogger, [ "@logger" ]] | 46 | - [ setLogger, [ "@logger" ]] |
44 | tags: | 47 | tags: |
45 | - { name: wallabag_import.import, alias: wallabag_v2 } | 48 | - { name: wallabag_import.import, alias: wallabag_v2 } |
49 | |||
50 | wallabag_import.readability.import: | ||
51 | class: Wallabag\ImportBundle\Import\ReadabilityImport | ||
52 | arguments: | ||
53 | - "@doctrine.orm.entity_manager" | ||
54 | - "@wallabag_core.content_proxy" | ||
55 | calls: | ||
56 | - [ setLogger, [ "@logger" ]] | ||
57 | tags: | ||
58 | - { name: wallabag_import.import, alias: readability } | ||
59 | |||
60 | wallabag_import.instapaper.import: | ||
61 | class: Wallabag\ImportBundle\Import\InstapaperImport | ||
62 | arguments: | ||
63 | - "@doctrine.orm.entity_manager" | ||
64 | - "@wallabag_core.content_proxy" | ||
65 | calls: | ||
66 | - [ setLogger, [ "@logger" ]] | ||
67 | tags: | ||
68 | - { name: wallabag_import.import, alias: instapaper } | ||
69 | |||
70 | wallabag_import.firefox.import: | ||
71 | class: Wallabag\ImportBundle\Import\FirefoxImport | ||
72 | arguments: | ||
73 | - "@doctrine.orm.entity_manager" | ||
74 | - "@wallabag_core.content_proxy" | ||
75 | calls: | ||
76 | - [ setLogger, [ "@logger" ]] | ||
77 | tags: | ||
78 | - { name: wallabag_import.import, alias: firefox } | ||
79 | wallabag_import.chrome.import: | ||
80 | class: Wallabag\ImportBundle\Import\ChromeImport | ||
81 | arguments: | ||
82 | - "@doctrine.orm.entity_manager" | ||
83 | - "@wallabag_core.content_proxy" | ||
84 | calls: | ||
85 | - [ setLogger, [ "@logger" ]] | ||
86 | tags: | ||
87 | - { name: wallabag_import.import, alias: chrome } | ||
diff --git a/src/Wallabag/ImportBundle/Resources/views/Chrome/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/Chrome/index.html.twig new file mode 100644 index 00000000..ead828c6 --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/views/Chrome/index.html.twig | |||
@@ -0,0 +1,43 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'import.chrome.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <div class="row"> | ||
7 | <div class="col s12"> | ||
8 | <div class="card-panel settings"> | ||
9 | <div class="row"> | ||
10 | <blockquote>{{ import.description|trans|raw }}</blockquote> | ||
11 | <p>{{ 'import.chrome.how_to'|trans }}</p> | ||
12 | |||
13 | <div class="col s12"> | ||
14 | {{ form_start(form, {'method': 'POST'}) }} | ||
15 | {{ form_errors(form) }} | ||
16 | <div class="row"> | ||
17 | <div class="file-field input-field col s12"> | ||
18 | {{ form_errors(form.file) }} | ||
19 | <div class="btn"> | ||
20 | <span>{{ form.file.vars.label|trans }}</span> | ||
21 | {{ form_widget(form.file) }} | ||
22 | </div> | ||
23 | <div class="file-path-wrapper"> | ||
24 | <input class="file-path validate" type="text"> | ||
25 | </div> | ||
26 | </div> | ||
27 | <div class="input-field col s6 with-checkbox"> | ||
28 | <h6>{{ 'import.form.mark_as_read_title'|trans }}</h6> | ||
29 | {{ form_widget(form.mark_as_read) }} | ||
30 | {{ form_label(form.mark_as_read) }} | ||
31 | </div> | ||
32 | </div> | ||
33 | |||
34 | {{ form_widget(form.save, { 'attr': {'class': 'btn waves-effect waves-light'} }) }} | ||
35 | |||
36 | {{ form_rest(form) }} | ||
37 | </form> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | {% endblock %} | ||
diff --git a/src/Wallabag/ImportBundle/Resources/views/Firefox/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/Firefox/index.html.twig new file mode 100644 index 00000000..f975da3f --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/views/Firefox/index.html.twig | |||
@@ -0,0 +1,43 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'import.firefox.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <div class="row"> | ||
7 | <div class="col s12"> | ||
8 | <div class="card-panel settings"> | ||
9 | <div class="row"> | ||
10 | <blockquote>{{ import.description|trans|raw }}</blockquote> | ||
11 | <p>{{ 'import.firefox.how_to'|trans }}</p> | ||
12 | |||
13 | <div class="col s12"> | ||
14 | {{ form_start(form, {'method': 'POST'}) }} | ||
15 | {{ form_errors(form) }} | ||
16 | <div class="row"> | ||
17 | <div class="file-field input-field col s12"> | ||
18 | {{ form_errors(form.file) }} | ||
19 | <div class="btn"> | ||
20 | <span>{{ form.file.vars.label|trans }}</span> | ||
21 | {{ form_widget(form.file) }} | ||
22 | </div> | ||
23 | <div class="file-path-wrapper"> | ||
24 | <input class="file-path validate" type="text"> | ||
25 | </div> | ||
26 | </div> | ||
27 | <div class="input-field col s6 with-checkbox"> | ||
28 | <h6>{{ 'import.form.mark_as_read_title'|trans }}</h6> | ||
29 | {{ form_widget(form.mark_as_read) }} | ||
30 | {{ form_label(form.mark_as_read) }} | ||
31 | </div> | ||
32 | </div> | ||
33 | |||
34 | {{ form_widget(form.save, { 'attr': {'class': 'btn waves-effect waves-light'} }) }} | ||
35 | |||
36 | {{ form_rest(form) }} | ||
37 | </form> | ||
38 | </div> | ||
39 | </div> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | {% endblock %} | ||
diff --git a/src/Wallabag/ImportBundle/Resources/views/Import/_workerEnabled.html.twig b/src/Wallabag/ImportBundle/Resources/views/Import/_workerEnabled.html.twig new file mode 100644 index 00000000..2390a41f --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/views/Import/_workerEnabled.html.twig | |||
@@ -0,0 +1,8 @@ | |||
1 | {% set redis = craue_setting('import_with_redis') %} | ||
2 | {% set rabbit = craue_setting('import_with_rabbitmq') %} | ||
3 | |||
4 | {% if redis or rabbit %} | ||
5 | <div class="card-panel yellow darken-1 black-text"> | ||
6 | {{ 'import.worker.enabled'|trans }} <strong>{% if rabbit %}RabbitMQ{% elseif redis %}Redis{% endif %}</strong> | ||
7 | </div> | ||
8 | {% endif %} | ||
diff --git a/src/Wallabag/ImportBundle/Resources/views/Import/check_queue.html.twig b/src/Wallabag/ImportBundle/Resources/views/Import/check_queue.html.twig new file mode 100644 index 00000000..a2633698 --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/views/Import/check_queue.html.twig | |||
@@ -0,0 +1,23 @@ | |||
1 | {% if nbRedisMessages is defined and nbRedisMessages > 0 %} | ||
2 | <script> | ||
3 | Materialize.toast('Messages in queue: {{ nbRedisMessages }}', 4000); | ||
4 | </script> | ||
5 | {% endif %} | ||
6 | |||
7 | {% if nbRabbitMessages is defined and nbRabbitMessages > 0 %} | ||
8 | <script> | ||
9 | Materialize.toast('Messages in queue: {{ nbRabbitMessages }}', 4000); | ||
10 | </script> | ||
11 | {% endif %} | ||
12 | |||
13 | {% if redisNotInstalled is defined and redisNotInstalled %} | ||
14 | <div class="card-panel red darken-1 white-text"> | ||
15 | {{ 'flashes.import.error.redis_enabled_not_installed'|trans|raw }} | ||
16 | </div> | ||
17 | {% endif %} | ||
18 | |||
19 | {% if rabbitNotInstalled is defined and rabbitNotInstalled %} | ||
20 | <div class="card-panel red darken-1 white-text"> | ||
21 | {{ 'flashes.import.error.rabbit_enabled_not_installed'|trans|raw }} | ||
22 | </div> | ||
23 | {% endif %} | ||
diff --git a/src/Wallabag/ImportBundle/Resources/views/Import/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/Import/index.html.twig index aebbfa20..6ea5e0f4 100644 --- a/src/Wallabag/ImportBundle/Resources/views/Import/index.html.twig +++ b/src/Wallabag/ImportBundle/Resources/views/Import/index.html.twig | |||
@@ -11,7 +11,7 @@ | |||
11 | {% for import in imports %} | 11 | {% for import in imports %} |
12 | <li> | 12 | <li> |
13 | <h5>{{ import.name }}</h5> | 13 | <h5>{{ import.name }}</h5> |
14 | <blockquote>{{ import.description|trans }}</blockquote> | 14 | <blockquote>{{ import.description|trans|raw }}</blockquote> |
15 | <p><a class="waves-effect waves-light btn" href="{{ path(import.url) }}">{{ 'import.action.import_contents'|trans }}</a></p> | 15 | <p><a class="waves-effect waves-light btn" href="{{ path(import.url) }}">{{ 'import.action.import_contents'|trans }}</a></p> |
16 | </li> | 16 | </li> |
17 | {% endfor %} | 17 | {% endfor %} |
diff --git a/src/Wallabag/ImportBundle/Resources/views/Instapaper/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/Instapaper/index.html.twig new file mode 100644 index 00000000..5789361f --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/views/Instapaper/index.html.twig | |||
@@ -0,0 +1,45 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'import.instapaper.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <div class="row"> | ||
7 | <div class="col s12"> | ||
8 | <div class="card-panel settings"> | ||
9 | {% include 'WallabagImportBundle:Import:_workerEnabled.html.twig' %} | ||
10 | |||
11 | <div class="row"> | ||
12 | <blockquote>{{ import.description|trans }}</blockquote> | ||
13 | <p>{{ 'import.instapaper.how_to'|trans }}</p> | ||
14 | |||
15 | <div class="col s12"> | ||
16 | {{ form_start(form, {'method': 'POST'}) }} | ||
17 | {{ form_errors(form) }} | ||
18 | <div class="row"> | ||
19 | <div class="file-field input-field col s12"> | ||
20 | {{ form_errors(form.file) }} | ||
21 | <div class="btn"> | ||
22 | <span>{{ form.file.vars.label|trans }}</span> | ||
23 | {{ form_widget(form.file) }} | ||
24 | </div> | ||
25 | <div class="file-path-wrapper"> | ||
26 | <input class="file-path validate" type="text"> | ||
27 | </div> | ||
28 | </div> | ||
29 | <div class="input-field col s6 with-checkbox"> | ||
30 | <h6>{{ 'import.form.mark_as_read_title'|trans }}</h6> | ||
31 | {{ form_widget(form.mark_as_read) }} | ||
32 | {{ form_label(form.mark_as_read) }} | ||
33 | </div> | ||
34 | </div> | ||
35 | |||
36 | {{ form_widget(form.save, { 'attr': {'class': 'btn waves-effect waves-light'} }) }} | ||
37 | |||
38 | {{ form_rest(form) }} | ||
39 | </form> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </div> | ||
44 | </div> | ||
45 | {% endblock %} | ||
diff --git a/src/Wallabag/ImportBundle/Resources/views/Pocket/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/Pocket/index.html.twig index 401dbd33..6195fa07 100644 --- a/src/Wallabag/ImportBundle/Resources/views/Pocket/index.html.twig +++ b/src/Wallabag/ImportBundle/Resources/views/Pocket/index.html.twig | |||
@@ -6,15 +6,13 @@ | |||
6 | <div class="row"> | 6 | <div class="row"> |
7 | <div class="col s12"> | 7 | <div class="col s12"> |
8 | <div class="card-panel settings"> | 8 | <div class="card-panel settings"> |
9 | {% include 'WallabagImportBundle:Import:_workerEnabled.html.twig' %} | ||
10 | |||
9 | {% if not has_consumer_key %} | 11 | {% if not has_consumer_key %} |
10 | <div class="card-panel red darken-1"> | 12 | <div class="card-panel red white-text"> |
11 | {{ 'import.pocket.config_missing.description'|trans }} | 13 | {{ 'import.pocket.config_missing.description'|trans }} |
12 | 14 | ||
13 | {% if is_granted('ROLE_SUPER_ADMIN') %} | 15 | {{ 'import.pocket.config_missing.admin_message'|trans({'%keyurls%': '<a href="' ~ path('config') ~ '">', '%keyurle%':'</a>'})|raw }} |
14 | {{ 'import.pocket.config_missing.admin_message'|trans({'%keyurls%': '<a href="' ~ path('craue_config_settings_modify') ~ '#set-import">', '%keyurle%':'</a>'})|raw }} | ||
15 | {% else %} | ||
16 | {{ 'import.pocket.config_missing.user_message'|trans }} | ||
17 | {% endif %} | ||
18 | </div> | 16 | </div> |
19 | {% endif %} | 17 | {% endif %} |
20 | 18 | ||
@@ -29,7 +27,7 @@ | |||
29 | {{ form_label(form.mark_as_read) }} | 27 | {{ form_label(form.mark_as_read) }} |
30 | </div> | 28 | </div> |
31 | </div> | 29 | </div> |
32 | <button class="btn waves-effect waves-light" type="submit" name="action"> | 30 | <button class="btn waves-effect waves-light" type="submit" name="action" {% if not has_consumer_key %}disabled="disabled"{% endif %}> |
33 | {{ 'import.pocket.connect_to_pocket'|trans }} | 31 | {{ 'import.pocket.connect_to_pocket'|trans }} |
34 | </button> | 32 | </button> |
35 | </form> | 33 | </form> |
diff --git a/src/Wallabag/ImportBundle/Resources/views/Readability/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/Readability/index.html.twig new file mode 100644 index 00000000..74653b0f --- /dev/null +++ b/src/Wallabag/ImportBundle/Resources/views/Readability/index.html.twig | |||
@@ -0,0 +1,45 @@ | |||
1 | {% extends "WallabagCoreBundle::layout.html.twig" %} | ||
2 | |||
3 | {% block title %}{{ 'import.readability.page_title'|trans }}{% endblock %} | ||
4 | |||
5 | {% block content %} | ||
6 | <div class="row"> | ||
7 | <div class="col s12"> | ||
8 | <div class="card-panel settings"> | ||
9 | {% include 'WallabagImportBundle:Import:_workerEnabled.html.twig' %} | ||
10 | |||
11 | <div class="row"> | ||
12 | <blockquote>{{ import.description|trans }}</blockquote> | ||
13 | <p>{{ 'import.readability.how_to'|trans }}</p> | ||
14 | |||
15 | <div class="col s12"> | ||
16 | {{ form_start(form, {'method': 'POST'}) }} | ||
17 | {{ form_errors(form) }} | ||
18 | <div class="row"> | ||
19 | <div class="file-field input-field col s12"> | ||
20 | {{ form_errors(form.file) }} | ||
21 | <div class="btn"> | ||
22 | <span>{{ form.file.vars.label|trans }}</span> | ||
23 | {{ form_widget(form.file) }} | ||
24 | </div> | ||
25 | <div class="file-path-wrapper"> | ||
26 | <input class="file-path validate" type="text"> | ||
27 | </div> | ||
28 | </div> | ||
29 | <div class="input-field col s6 with-checkbox"> | ||
30 | <h6>{{ 'import.form.mark_as_read_title'|trans }}</h6> | ||
31 | {{ form_widget(form.mark_as_read) }} | ||
32 | {{ form_label(form.mark_as_read) }} | ||
33 | </div> | ||
34 | </div> | ||
35 | |||
36 | {{ form_widget(form.save, { 'attr': {'class': 'btn waves-effect waves-light'} }) }} | ||
37 | |||
38 | {{ form_rest(form) }} | ||
39 | </form> | ||
40 | </div> | ||
41 | </div> | ||
42 | </div> | ||
43 | </div> | ||
44 | </div> | ||
45 | {% endblock %} | ||
diff --git a/src/Wallabag/ImportBundle/Resources/views/WallabagV1/index.html.twig b/src/Wallabag/ImportBundle/Resources/views/WallabagV1/index.html.twig index 13e24c8c..0b19bc34 100644 --- a/src/Wallabag/ImportBundle/Resources/views/WallabagV1/index.html.twig +++ b/src/Wallabag/ImportBundle/Resources/views/WallabagV1/index.html.twig | |||
@@ -6,6 +6,8 @@ | |||
6 | <div class="row"> | 6 | <div class="row"> |
7 | <div class="col s12"> | 7 | <div class="col s12"> |
8 | <div class="card-panel settings"> | 8 | <div class="card-panel settings"> |
9 | {% include 'WallabagImportBundle:Import:_workerEnabled.html.twig' %} | ||
10 | |||
9 | <div class="row"> | 11 | <div class="row"> |
10 | <blockquote>{{ import.description|trans }}</blockquote> | 12 | <blockquote>{{ import.description|trans }}</blockquote> |
11 | <p>{{ 'import.wallabag_v1.how_to'|trans }}</p> | 13 | <p>{{ 'import.wallabag_v1.how_to'|trans }}</p> |