I carried out website testing on various devices to ensure the functionality and styling was working correctly. Through testing, I realised that the portrait styling was sufficient but I needed to amend the styling for landscape views. I resolved this through created another css media query for orientation=landscape. The below screenshots show some of the errors that I resolved.
As well as the styling, there was also a few links that weren’t working correctly, of which I successfully resolved. I got some members of my target audience to test my site, they registered and tried out the training guide. From this, my target audience gave me some useful feedback of which I acted upon. I added an option to preview week one if the users doesn’t sign up on a Monday, as well as edited a few spelling mistakes and working more on form validation. Previously if the user entered a username but no password, it would still let the access their guide. To overcome this, I altered the code so that it checks the database to see that the password and username match and if not an error message appears.
After lots of experimentation and several errors later, I managed to successfully integrate Strava’s API into my website. The official documentation can be found here – https://strava.github.io/api/, for further support I used this PHP specific Github repository (https://github.com/iamstuartwilson/strava).
When users register to my site they are directed to this page stating when their chosen plan starts as well as the link to connect to Strava…
Logging in to Strava will then direct users to this authorisation page. If the user accepts the authorisation, their Strava access token is stored in my database and I am able to access their activity data…
I access users Strava data at the end of each week, comparing their weekly total to the required total of selected plan. If users run enough then they receive a tip and can progress to the next week. However, if not, they are prompted to run more! From feedback, my target audience preferred that it checks at the end of the week rather than each day, as this allows users more flexibility with the training.
Snippet of my integration of Strava’s API: