diff --git a/app/main/views/index.py b/app/main/views/index.py index bf5ed00b5..951244352 100644 --- a/app/main/views/index.py +++ b/app/main/views/index.py @@ -305,6 +305,13 @@ def message_status(): ) +@main.route('/features/get-started') +def get_started(): + return render_template( + 'views/get-started.html' + ) + + @main.route('/trial-mode') def trial_mode(): return redirect(url_for('.trial_mode_new'), 301) diff --git a/app/navigation.py b/app/navigation.py index 5cc6b833d..8138afab6 100644 --- a/app/navigation.py +++ b/app/navigation.py @@ -190,6 +190,7 @@ class HeaderNavigation(Navigation): 'forgot_password', 'get_example_csv', 'get_notifications_as_json', + 'get_started', 'go_to_dashboard_after_tour', 'inbound_sms_admin', 'inbox', @@ -504,6 +505,7 @@ class MainNavigation(Navigation): 'forgot_password', 'get_example_csv', 'get_notifications_as_json', + 'get_started', 'go_to_dashboard_after_tour', 'how_to_pay', 'inbound_sms_admin', @@ -728,6 +730,7 @@ class CaseworkNavigation(Navigation): 'forgot_password', 'get_example_csv', 'get_notifications_as_json', + 'get_started', 'go_to_dashboard_after_tour', 'how_to_pay', 'inbound_sms_admin', @@ -1015,6 +1018,7 @@ class OrgNavigation(Navigation): 'forgot_password', 'get_example_csv', 'get_notifications_as_json', + 'get_started', 'go_to_dashboard_after_tour', 'how_to_pay', 'inbound_sms_admin', diff --git a/app/templates/views/get-started.html b/app/templates/views/get-started.html index aef23b34d..0d4e4aeb4 100644 --- a/app/templates/views/get-started.html +++ b/app/templates/views/get-started.html @@ -28,16 +28,16 @@

Notify is not currently available to charities.

- +
  • Create an account

    {% if not current_user.is_authenticated %} -

    Create an account for free and add your first Notify service. When you add a new service, it will start in trial mode.

    +

    Create an account for free and add your first Notify service. When you add a new service, it will start in trial mode.

    {% else %}

    Create an account for free and add your first Notify service. When you add a new service, it will start in trial mode.

    {% endif %}
  • - +
  • Write some messages

    Add message templates with examples of the content you plan to send. You do not need to add letter templates if you’re planning to upload your own letters.

    @@ -45,9 +45,9 @@ +
  • - +
  • Set up your service

    {% if not current_user.is_authenticated %} @@ -58,14 +58,14 @@

    Add team members and check their permissions.

    {% endif %}
  • - +
  • API integration (optional)

    Share our documentation with your developers to help them set up an API integration.

    You only need to do this if you’re using the API to send messages automatically, rather than signing in to Notify.

  • - +
  • Start sending messages

    {% if not current_user.is_authenticated %} diff --git a/tests/app/main/views/test_index.py b/tests/app/main/views/test_index.py index 70156a878..d66a7fa6d 100644 --- a/tests/app/main/views/test_index.py +++ b/tests/app/main/views/test_index.py @@ -74,7 +74,7 @@ def test_robots(client): 'cookies', 'privacy', 'pricing', 'terms', 'roadmap', 'features', 'documentation', 'security', 'message_status', 'features_email', 'features_sms', - 'features_letters', 'how_to_pay', + 'features_letters', 'how_to_pay', 'get_started' ]) def test_static_pages( client_request, @@ -84,6 +84,12 @@ def test_static_pages( page = client_request.get('main.{}'.format(view)) assert not page.select_one('meta[name=description]') + client_request.logout() + with client_request.session_transaction() as session: + session['service_id'] = None + session['user_id'] = None + client_request.get('main.{}'.format(view)) + @pytest.mark.parametrize('view, expected_view', [ ('information_risk_management', 'security'),