internal static GreetingCard.GreetingCard GetGreetingCard(string i_CardName, FBUser.FBUser i_FriendToSend) { IGreetingCardBuilder cardChoice = null; List <string> stringForCardBuild = GreetingCardsUtils.GetUserAndFriendsNames(i_FriendToSend); List <Image> imageToSend = GreetingCardsUtils.GetUserAndFriendPhotos(i_FriendToSend); switch (i_CardName) { case "Birthday": cardChoice = new BirthdayGreetingCard(); stringForCardBuild.Add(GreetingCardsUtils.GetFriendAge(i_FriendToSend)); break; case "FacebookFriends": cardChoice = new FriendsAnniversaryGreetingCard(); stringForCardBuild.Add(GreetingCardsUtils.GetFriendshipLength(i_FriendToSend)); imageToSend.AddRange(GreetingCardsUtils.GetFriendTaggedPhotosOfUser(i_FriendToSend)); break; case "Love": cardChoice = new LoveGreetingCard(); break; } GreetingCardMaker cardMaker = new GreetingCardMaker(cardChoice, imageToSend, stringForCardBuild); cardMaker.AssemblyCard(); return(cardMaker.GetGreetingCard()); }
public GreetingCardMaker(IGreetingCardBuilder i_GreetingCardBuilder, List <Image> i_Images, List <string> i_Names) { this.m_GreetingCardBuilder = i_GreetingCardBuilder; this.m_Images = i_Images; this.m_Names = i_Names; }