Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
edx-platform
Commits
7df00578
Commit
7df00578
authored
Oct 14, 2014
by
Stephen Sanchez
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #5536 from edx/sanchez/remove-new-header-footer-flags
Removing the feature flags for new header and footer.
parents
257e8cf8
c15d97ea
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
61 additions
and
108 deletions
+61
-108
common/djangoapps/edxmako/shortcuts.py
+0
-16
common/djangoapps/edxmako/tests.py
+0
-12
lms/envs/common.py
+0
-12
lms/templates/footer-legacy.html
+0
-0
lms/templates/main.html
+4
-7
lms/templates/main_django.html
+3
-7
lms/templates/navigation-edx.html
+28
-26
lms/templates/navigation.html
+26
-28
No files found.
common/djangoapps/edxmako/shortcuts.py
View file @
7df00578
...
@@ -76,22 +76,6 @@ def marketing_link_context_processor(request):
...
@@ -76,22 +76,6 @@ def marketing_link_context_processor(request):
]
]
)
)
def
header_footer_context_processor
(
request
):
"""
A django context processor to pass feature flags through to all Django
Templates that are related to the display of the header and footer in
the edX platform.
"""
# TODO: ECOM-136 Remove this processor with the corresponding header and footer feature flags.
return
dict
(
[
(
"ENABLE_NEW_EDX_HEADER"
,
settings
.
FEATURES
.
get
(
"ENABLE_NEW_EDX_HEADER"
,
False
)),
(
"ENABLE_NEW_EDX_FOOTER"
,
settings
.
FEATURES
.
get
(
"ENABLE_NEW_EDX_FOOTER"
,
False
))
]
)
def
open_source_footer_context_processor
(
request
):
def
open_source_footer_context_processor
(
request
):
"""
"""
Checks the site name to determine whether to use the edX.org footer or the Open Source Footer.
Checks the site name to determine whether to use the edX.org footer or the Open Source Footer.
...
...
common/djangoapps/edxmako/tests.py
View file @
7df00578
...
@@ -14,7 +14,6 @@ from edxmako import add_lookup, LOOKUP
...
@@ -14,7 +14,6 @@ from edxmako import add_lookup, LOOKUP
from
edxmako.shortcuts
import
(
from
edxmako.shortcuts
import
(
marketing_link
,
marketing_link
,
render_to_string
,
render_to_string
,
header_footer_context_processor
,
open_source_footer_context_processor
open_source_footer_context_processor
)
)
from
student.tests.factories
import
UserFactory
from
student.tests.factories
import
UserFactory
...
@@ -40,17 +39,6 @@ class ShortcutsTests(UrlResetMixin, TestCase):
...
@@ -40,17 +39,6 @@ class ShortcutsTests(UrlResetMixin, TestCase):
link
=
marketing_link
(
'ABOUT'
)
link
=
marketing_link
(
'ABOUT'
)
self
.
assertEquals
(
link
,
expected_link
)
self
.
assertEquals
(
link
,
expected_link
)
@ddt.data
((
True
,
True
),
(
False
,
False
),
(
False
,
True
),
(
True
,
False
))
@ddt.unpack
def
test_header_and_footer
(
self
,
header_setting
,
footer_setting
):
with
patch
.
dict
(
'django.conf.settings.FEATURES'
,
{
'ENABLE_NEW_EDX_HEADER'
:
header_setting
,
'ENABLE_NEW_EDX_FOOTER'
:
footer_setting
,
}):
result
=
header_footer_context_processor
({})
self
.
assertEquals
(
footer_setting
,
result
.
get
(
'ENABLE_NEW_EDX_FOOTER'
))
self
.
assertEquals
(
header_setting
,
result
.
get
(
'ENABLE_NEW_EDX_HEADER'
))
@ddt.data
((
True
,
None
),
(
False
,
None
))
@ddt.data
((
True
,
None
),
(
False
,
None
))
@ddt.unpack
@ddt.unpack
def
test_edx_footer
(
self
,
expected_result
,
_
):
def
test_edx_footer
(
self
,
expected_result
,
_
):
...
...
lms/envs/common.py
View file @
7df00578
...
@@ -273,15 +273,6 @@ FEATURES = {
...
@@ -273,15 +273,6 @@ FEATURES = {
# Default to false here b/c dev environments won't have the api, will override in aws.py
# Default to false here b/c dev environments won't have the api, will override in aws.py
'ENABLE_ANALYTICS_ACTIVE_COUNT'
:
False
,
'ENABLE_ANALYTICS_ACTIVE_COUNT'
:
False
,
# TODO: ECOM-136 remove this feature flag when new styles are available on main site.for
# Enable the new edX footer to be rendered. Defaults to false.
'ENABLE_NEW_EDX_FOOTER'
:
False
,
# TODO: ECOM-136
# Enables the new navigation template and styles. This should be enabled
# when the styles appropriately match the edX.org website.
'ENABLE_NEW_EDX_HEADER'
:
False
,
# When a logged in user goes to the homepage ('/') should the user be
# When a logged in user goes to the homepage ('/') should the user be
# redirected to the dashboard - this is default Open edX behavior. Set to
# redirected to the dashboard - this is default Open edX behavior. Set to
# False to not redirect the user
# False to not redirect the user
...
@@ -410,9 +401,6 @@ TEMPLATE_CONTEXT_PROCESSORS = (
...
@@ -410,9 +401,6 @@ TEMPLATE_CONTEXT_PROCESSORS = (
# Allows the open edX footer to be leveraged in Django Templates.
# Allows the open edX footer to be leveraged in Django Templates.
'edxmako.shortcuts.open_source_footer_context_processor'
,
'edxmako.shortcuts.open_source_footer_context_processor'
,
# TODO: Used for header and footer feature flags. Remove as part of ECOM-136
'edxmako.shortcuts.header_footer_context_processor'
,
# Shoppingcart processor (detects if request.user has a cart)
# Shoppingcart processor (detects if request.user has a cart)
'shoppingcart.context_processor.user_has_cart_context_processor'
,
'shoppingcart.context_processor.user_has_cart_context_processor'
,
...
...
lms/templates/footer-
edx
.html
→
lms/templates/footer-
legacy
.html
View file @
7df00578
File moved
lms/templates/main.html
View file @
7df00578
...
@@ -79,19 +79,16 @@
...
@@ -79,19 +79,16 @@
else:
else:
header_extra_file =
None
header_extra_file =
None
if
settings
.
FEATURES
.
get
("
ENABLE_NEW_EDX_HEADER
",
False
)
:
if
settings
.
FEATURES
['
IS_EDX_DOMAIN
']
and
not
is_microsite
(
)
:
header_file =
microsite.get_template_path('navigation.html')
header_file =
microsite.get_template_path('navigation
-edx
.html')
else:
else:
header_file =
microsite.get_template_path('original_navigation.html')
header_file =
microsite.get_template_path('navigation.html')
google_analytics_file =
microsite.get_template_path('google_analytics.html')
google_analytics_file =
microsite.get_template_path('google_analytics.html')
if
settings
.
FEATURES
['
IS_EDX_DOMAIN
']
and
not
is_microsite
()
:
if
settings
.
FEATURES
['
IS_EDX_DOMAIN
']
and
not
is_microsite
()
:
if
settings
.
FEATURES
.
get
('
ENABLE_NEW_EDX_FOOTER
',
False
)
:
footer_file =
microsite.get_template_path('footer-edx-new.html')
footer_file =
microsite.get_template_path('footer-edx-new.html')
else:
footer_file =
microsite.get_template_path('footer-edx.html')
else:
else:
footer_file =
microsite.get_template_path('footer.html')
footer_file =
microsite.get_template_path('footer.html')
...
...
lms/templates/main_django.html
View file @
7df00578
...
@@ -32,10 +32,10 @@
...
@@ -32,10 +32,10 @@
<body
class=
"{% block bodyclass %}{% endblock %} lang_{{LANGUAGE_CODE}}"
>
<body
class=
"{% block bodyclass %}{% endblock %} lang_{{LANGUAGE_CODE}}"
>
<a
class=
"nav-skip"
href=
"{% block nav_skip %}#content{% endblock %}"
>
{% trans "Skip to this view's content" %}
</a>
<a
class=
"nav-skip"
href=
"{% block nav_skip %}#content{% endblock %}"
>
{% trans "Skip to this view's content" %}
</a>
{% with course=request.course %}
{% with course=request.course %}
{% if
ENABLE_NEW_EDX_HEADER
%}
{% if
IS_EDX_DOMAIN
%}
{% include "navigation.html" %}
{% include "navigation
-edx
.html" %}
{% else %}
{% else %}
{% include "
original_
navigation.html" %}
{% include "navigation.html" %}
{% endif %}
{% endif %}
{% endwith %}
{% endwith %}
<div
class=
"content-wrapper"
id=
"content"
>
<div
class=
"content-wrapper"
id=
"content"
>
...
@@ -45,12 +45,8 @@
...
@@ -45,12 +45,8 @@
{% if IS_REQUEST_IN_MICROSITE %}
{% if IS_REQUEST_IN_MICROSITE %}
{# For now we don't support overriden Django templates in microsites. Leave footer blank for now which is better than saying Edx.#}
{# For now we don't support overriden Django templates in microsites. Leave footer blank for now which is better than saying Edx.#}
{% elif IS_EDX_DOMAIN %}
{% elif IS_EDX_DOMAIN %}
{% if ENABLE_NEW_EDX_FOOTER %}
{% include "footer-edx-new.html" %}
{% include "footer-edx-new.html" %}
{% else %}
{% else %}
{% include "footer-edx.html" %}
{% endif %}
{% else %}
{% include "footer.html" %}
{% include "footer.html" %}
{% endif %}
{% endif %}
...
...
lms/templates/
original_navigation
.html
→
lms/templates/
navigation-edx
.html
View file @
7df00578
...
@@ -36,30 +36,31 @@ site_status_msg = get_site_status_msg(course_id)
...
@@ -36,30 +36,31 @@ site_status_msg = get_site_status_msg(course_id)
% endif
% endif
</
%
block>
</
%
block>
<header
class=
"global ${"
slim
"
if
course
else
""}"
aria-label=
"${_('Global Navigation')}
"
>
<header
class=
"${"
global
slim
"
if
course
and
not
disable_courseware_header
else
"
global-new
"}"
aria-label=
"Main"
role=
"banner
"
>
<nav
>
<nav
aria-label=
"Main"
>
<h1
class=
"logo"
>
<h1
class=
"logo"
itemscope=
""
itemtype=
"http://schema.org/Organization"
>
<a
href=
"${marketing_link('ROOT')}"
>
<a
href=
"${marketing_link('ROOT')}"
title=
"Home page"
itemprop=
"url"
>
<
%
block
name=
"navigation_logo"
>
<
%
block
name=
"navigation_logo"
>
<img
src=
"${static.url(branding.get_logo_url())}"
alt=
"${platform_name()}"
/>
<img
src=
"${static.url(branding.get_logo_url())}"
alt=
"${platform_name()}"
title=
"${platform_name()}"
itemprop=
"url"
/>
</
%
block>
</
%
block>
</a>
</a>
</h1>
</h1>
% if course:
% if course
and not disable_courseware_header
:
<h2><span
class=
"provider"
>
${course.display_org_with_default | h}:
</span>
${course.display_number_with_default | h} ${course.display_name_with_default}
</h2>
<h2><span
class=
"provider"
>
${course.display_org_with_default | h}:
</span>
${course.display_number_with_default | h} ${course.display_name_with_default}
</h2>
% endif
% endif
% if user.is_authenticated():
% if user.is_authenticated():
<
ol
class=
"left nav-global authenticated"
>
<
div
class=
"left nav-global authenticated"
>
<
%
block
name=
"navigation_global_links_authenticated"
>
<
%
block
name=
"navigation_global_links_authenticated"
>
% if settings.FEATURES.get('COURSES_ARE_BROWSABLE'):
% if settings.FEATURES.get('COURSES_ARE_BROWSABLE'):
<
li
class=
"nav-global-01"
>
<
div
class=
"nav-global-01"
>
<a
href=
"${marketing_link('COURSES')}"
>
${_('Find Courses')}
</a>
<a
href=
"${marketing_link('COURSES')}"
>
${_('Find Courses')}
</a>
</
li
>
</
div
>
% endif
% endif
</
%
block>
</
%
block>
</ol>
</div>
<ol
class=
"user"
>
<ol
class=
"user"
>
<li
class=
"primary"
>
<li
class=
"primary"
>
<a
href=
"${reverse('dashboard')}"
class=
"user-link"
>
<a
href=
"${reverse('dashboard')}"
class=
"user-link"
>
...
@@ -79,6 +80,7 @@ site_status_msg = get_site_status_msg(course_id)
...
@@ -79,6 +80,7 @@ site_status_msg = get_site_status_msg(course_id)
</ul>
</ul>
</li>
</li>
</ol>
</ol>
% if display_shopping_cart: # see shoppingcart.context_processor.user_has_cart_context_processor
% if display_shopping_cart: # see shoppingcart.context_processor.user_has_cart_context_processor
<ol
class=
"user"
>
<ol
class=
"user"
>
<li
class=
"primary"
>
<li
class=
"primary"
>
...
@@ -96,37 +98,37 @@ site_status_msg = get_site_status_msg(course_id)
...
@@ -96,37 +98,37 @@ site_status_msg = get_site_status_msg(course_id)
<a
href=
"${marketing_link('HOW_IT_WORKS')}"
>
${_("How it Works")}
</a>
<a
href=
"${marketing_link('HOW_IT_WORKS')}"
>
${_("How it Works")}
</a>
</li>
</li>
<li
class=
"nav-global-02"
>
<li
class=
"nav-global-02"
>
<a
href=
"${marketing_link('COURSES')}"
>
${_("Courses")}
</a>
<a
href=
"${marketing_link('COURSES')}"
>
${_("
Find
Courses")}
</a>
</li>
</li>
<li
class=
"nav-global-03"
>
<li
class=
"nav-global-03"
>
<a
href=
"${marketing_link('SCHOOLS')}"
>
${_("Schools")}
</a>
<a
href=
"${marketing_link('SCHOOLS')}"
>
${_("Schools
&
Partners
")}
</a>
</li>
</li>
% endif
% endif
</
%
block>
</
%
block>
</ol>
<div
class=
"right nav-courseware"
>
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
<li
class=
"nav-global-04
"
>
<div
class=
"nav-courseware-01
"
>
<a
class=
"cta cta-register"
href=
"${reverse('course-specific-register', args=[course.id.to_deprecated_string()])}"
>
${_("Register Now
")}
</a>
<a
class=
"cta cta-register"
href=
"${reverse('course-specific-register', args=[course.id.to_deprecated_string()])}"
>
${_("Register
")}
</a>
</li
>
</div
>
% else:
% else:
<li
class=
"nav-global-04
"
>
<div
class=
"nav-courseware-01
"
>
<a
class=
"cta cta-register"
href=
"/register"
>
${_("Register Now
")}
</a>
<a
class=
"cta cta-register"
href=
"/register"
>
${_("Register
")}
</a>
</li
>
</div
>
% endif
% endif
% endif
% endif
</ol>
<div
class=
"nav-courseware-02"
>
<ol
class=
"right nav-courseware"
>
<li
class=
"nav-courseware-01"
>
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
<a
class=
"cta cta-logi
n"
href=
"${reverse('course-specific-login', args=[course.id.to_deprecated_string()])}${login_query()}"
>
${_("Log in")}
</a>
<a
class=
"cta cta-login nav-courseware-butto
n"
href=
"${reverse('course-specific-login', args=[course.id.to_deprecated_string()])}${login_query()}"
>
${_("Log in")}
</a>
% else:
% else:
<a
class=
"cta cta-logi
n"
href=
"/login${login_query()}"
>
${_("Log in")}
</a>
<a
class=
"cta cta-login nav-courseware-butto
n"
href=
"/login${login_query()}"
>
${_("Log in")}
</a>
% endif
% endif
% endif
% endif
</li
>
</div
>
</
ol
>
</
div
>
% endif
% endif
</nav>
</nav>
</header>
</header>
...
...
lms/templates/navigation.html
View file @
7df00578
...
@@ -36,31 +36,30 @@ site_status_msg = get_site_status_msg(course_id)
...
@@ -36,31 +36,30 @@ site_status_msg = get_site_status_msg(course_id)
% endif
% endif
</
%
block>
</
%
block>
<header
class=
"${"
global
slim
"
if
course
and
not
disable_courseware_header
else
"
global-new
"}"
aria-label=
"Main"
role=
"banner
"
>
<header
class=
"global ${"
slim
"
if
course
else
""}"
aria-label=
"${_('Global Navigation')}
"
>
<nav
aria-label=
"Main"
>
<nav
>
<h1
class=
"logo"
itemscope=
""
itemtype=
"http://schema.org/Organization"
>
<h1
class=
"logo"
>
<a
href=
"${marketing_link('ROOT')}"
title=
"Home page"
itemprop=
"url"
>
<a
href=
"${marketing_link('ROOT')}"
>
<
%
block
name=
"navigation_logo"
>
<
%
block
name=
"navigation_logo"
>
<img
src=
"${static.url(branding.get_logo_url())}"
alt=
"${platform_name()}"
title=
"${platform_name()}"
itemprop=
"url"
/>
<img
src=
"${static.url(branding.get_logo_url())}"
alt=
"${platform_name()}"
/>
</
%
block>
</
%
block>
</a>
</a>
</h1>
</h1>
% if course
and not disable_courseware_header
:
% if course:
<h2><span
class=
"provider"
>
${course.display_org_with_default | h}:
</span>
${course.display_number_with_default | h} ${course.display_name_with_default}
</h2>
<h2><span
class=
"provider"
>
${course.display_org_with_default | h}:
</span>
${course.display_number_with_default | h} ${course.display_name_with_default}
</h2>
% endif
% endif
% if user.is_authenticated():
% if user.is_authenticated():
<
div
class=
"left nav-global authenticated"
>
<
ol
class=
"left nav-global authenticated"
>
<
%
block
name=
"navigation_global_links_authenticated"
>
<
%
block
name=
"navigation_global_links_authenticated"
>
% if settings.FEATURES.get('COURSES_ARE_BROWSABLE'):
% if settings.FEATURES.get('COURSES_ARE_BROWSABLE'):
<
div
class=
"nav-global-01"
>
<
li
class=
"nav-global-01"
>
<a
href=
"${marketing_link('COURSES')}"
>
${_('Find Courses')}
</a>
<a
href=
"${marketing_link('COURSES')}"
>
${_('Find Courses')}
</a>
</
div
>
</
li
>
% endif
% endif
</
%
block>
</
%
block>
</div>
</ol>
<ol
class=
"user"
>
<ol
class=
"user"
>
<li
class=
"primary"
>
<li
class=
"primary"
>
<a
href=
"${reverse('dashboard')}"
class=
"user-link"
>
<a
href=
"${reverse('dashboard')}"
class=
"user-link"
>
...
@@ -80,7 +79,6 @@ site_status_msg = get_site_status_msg(course_id)
...
@@ -80,7 +79,6 @@ site_status_msg = get_site_status_msg(course_id)
</ul>
</ul>
</li>
</li>
</ol>
</ol>
% if display_shopping_cart: # see shoppingcart.context_processor.user_has_cart_context_processor
% if display_shopping_cart: # see shoppingcart.context_processor.user_has_cart_context_processor
<ol
class=
"user"
>
<ol
class=
"user"
>
<li
class=
"primary"
>
<li
class=
"primary"
>
...
@@ -98,37 +96,37 @@ site_status_msg = get_site_status_msg(course_id)
...
@@ -98,37 +96,37 @@ site_status_msg = get_site_status_msg(course_id)
<a
href=
"${marketing_link('HOW_IT_WORKS')}"
>
${_("How it Works")}
</a>
<a
href=
"${marketing_link('HOW_IT_WORKS')}"
>
${_("How it Works")}
</a>
</li>
</li>
<li
class=
"nav-global-02"
>
<li
class=
"nav-global-02"
>
<a
href=
"${marketing_link('COURSES')}"
>
${_("
Find
Courses")}
</a>
<a
href=
"${marketing_link('COURSES')}"
>
${_("Courses")}
</a>
</li>
</li>
<li
class=
"nav-global-03"
>
<li
class=
"nav-global-03"
>
<a
href=
"${marketing_link('SCHOOLS')}"
>
${_("Schools
&
Partners
")}
</a>
<a
href=
"${marketing_link('SCHOOLS')}"
>
${_("Schools")}
</a>
</li>
</li>
% endif
% endif
</
%
block>
</
%
block>
</ol>
<div
class=
"right nav-courseware"
>
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
<div
class=
"nav-courseware-01
"
>
<li
class=
"nav-global-04
"
>
<a
class=
"cta cta-register"
href=
"${reverse('course-specific-register', args=[course.id.to_deprecated_string()])}"
>
${_("Register
")}
</a>
<a
class=
"cta cta-register"
href=
"${reverse('course-specific-register', args=[course.id.to_deprecated_string()])}"
>
${_("Register Now
")}
</a>
</div
>
</li
>
% else:
% else:
<div
class=
"nav-courseware-01
"
>
<li
class=
"nav-global-04
"
>
<a
class=
"cta cta-register"
href=
"/register"
>
${_("Register
")}
</a>
<a
class=
"cta cta-register"
href=
"/register"
>
${_("Register Now
")}
</a>
</div
>
</li
>
% endif
% endif
% endif
% endif
<div
class=
"nav-courseware-02"
>
</ol>
<ol
class=
"right nav-courseware"
>
<li
class=
"nav-courseware-01"
>
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if not settings.FEATURES['DISABLE_LOGIN_BUTTON']:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
% if course and settings.FEATURES.get('RESTRICT_ENROLL_BY_REG_METHOD') and course.enrollment_domain:
<a
class=
"cta cta-login nav-courseware-butto
n"
href=
"${reverse('course-specific-login', args=[course.id.to_deprecated_string()])}${login_query()}"
>
${_("Log in")}
</a>
<a
class=
"cta cta-logi
n"
href=
"${reverse('course-specific-login', args=[course.id.to_deprecated_string()])}${login_query()}"
>
${_("Log in")}
</a>
% else:
% else:
<a
class=
"cta cta-login nav-courseware-butto
n"
href=
"/login${login_query()}"
>
${_("Log in")}
</a>
<a
class=
"cta cta-logi
n"
href=
"/login${login_query()}"
>
${_("Log in")}
</a>
% endif
% endif
% endif
% endif
</div
>
</li
>
</
div
>
</
ol
>
% endif
% endif
</nav>
</nav>
</header>
</header>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment