liqd / a4-opin Goto Github PK
View Code? Open in Web Editor NEWOPIN.me is a youth e-participation platform developed by Liquid Democracy within the H2020 project EUth.
License: Other
OPIN.me is a youth e-participation platform developed by Liquid Democracy within the H2020 project EUth.
License: Other
The text area for adding replies to comments is not high enough to fit two lines of text. It should contain three lines of text minimum.
Also, in general I think that having full-width text-inputs doesn’t make sense. We should make the max-width a little smaller. The lines of text become too wide otherwise.
I tested to insert a link. The menu looks elaborated and i am happy with what kind of links i can insert. Yet, i can not close the window and return to the field where i entered my proposal. Even though here it shows the "ok" button in green, by clicking on it, nothing happens and i remain on the same screen.
Features required from non-official buildpack:
python manage.py bower install
run before collect staticpython manage.py compress
run before collect staticFirst one can be mitigated by using npm for managing frontend dependencies.
see here: https://opin-dev.herokuapp.com/de/projects/alias-architecto/ (just happens if text is too long)
react_comments.js contains hardcoded urls (e.g. http://localhost:8000/api/comments/) and makes the server crash.
The date underneath a comment is currently rendered as YYYY-MM-DD, but it should be i.e. „11 Jan 2016“ according to Nico’s design.
I would suggest to use:
name = 'euth.'
label = 'euth_'
can then be used to disable registration links after a certain time
We different models which all save a user as creator, but the fields are named differently (user, creator, ...)
I would suggest to always call them creator. Maybe we could also implement a abstract model with a creator field and make the other models inherit from this abstract model.
Could we change the placeholder text for comment reply textareas to say „Your reply here“ instead of „Your comment here“? That would make it more obvious that I am entering a reply here.
The pytest take abit longish to setup the database. I tired to fix this by not installing the wagtails apps if pytest are running #65. This failed for several reasons:
base
template requires base_tags
from our home
, which requires wagtailbase
template requires the wagtailuserbar
Solutions:
base_tags
to some other non wagtail dependent appbase
templateHere my suggestions
.navbar-default {
/* DELETE background-color: #f8f8f8; */
/* DELETE border-color: #e7e7e7; */
}
.skinny-form {
margin: 55px auto 40px;
margin: 3.4375rem auto 2.5rem;
box-shadow: 0 0 150px rgba(0, 0, 0, 0.2);
float: none;
padding: 0;
text-align: center;
}
.nav-tabs {
border-bottom: 1px solid #ddd;
font-size: 14px;
}
.skinny-form .btn-cta {
border-radius: 40px;
border-radius: 2.5rem;
padding: 0 20px;
padding: 0.1rem 1.7rem;
top: 65px;
top: 4.0625rem;
font-weight: bold;
line-height: 50px;
margin: -30px auto 0;
position: relative;
text-transform: uppercase;
}
.nav > li > a {
position: relative;
display: block;
padding: 20px 15px;
}
.skinny-form .form-control {
border-bottom: 1px solid #8C8C8C;
border-radius: 0;
padding-left: 0;
padding-right: 0;
}
#main-menu #language-selector a, #footer #language-selector a {
color: #337ab7;
}
PLEASE NOTE
Make sure that a user is atmost in one organisation.
This is required to make the admin interface work some how.
The link proposed in Nico’s design (see screenshot below) to show a comment’s replies is missing. Currently to see the answers you have to click on the “Answer“ button, which doesn’t indicate whether there are any comments and now has a kind of double function.
Could we have
a) a separate button and
b) could that button show the number of replies as indiciated by Nico’s design ?
should this be implemented in BE also?
The space for the actual comment text on mobile is too narrow. I would suggest we should have 70% less space around the actual content from 640px screen widths downwards.
Currently our UI allows not to see who has votes for an idea or comment. The rates API exposes this information. In my opinion should either hide it in UI and API or make it visible in both:
The answer button for comment replies seems a little lost in white space and it is hard to see which comment the button belongs to. I think we should reconsider the position of the reply button and maybe put it to the left. Or we leave it out and merge it with the “view 10 replies“ button in Nico’s design. That could also be an option, since we show the reply text area by default anyway.
Not very friendly :P
Traceback (most recent call last):
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/backends/sqlite3/base.py", line 318, in execute
return Database.Cursor.execute(self, query, params)
sqlite3.IntegrityError: UNIQUE constraint failed: user_management_user.username
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/core/management/__init__.py", line 354, in execute_from_command_line
utility.execute()
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/core/management/__init__.py", line 346, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/core/management/base.py", line 394, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/contrib/auth/management/commands/createsuperuser.py", line 50, in execute
return super(Command, self).execute(*args, **options)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/core/management/base.py", line 445, in execute
output = self.handle(*args, **options)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/contrib/auth/management/commands/createsuperuser.py", line 149, in handle
self.UserModel._default_manager.db_manager(database).create_superuser(**user_data)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/contrib/auth/models.py", line 191, in create_superuser
**extra_fields)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/contrib/auth/models.py", line 182, in _create_user
user.save(using=self._db)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/models/base.py", line 734, in save
force_update=force_update, update_fields=update_fields)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/models/base.py", line 762, in save_base
updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/models/base.py", line 846, in _save_table
result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/models/base.py", line 885, in _do_insert
using=using, raw=raw)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/models/manager.py", line 127, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/models/query.py", line 920, in _insert
return query.get_compiler(using=using).execute_sql(return_id)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/models/sql/compiler.py", line 974, in execute_sql
cursor.execute(sql, params)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/backends/utils.py", line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/utils.py", line 98, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/utils/six.py", line 685, in reraise
raise value.with_traceback(tb)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/home/caroline/www/euth_wagtail/lib/python3.4/site-packages/django/db/backends/sqlite3/base.py", line 318, in execute
return Database.Cursor.execute(self, query, params)
django.db.utils.IntegrityError: UNIQUE constraint failed: user_management_user.username
add some limit to stop serializer from serializing
The rate widget in the comment listing and idea listing look alike, but they be have differently. In comments listing the user can click to vote, while in the idea listing she can not.
There exists a third widget in the idea detail view, it can be used to vote.
I propose to replace the widget in the commenting listing with one that looks more like detail listing one.
Additional thoughts:
hover
and active
to have some guidance for the user hereThis is not possible via the current frontend but API allows it. There are two possibilities, disable it only via API but not in general or disable it in general
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.