diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj b/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj
index 82e6221..27b5a3b 100644
--- a/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj
+++ b/CarouselViewChallenge/CarouselViewChallenge.Android/CarouselViewChallenge.Android.csproj
@@ -100,5 +100,35 @@
CarouselViewChallenge
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons1.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons1.jpg
new file mode 100644
index 0000000..f9b4655
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons1.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons10.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons10.jpg
new file mode 100644
index 0000000..882122d
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons10.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons2.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons2.jpg
new file mode 100644
index 0000000..148d3fc
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons2.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons3.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons3.jpg
new file mode 100644
index 0000000..40ffe15
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons3.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons4.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons4.jpg
new file mode 100644
index 0000000..47ecdb8
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons4.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons5.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons5.jpg
new file mode 100644
index 0000000..7a8556e
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons5.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons6.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons6.jpg
new file mode 100644
index 0000000..8536988
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons6.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons7.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons7.jpg
new file mode 100644
index 0000000..3306931
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons7.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons8.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons8.jpg
new file mode 100644
index 0000000..8bb09ee
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons8.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons9.jpg b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons9.jpg
new file mode 100644
index 0000000..4e21575
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.Android/Resources/drawable/Safety_logo_icons9.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/CarouselViewChallenge.iOS.csproj b/CarouselViewChallenge/CarouselViewChallenge.iOS/CarouselViewChallenge.iOS.csproj
index 155cd56..2ef875e 100644
--- a/CarouselViewChallenge/CarouselViewChallenge.iOS/CarouselViewChallenge.iOS.csproj
+++ b/CarouselViewChallenge/CarouselViewChallenge.iOS/CarouselViewChallenge.iOS.csproj
@@ -139,4 +139,34 @@
CarouselViewChallenge
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons1.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons1.jpg
new file mode 100644
index 0000000..f9b4655
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons1.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons10.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons10.jpg
new file mode 100644
index 0000000..882122d
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons10.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons2.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons2.jpg
new file mode 100644
index 0000000..148d3fc
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons2.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons3.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons3.jpg
new file mode 100644
index 0000000..40ffe15
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons3.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons4.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons4.jpg
new file mode 100644
index 0000000..47ecdb8
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons4.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons5.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons5.jpg
new file mode 100644
index 0000000..7a8556e
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons5.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons6.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons6.jpg
new file mode 100644
index 0000000..8536988
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons6.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons7.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons7.jpg
new file mode 100644
index 0000000..3306931
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons7.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons8.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons8.jpg
new file mode 100644
index 0000000..8bb09ee
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons8.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons9.jpg b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons9.jpg
new file mode 100644
index 0000000..4e21575
Binary files /dev/null and b/CarouselViewChallenge/CarouselViewChallenge.iOS/Resources/Safety_logo_icons9.jpg differ
diff --git a/CarouselViewChallenge/CarouselViewChallenge/CarouselViewChallenge.csproj b/CarouselViewChallenge/CarouselViewChallenge/CarouselViewChallenge.csproj
index 198ec7f..b7b92aa 100644
--- a/CarouselViewChallenge/CarouselViewChallenge/CarouselViewChallenge.csproj
+++ b/CarouselViewChallenge/CarouselViewChallenge/CarouselViewChallenge.csproj
@@ -1,4 +1,4 @@
-
+
netstandard2.0
diff --git a/CarouselViewChallenge/CarouselViewChallenge/ViewModels/CarouselViewChallengeViewModel.cs b/CarouselViewChallenge/CarouselViewChallenge/ViewModels/CarouselViewChallengeViewModel.cs
new file mode 100644
index 0000000..bf2b23e
--- /dev/null
+++ b/CarouselViewChallenge/CarouselViewChallenge/ViewModels/CarouselViewChallengeViewModel.cs
@@ -0,0 +1,50 @@
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.ComponentModel;
+using System.Text;
+using Xamarin.Forms;
+
+namespace CarouselViewChallenge.ViewModels
+{
+ public class CarouselViewChallengeViewModel : INotifyPropertyChanged
+ {
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ private ObservableCollection _cards;
+ public ObservableCollection Cards
+ {
+ get
+ {
+ return _cards;
+ }
+ set
+ {
+ if (_cards != value)
+ {
+ _cards = value;
+ OnPropertyChanged(new PropertyChangedEventArgs("Cards"));
+ }
+ }
+ }
+
+ private void OnPropertyChanged(PropertyChangedEventArgs eventArgs)
+ {
+ PropertyChanged?.Invoke(this, eventArgs);
+ }
+
+ }
+
+ public class LsrDetails
+ {
+ public string Icon { get; set; }
+ public string Description { get; set; }
+
+ }
+
+ public class LsrHeader
+ {
+ public string Header { get; set; }
+ public List CardDetails { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml b/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml
index 1a7cc0d..3cb0ee8 100644
--- a/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml
+++ b/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml
@@ -6,8 +6,67 @@
mc:Ignorable="d"
x:Class="CarouselViewChallenge.Views.CarouselViewChallengePage">
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml.cs b/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml.cs
index 38f2e9f..6355d49 100644
--- a/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml.cs
+++ b/CarouselViewChallenge/CarouselViewChallenge/Views/CarouselViewChallengePage.xaml.cs
@@ -1,9 +1,11 @@
using System;
using System.Collections.Generic;
+using System.Collections.ObjectModel;
using System.Linq;
+using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
-
+using CarouselViewChallenge.ViewModels;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;
@@ -12,9 +14,113 @@ namespace CarouselViewChallenge.Views
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class CarouselViewChallengePage : ContentPage
{
+ public CarouselViewChallengeViewModel _viewModel { get; set; }
public CarouselViewChallengePage()
{
InitializeComponent();
+ _viewModel = new CarouselViewChallengeViewModel();
+
+ SetUpData();
+
+ BindingContext = _viewModel;
+ }
+
+ private void SetUpData()
+ {
+ _viewModel.Cards = new ObservableCollection
+ {
+ new LsrHeader()
+ {
+ Header = "Working Responsibly",
+ CardDetails = new List
+ {
+ new LsrDetails
+ {
+ Description =
+ "Always be sure the required plans and permits are in place, before you start a job or go on or near the line.",
+ Icon = "Safety_logo_icons1.jpg"
+ },
+ new LsrDetails
+ {
+ Description = "Always use equipment that is fit for its intended purpose.",
+ Icon = "Safety_logo_icons2.jpg"
+ },
+ new LsrDetails
+ {
+ Description = "Never undertake any job unless you have been trained and assessed as competent.",
+ Icon = "Safety_logo_icons3.jpg"
+ },
+ new LsrDetails
+ {
+ Description = "Never work or drive while under the influence of drugs or alcohol.",
+ Icon = "Safety_logo_icons4.jpg"
+ },
+
+ }
+ },
+ new LsrHeader()
+ {
+ Header = "Driving",
+ CardDetails = new List
+ {
+ new LsrDetails
+ {
+ Description =
+ "Never use a hand-held or hands-free phone, or programme any other mobile device, while driving.",
+ Icon = "Safety_logo_icons5.jpg"
+ },
+ new LsrDetails
+ {
+ Description = "Always obey the speed limit and wear a seat belt.",
+ Icon = "Safety_logo_icons6.jpg"
+ }
+ }
+ },
+ new LsrHeader
+ {
+ Header = "Working with Electricity",
+ CardDetails = new List
+ {
+ new LsrDetails
+ {
+ Description = "Always test before applying earths or straps.",
+ Icon = "Safety_logo_icons7.jpg"
+ },
+ new LsrDetails
+ {
+ Description = "Never assume equipment is isolated – always test before touch. ",
+ Icon = "Safety_logo_icons8.jpg"
+ }
+ }
+ },
+ new LsrHeader
+ {
+ Header = "Working at height",
+ CardDetails = new List
+ {
+ new LsrDetails
+ {
+ Description = "Always use a safety harness when working at height, unless other protection is in place.",
+ Icon = "Safety_logo_icons9.jpg"
+ }
+ }
+ },
+ new LsrHeader
+ {
+ Header = "Working with moving equipment",
+ CardDetails = new List
+ {
+ new LsrDetails
+ {
+ Description = "Never enter the agreed exclusion zone, unless directed to by the person in charge.",
+ Icon = "Safety_logo_icons10.jpg"
+ }
+ }
+ }
+ };
}
+
}
+
+
}
\ No newline at end of file