public EditAddTeacher(HymnsAttendance attendance, string id, string name, string className, bool add) { ToolbarItem item = new ToolbarItem(); if (!add) { item.Text = name; } else { item.Text = "Add Teacher"; } // "this" refers to a Page object this.ToolbarItems.Add(item); InitializeComponent(); name = string.IsNullOrEmpty(name) ? "" : Capitalize(name); Add = add; ClassName = className; Attendance = attendance; NameEntry.Text = name; this.id = id; Classes.ItemsSource = ClassesToInterface(HymnsAttendance.OrderedClasses); if (!add) { string[] info = Attendance.GetTeacherInfo(id); //name, phone, grade, parentName, parentPhone, birthday, photo, later string num = info[1]; string parsed = num.Length == 0 ? "" : "(" + num.Substring(0, 3) + ")-" + num.Substring(3, 3) + "-" + num.Substring(6); TeacherPhoneEntry.Text = info[1]; //MM/dd int slash = info[2].IndexOf("/"); BirthdayMonth.Text = info[2].Substring(0, slash); BirthdayDay.Text = info[2].Substring(slash + 1); Classes.SelectedItem = parseName(className); } }
public TeacherProfile(HymnsAttendance attendance, string id, string className) { Attendance = attendance; Id = id; ClassName = className; string[] teacherInfo = Attendance.GetTeacherInfo(Id); // name, phone, birthday ToolbarItem item = new ToolbarItem(); item.Text = teacherInfo[0]; InitializeComponent(); var stream = Attendance.GetTeacherPhoto(id); Image profilePicture = new Image { Source = ImageSource.FromStream(() => { return(stream); }) }; if (stream == null) { profilePicture = new Image { Source = "blankprofile.png", HeightRequest = 500, WidthRequest = 500 }; } storeInfo.Children.Add(profilePicture); Label lname = new Label { Text = "Teacher's Name:", TextColor = Color.SteelBlue, FontSize = 23 }; var ename = new Entry { Text = teacherInfo[0], IsReadOnly = true }; storeInfo.Children.Add(lname); storeInfo.Children.Add(ename); Label lPhone = new Label { Text = "Teacher's Phone Number:", TextColor = Color.SteelBlue, FontSize = 23 }; string num = teacherInfo[1]; string parsed = num.Length == 0 ? "" : "(" + num.Substring(0, 3) + ")-" + num.Substring(3, 3) + "-" + num.Substring(6); var ePhone = new Entry { Text = parsed, IsReadOnly = true }; storeInfo.Children.Add(lPhone); storeInfo.Children.Add(ePhone); StackLayout slbirthday = new StackLayout() { Orientation = StackOrientation.Horizontal, Spacing = 10 }; int slash = teacherInfo[2].IndexOf("/"); Label lbirthday = new Label { Text = "Teacher's Birthday:", TextColor = Color.SteelBlue, FontSize = 23 }; var ebirthdayMonth = new Entry { Text = teacherInfo[2].Substring(0, slash), IsReadOnly = true }; Label slashText = new Label() { Text = "/", FontSize = 23, TextColor = Color.SteelBlue }; var ebirthdayDay = new Entry { Text = teacherInfo[2].Substring(slash + 1), IsReadOnly = true }; slbirthday.Children.Add(ebirthdayMonth); slbirthday.Children.Add(slashText); slbirthday.Children.Add(ebirthdayDay); storeInfo.Children.Add(lbirthday); storeInfo.Children.Add(slbirthday); Label lclassName = new Label { Text = "Teacher's Class:", TextColor = Color.SteelBlue, FontSize = 23 }; //for the edit var eclassName = new Entry { Text = parseName(ClassName), IsReadOnly = true }; storeInfo.Children.Add(lclassName); storeInfo.Children.Add(eclassName); }
private void ToolbarItem_Clicked(object sender, EventArgs e) { string[] teacherInfo = Attendance.GetTeacherInfo(Id); //EditAddStudent(HymnsAttendance2 attendance, string id, string name, string grade, bool add) Navigation.PushAsync(new EditAddTeacher(Attendance, Id, teacherInfo[0], ClassName, false)); }
private void InitTeachers() { var teachers = Attendance.TeachersOfGrade(ClassName); //Students for (int i = 0; i < teachers.Count; i++) { var stream = Attendance.GetTeacherPhoto(teachers[i].Key); CircleImage profilePicture = new CircleImage { Source = ImageSource.FromStream(() => { return(stream); }), HeightRequest = 50, WidthRequest = 50 }; if (stream == null) { profilePicture = new CircleImage { Source = "blankprofile.png", HeightRequest = 50, WidthRequest = 50 }; } profilePicture.HorizontalOptions = LayoutOptions.Center; profilePicture.VerticalOptions = LayoutOptions.Center; Label nameLabel = new Label() { Text = teachers[i].Value, Style = Resources["detailTablet"] as Style }; string birthday = Attendance.GetTeacherInfo(teachers[i].Key)[(int)HymnsAttendance.TeacherInfo.BIRTHDAY]; Label birthdayLabel = new Label() { //Text = num.Length == 0 ? "" : "(" + num.Substring(0, 3) + ")-" + num.Substring(3, 3) + "-" + num.Substring(6), Text = birthday, Style = Resources["detailTablet"] as Style }; int days = Attendance.TeacherGetDatesForYear(teachers[i].Key); float weeks = DateTime.Now.DayOfYear / 7.0f; string percent = ((int)(100 * days / weeks)).ToString() + "%"; Label attend = new Label() { Text = percent, Style = Resources["detailTablet"] as Style }; SwipeItem editSwipeItem = new SwipeItem { Text = "EDIT", BackgroundColor = Color.Red, CommandParameter = new Label() { Text = teachers[i].Key + ";" + teachers[i].Value } }; editSwipeItem.Invoked += TeacherSwipeItem_Clicked; SwipeItem infoSwipeItem = new SwipeItem { Text = "INFO", BackgroundColor = Color.Green, CommandParameter = new Label() { Text = teachers[i].Key + ";" + teachers[i].Value } }; infoSwipeItem.Invoked += TeacherInfoSwipeItem_Clicked; Grid grid = new Grid() { ColumnDefinitions = new ColumnDefinitionCollection() { new ColumnDefinition() { Width = new GridLength(2, GridUnitType.Star) }, new ColumnDefinition() { Width = new GridLength(4, GridUnitType.Star) }, new ColumnDefinition() { Width = new GridLength(2, GridUnitType.Star) }, new ColumnDefinition() { Width = new GridLength(2, GridUnitType.Star) } }, RowDefinitions = new RowDefinitionCollection() { new RowDefinition() { Height = new GridLength(75, GridUnitType.Absolute) } }, BackgroundColor = Color.White }; grid.Children.Add(profilePicture, 0, 0); grid.Children.Add(nameLabel, 1, 0); grid.Children.Add(birthdayLabel, 2, 0); grid.Children.Add(attend, 3, 0); List <SwipeItem> swipeItems = new List <SwipeItem>() { editSwipeItem, infoSwipeItem }; SwipeView swipeView = new SwipeView { RightItems = new SwipeItems(swipeItems), Content = grid }; InfoStack.Children.Add(swipeView); if (i != teachers.Count - 1) { InfoStack.Children.Add(new BoxView { Color = Color.LightGray, BackgroundColor = Color.LightGray, HeightRequest = 0.5, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.Center }); } } InfoStack.Children.Add(new BoxView { Color = Color.LightGray, BackgroundColor = Color.LightGray, HeightRequest = 25, HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.Center }); }