public override void addLinksToMessageFromList( UserSession us, List<MenuOptionItem> list, MessageToSend ms) { ms.AppendLine(); int count = (us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT) + 1; int starting_index = us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT; FriendRelationMenuOptionItem an_option; FriendRelation fr; List<long> recipient_list = null; if (us.hasVariable(ChooseFriendHandler.RECIPIENT_LIST)) { recipient_list = (List<long>)us.getVariableObject(ChooseFriendHandler.RECIPIENT_LIST); } for (int i = starting_index; i < list.Count && i < starting_index + MenuDefinition.PAGE_ITEM_COUNT; i++) { an_option = (FriendRelationMenuOptionItem)list.ElementAt(i); fr = an_option.fr; if (recipient_list == null || (recipient_list != null && !recipient_list.Contains(long.Parse(an_option.display_text)))) { ms.Append(" " + UserNameManager.getInstance().getUserName(long.Parse(an_option.display_text)) + " "); ms.Append(createMessageLink(MENU_LINK_NAME, "[+]", "ADD_" + an_option.display_text)); /*ms.Append(" "); ms.Append(createMessageLink(MENU_LINK_NAME, "[-]", "REMOVE_" + an_option.display_text));*/ ms.Append("\r\n"); } count++; } }
public override void addLinksToMessageFromList( UserSession us, List<MenuOptionItem> list, MessageToSend ms) { int count = (us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT) + 1; int starting_index = us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT; VerseMenuOptionItem an_option; String summary = ""; for (int i = starting_index; i < list.Count && i < starting_index + MenuDefinition.PAGE_ITEM_COUNT; i++) { an_option = (VerseMenuOptionItem)list.ElementAt(i); ms.Append(createMessageLink(MENU_LINK_NAME, count + ") ", an_option.link_val)); ms.Append(an_option.display_text); String start_verse = an_option.fvr.start_verse; Verse verse_summ = Verse_Handler.getStartingVerse(us.user_profile.getDefaultTranslationId(), an_option.fvr.start_verse); //NetBible method should not be used because this is not always a NET Bible if (an_option.is_valid && verse_summ != null) { summary = BibleContainer.getSummaryOfVerse(verse_summ, SUMMARY_WORD_COUNT); ms.Append(" - " + summary + "..."); } else { ms.Append(" - The verse is not available in this translation", TextMarkup.Bold); } //ms.Append(createMessageLink(MENU_LINK_NAME, "[x]", "del:"+ count)); ms.Append("\r\n"); count++; } }
public void appendExtraCommandLinks(String extra_commands, MessageToSend ms) { if (!(extra_commands == "")) { //TODO Complete this to split on | and add different commands ms.Append(createMessageLink(MENU_LINK_NAME, extra_commands, extra_commands.ToUpper())); ms.Append("\r\n"); } }
//in here we should rather call a this method and from here call the implemented output screen //message method so that we can do common things in here. anyway too late now. public override MessageToSend getOutputScreenMessage( UserSession us, MenuPage mp, MessageToSend ms, InputHandlerResult ihr) { ms.Append(MessageBuilder.Elements.CreateClearScreen()); if (!mp.GetType().FullName.Equals("MxitTestApp.DynMenuPage"))//TODO: Should be constant throw new Exception("Invalid menu page passed into getScreen method "); DynMenuPage dmp = (DynMenuPage)mp; ms.Append(dmp.title + "\r\n",TextMarkup.Bold); if (ihr.action == InputHandlerResult.CONF_PAGE_ACTION && ihr.message != null) { ms.Append(ihr.message + "\r\n"); ms.Append(createMessageLink(MENU_LINK_NAME, "Y", "Yes")); ms.Append(" | "); ms.Append(createMessageLink(MENU_LINK_NAME, "N", "No")); } else { if (ihr.action == InputHandlerResult.INVALID_MENU_ACTION && ihr.error != null) { ms.Append((string)ihr.error + "\r\n"); } else { ms.Append(parseMessage(us, dmp.message) + "\r\n"); } /*List<MenuOptionItem> options = dmp.options; int count =1 ; foreach (MenuOptionItem option in options) { ms.Append(createMessageLink(MENU_LINK_NAME, count + ") ", option.link_val)); ms.Append(option.display_text + "\r\n"); count++; }*/ List<MenuOptionItem> dyn_options = dmp.dynamic_set.getOptionList(us); if (dyn_options.Count() == 0) { String empty_msg = dmp.dynamic_set.getListEmptyMessage(); if (empty_msg != null && empty_msg != "") ms.Append(dmp.dynamic_set.getListEmptyMessage() + "\r\n"); } addLinksToMessageFromList(us, dyn_options, ms); appendPaginateLinks(us, ms, dyn_options.Count); appendExtraCommandLinks(dmp.dynamic_set.getExtraCommandString(), ms); appendBackMainLinks(us, ms); appendMessageConfig(true, ms); } return ms; //return output; }
public void addThreadLinks( UserSession us, MessageToSend ms) { int current_page = Int32.Parse(us.getVariable(MessageInboxHandler.CURRENT_MESSAGE_THREAD)); int count = (current_page * THREAD_COUNT_PER_PAGE) + 1; VerseMessageThread vmt; int starting_index = current_page * THREAD_COUNT_PER_PAGE; List<VerseMessageThread> threads = us.verse_messaging_manager.getParticipatingThreads(); if (threads.Count() == 0) { ms.Append("Your inbox is empty"); return; } for (int i = starting_index; i < threads.Count && i < starting_index + THREAD_COUNT_PER_PAGE; i++) { vmt = threads.ElementAt(i); if (vmt == null) continue; appendMessageThread(us, ms, vmt); } appendPaginateLinks(us, ms, threads.Count, THREAD_COUNT_PER_PAGE); }
public override void addLinksToMessageFromList( UserSession us, List<MenuOptionItem> list, MessageToSend ms) { int count = (us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT) + 1; int starting_index = us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT; FriendRelationMenuOptionItem an_option; FriendRelation fr; for (int i = starting_index; i < list.Count && i < starting_index + MenuDefinition.PAGE_ITEM_COUNT; i++) { an_option = (FriendRelationMenuOptionItem)list.ElementAt(i); fr = an_option.fr; ms.Append("* " + UserNameManager.getInstance().getUserName(long.Parse(an_option.display_text))); ms.Append(" "); ms.Append(createMessageLink(MENU_LINK_NAME, "[REMOVE]", "DELETE_" + an_option.display_text)); ms.Append(" "); ms.Append(createMessageLink(MENU_LINK_NAME, "[BLOCK]", "BLOCK_" + an_option.display_text)); ms.Append(" "); ms.Append("\r\n"); count++; } }
public virtual void addLinksToMessageFromList( UserSession us, List<MenuOptionItem> list, MessageToSend ms) { int count = (us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT) + 1; int starting_index = us.current_menu_page * MenuDefinition.PAGE_ITEM_COUNT; MenuOptionItem an_option; for (int i = starting_index; i < list.Count && i < starting_index + MenuDefinition.PAGE_ITEM_COUNT; i++) { an_option = list.ElementAt(i); ms.Append(createMessageLink(MENU_LINK_NAME, count + ") ", an_option.link_val)); ms.Append(an_option.display_text + "\r\n"); count++; } }
public override MessageToSend getOutputScreenMessage( UserSession us, MenuPage mp, MessageToSend ms, InputHandlerResult ihr) { ms.Append(MessageBuilder.Elements.CreateClearScreen()); if (!mp.GetType().FullName.Equals("MxitTestApp.OptionMenuPage"))//TODO: Should be constant throw new Exception("Invalid menu page passed into getScreen method "); OptionMenuPage omp = (OptionMenuPage)mp; ms.Append(omp.title + "\r\n", TextMarkup.Bold); if (ihr.action == InputHandlerResult.INVALID_MENU_ACTION && ihr.error != null) { ms.Append((string)ihr.error + "\r\n"); } else { ms.Append(parseMessage(us, omp.message) + "\r\n"); } List<MenuOptionItem> options = omp.options; int count =1 ; foreach (MenuOptionItem option in options) { ms.Append(createMessageLink(MENU_LINK_NAME, count + ") ", option.link_val)); ms.Append(option.display_text + "\r\n"); count++; } appendBackMainLinks(us, ms); appendMessageConfig(true, ms); return ms; //return output; }
public void addQuickFilterLinksToMessageFromList( UserSession us, MessageToSend ms) { List<char> starting_chars = us.friend_manager.getStartingCharacters(); //.. starting_chars starting_chars.Sort(); if (starting_chars.Count() > 1) { int i = 0; foreach (var a_char in starting_chars) { if (i == 0) { i++; ms.Append("\r\nFilter - "); ms.Append(createMessageLink(MENU_LINK_NAME, "[ALL]", FriendHandler.FILTER_LIST + "ALL")); ms.Append(" "); } ms.Append(createMessageLink(MENU_LINK_NAME, "[" + a_char.ToString().ToUpper() + "]", FriendHandler.FILTER_LIST + a_char)); ms.Append(" "); } ms.Append("\r\n\r\n"); } }
public void addQuickFilterLinksToMessageFromList( UserSession us, MessageToSend ms) { List<char> starting_chars = us.friend_manager.getStartingCharacters(); //.. starting_chars starting_chars.Sort(); String filter = ""; if (us.hasVariable(ChooseFriendHandler.FRIEND_LIST_FILTER)) { filter = us.getVariable(ChooseFriendHandler.FRIEND_LIST_FILTER); } if (starting_chars.Count() > 1) { int i = 0; foreach (var a_char in starting_chars) { if (i == 0) { i++; ms.Append("\r\nFilter - "); if (filter.Equals("") || filter.Equals("ALL")) { ms.Append("[ALL]"); } else { ms.Append(createMessageLink(MENU_LINK_NAME, "[ALL]", FriendHandler.FILTER_LIST + "ALL")); } ms.Append(" "); } if (filter.Equals(a_char.ToString().ToUpper())) { ms.Append("[" + a_char.ToString().ToUpper() + "]"); } else { ms.Append(createMessageLink(MENU_LINK_NAME, "[" + a_char.ToString().ToUpper() + "]", FriendHandler.FILTER_LIST + a_char)); } ms.Append(" "); } ms.Append("\r\n\r\n"); } }
public static void appendInitialMessageConfig(UserProfile up, MessageToSend message) { IMessageElement chatScreenConfig; IClientColors clientColors = MessageBuilder.Elements.CreateClientColors(); //Create the colour scheme you want to UserColourTheme uct = UserColourTheme.getColourTheme(up.user_profile_custom.colour_theme); if (uct != null) { clientColors[ClientColorType.Background] = uct.getBackGroundColour(); clientColors[ClientColorType.Text] = uct.getForeGroundColour(); clientColors[ClientColorType.Link] = uct.getLinkColour(); chatScreenConfig = MessageBuilder.Elements.CreateChatScreenConfig( ChatScreenBehaviourType.ShowProgress | ChatScreenBehaviourType.NoPrefix, clientColors); } else { //clientColors[ClientColorType.Background] = Color.Empty; //System.Drawing.ColorTranslator.FromHtml("#??????"); //clientColors[ClientColorType.Text] = Color.Empty; //System.Drawing.ColorTranslator.FromHtml("#??????"); //clientColors[ClientColorType.Link] = Color.Empty; //System.Drawing.ColorTranslator.FromHtml("#??????"); chatScreenConfig = MessageBuilder.Elements.CreateChatScreenConfig( ChatScreenBehaviourType.ShowProgress | ChatScreenBehaviourType.NoPrefix); } message.Append(chatScreenConfig); /*else { chatScreenConfig = MessageBuilder.Elements.CreateChatScreenConfig( ChatScreenBehaviourType.ShowProgress | ChatScreenBehaviourType.NoPrefix); } ms.Append(chatScreenConfig);*/ }
public bool appendShinkaBannerAd(ref MessageToSend messageToSend, MXit.User.UserInfo userInfo) { bool gotShinkaAd = false; try { if (AdvertConfig.isShowShinkaBannerAd) { String MxitUserID = userInfo.UserId; MXit.User.GenderType userGenderType = userInfo.Gender; int displayWidth = userInfo.DeviceInfo.DisplayWidth; int displayHeight = userInfo.DeviceInfo.DisplayHeight; int userAge = AgeInYears(userInfo.DateOfBirth); BannerAd adTodisplay; gotShinkaAd = AdvertHelper.Instance.getBannerAd(MxitUserID, userGenderType, displayWidth, displayHeight, userAge, out adTodisplay); if (gotShinkaAd) { if (adTodisplay.creativeType == "image") { int imageDisplayWidthPerc; if (displayWidth <= 128) { imageDisplayWidthPerc = 99; } else { imageDisplayWidthPerc = 100; } IMessageElement inlineImage = MessageBuilder.Elements.CreateInlineImage(adTodisplay.adImage, ImageAlignment.Center, TextFlow.AloneOnLine, imageDisplayWidthPerc); messageToSend.Append(inlineImage); } messageToSend.Append("Go to ", CSS.Ins.clr["light"], CSS.Ins.mrk["d"]); String displayText = System.Net.WebUtility.HtmlDecode(adTodisplay.altText); messageToSend.AppendLine(MessageBuilder.Elements.CreateBrowserLink(displayText, adTodisplay.clickURL)); messageToSend.AppendLine(); //register impression for the bannerad display HttpWebRequest req = (HttpWebRequest)WebRequest.Create(adTodisplay.impressionURL); req.UserAgent = "Mozilla Compatible mxit_client"; Random random = new Random(DateTime.Now.Second); int randomUpTo254 = random.Next(1, 254); String tempIP = "196.11.239." + randomUpTo254; req.Headers.Add("X-Forwarded-For", tempIP); req.Referer = AdvertConfig.appID; req.Timeout = AdvertConfig.bannerAdTimeout; req.Proxy = null; req.KeepAlive = false; req.ServicePoint.ConnectionLeaseTimeout = 10000; req.ServicePoint.MaxIdleTime = 10000; QueueHelper_HTTP.Instance.QueueItem(req); } } //zama end } catch (Exception ex) { logger.Error("[" + MethodBase.GetCurrentMethod().Name + " - Error getting or showing Shinka ad: " + ex.ToString()); } return gotShinkaAd; //so that the calling function knows if an ad was displayed }
public void BuildMenu(DBUtil.UData ud, MessageToSend mes) { IMessageElement link; switch (ud.state) { case -2: //first time user { mes.AppendLine("Final War", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Welcome to Final War, the war to end all wars! Join the struggle to control the cyber world through brute force."); mes.AppendLine(); mes.Append("It is your first time here, to get started use the "); mes.Append("nick", TextMarkup.Underline); mes.Append(" command to change your nickname (currently: " + ud.uname + ", this is the only free name change available), then why dont you read the "); link = MessageBuilder.Elements.CreateLink("tuthelp", // Optional "help", // Compulsory "help", // Optional "help"); // Optional mes.Append(link); mes.AppendLine(" otherwise, head to the main menu to jump in."); link = MessageBuilder.Elements.CreateLink("tutmenu", // Optional "Back to the menu.", // Compulsory "menu", // Optional "menu"); // Optional mes.Append(link); return; } case 0: //main menu { mes.AppendLine("Final War", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Welcome back " + ud.uname + " what would you like to do?"); mes.AppendLine(); link = MessageBuilder.Elements.CreateLink("menu1", // Optional "1) My Hideout", // Compulsory "1", // Optional "1"); // Optional mes.AppendLine(link); link = MessageBuilder.Elements.CreateLink("menu2", // Optional "2) Bank", // Compulsory "2", // Optional "2"); // Optional mes.AppendLine(link); link = MessageBuilder.Elements.CreateLink("menu3", // Optional "3) Tech", // Compulsory "3", // Optional "3"); // Optional mes.AppendLine(link); link = MessageBuilder.Elements.CreateLink("menu4", // Optional "4) Gang", // Compulsory "4", // Optional "4"); // Optional mes.AppendLine(link); link = MessageBuilder.Elements.CreateLink("menu5", // Optional "5) The streets", // Compulsory "5", // Optional "5"); // Optional mes.AppendLine(link); link = MessageBuilder.Elements.CreateLink("menu9", // Optional "9) Leaderboards", // Compulsory "9", // Optional "9"); // Optional mes.AppendLine(link); link = MessageBuilder.Elements.CreateLink("menuhelp", // Optional "help) Help", // Compulsory "help", // Optional "help"); // Optional mes.AppendLine(link); mes.AppendLine(); mes.AppendLine("News: " + Program.config.Notice); return; } case 1: //help menu { mes.AppendLine("Help", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Do stuff, kill people, level up"); mes.AppendLine(); link = MessageBuilder.Elements.CreateLink("helpmenu", // Optional "Back", // Compulsory "menu", // Optional "menu"); // Optional mes.Append(link); return; } case 2: //hideout { mes.AppendLine("Your Hideout", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Your stats:"); mes.AppendLine("Level: " + ud.level.ToString() + " Exp: " + ud.exp.ToString()); mes.AppendLine(); link = MessageBuilder.Elements.CreateLink("hidemenu", // Optional "Back", // Compulsory "menu", // Optional "menu"); // Optional mes.Append(link); return; } case 3: //bank { mes.AppendLine("Your Bank Account", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Your bank details:"); mes.AppendLine("Bank Balance: $" + ud.bank.ToString()); mes.AppendLine("Wallet Balance: $" + ud.wallet.ToString()); mes.AppendLine(); mes.Append("Use the "); mes.Append("with", TextMarkup.Underline); mes.AppendLine(" command to withdraw money"); mes.Append("Use the "); mes.Append("dep", TextMarkup.Underline); mes.AppendLine(" command to deposit it"); link = MessageBuilder.Elements.CreateLink("bankback", // Optional "Back", // Compulsory "menu", // Optional "menu"); // Optional mes.Append(link); return; } case 4: //tech { mes.AppendLine("Your Tech", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Equips and Stats:"); mes.AppendLine("Atk: " + ud.atk.ToString() + " Def: " + ud.def.ToString()); mes.Append("Armour: "); if (ud.armour == -1) { mes.AppendLine("None"); } else { mes.AppendLine(ud.armour.ToString() + "(armour ID)"); } mes.Append("Gloves: "); if (ud.gloves == -1) { mes.AppendLine("None"); } else { mes.AppendLine(ud.gloves.ToString() + "(gloves ID)"); } mes.Append("Helmet: "); if (ud.helmet == -1) { mes.AppendLine("None"); } else { mes.AppendLine(ud.helmet.ToString() + "(helmet ID)"); } mes.Append("Weapon: "); if (ud.weapon == -1) { mes.AppendLine("None"); } else { mes.AppendLine(ud.weapon.ToString() + "(weapon ID)"); } mes.AppendLine(); link = MessageBuilder.Elements.CreateLink("techback", // Optional "Back", // Compulsory "menu", // Optional "menu"); // Optional mes.Append(link); return; } case 5: //gang { mes.AppendLine("Your Gang", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Members, Message, factories, tax, etc"); mes.AppendLine(); link = MessageBuilder.Elements.CreateLink("gangback", // Optional "Back", // Compulsory "menu", // Optional "menu"); // Optional mes.Append(link); return; } case 6: //streets { mes.AppendLine("The Streets", TextMarkup.Bold); mes.AppendLine(); mes.AppendLine("Fight, Level, etc"); mes.AppendLine(); link = MessageBuilder.Elements.CreateLink("streetback", // Optional "Back", // Compulsory "menu", // Optional "menu"); // Optional mes.Append(link); return; } } }
private void appendBannerImage(ref MessageToSend messageToSend, MXit.User.UserInfo userInfo, BannerAd adTodisplay) { if ((AdvertConfig.bannerCacheSize > 0) && (messageToSend.ToDevice.HasFeature(DeviceFeatures.Gaming))) { //use ImageStrips to allow caching of images on users device string bannerHash = GetImageHash(adTodisplay.adImage); int cachePosition; if (!bannerHashMap.ContainsKey(bannerHash)) { cachePosition = lastCachePosition; //we create a dictionary of ImageStrips with the required sizes AdvertStripCollection bannerStrips = new AdvertStripCollection(bannerHash, adTodisplay.adImage); bannerStripCache[cachePosition] = bannerStrips; //remove any other hashes that are using this position foreach (string key in bannerHashMap.Keys) { if (bannerHashMap[key] == cachePosition) bannerHashMap.Remove(key); break; } //and assign this position to the hash bannerHashMap[bannerHash] = cachePosition; //advance the pointer of the last added imagestrip. lastCachePosition++; if (lastCachePosition == AdvertConfig.bannerCacheSize) { lastCachePosition = 0; } } else { cachePosition = bannerHashMap[bannerHash]; } string userSize = GetUserSize(userInfo); //this doesn't allow client-side auto resizing of images, may want to consider server side resizing ITable boardAd = MessageBuilder.Elements.CreateTable(messageToSend, "ad-" + bannerHash + "-" + userSize, 1, 1); boardAd.SelectionMode = SelectionRectType.Outline; boardAd.Style.Align = (AlignmentType)((int)AlignmentType.VerticalCenter + (int)AlignmentType.HorizontalCenter); boardAd.Mode = TableSendModeType.Update; //Mxit SDK 1.4.6 shows Frames.Set as obsolete, to be replaced with Frames.Add, but will break compatibility with older SDK's boardAd[0, 0].Frames.Set(bannerStripCache[cachePosition].GetStrip(userSize), 0); messageToSend.Append(boardAd); } else { int displayWidth = userInfo.DeviceInfo.DisplayWidth; int imageDisplayWidthPerc; if (displayWidth <= 128) { imageDisplayWidthPerc = 99; } else { imageDisplayWidthPerc = 100; } IMessageElement inlineImage = MessageBuilder.Elements.CreateInlineImage(adTodisplay.adImage, ImageAlignment.Center, TextFlow.AloneOnLine, imageDisplayWidthPerc); //IMessageElement inlineImage = MessageBuilder.Elements.CreateInlineImage(adTodisplay.adImageURL, ImageAlignment.Center, TextFlow.AloneOnLine); messageToSend.AppendLine(inlineImage); } }
public bool appendShinkaBannerAd(ref MessageToSend messageToSend, MXit.User.UserInfo userInfo, String preselectedAdUnitID) { bool gotShinkaAd = false; try { if (AdvertConfig.isShowShinkaBannerAd) { String MxitUserID = userInfo.UserId; MXit.User.GenderType userGenderType = userInfo.Gender; int displayWidth = userInfo.DeviceInfo.DisplayWidth; int displayHeight = userInfo.DeviceInfo.DisplayHeight; int userAge = AgeInYears(userInfo.DateOfBirth); BannerAd adTodisplay; gotShinkaAd = AdvertHelper.Instance.getBannerAd(MxitUserID, userGenderType, displayWidth, displayHeight, userAge, preselectedAdUnitID, out adTodisplay); if (gotShinkaAd) { if (adTodisplay.creativeType == "image" && userInfo.DeviceInfo.DisplayWidth >= 320) { //an extra check to see that the image was retrieved //Eric changed: if (adTodisplay.adImage == null) if (adTodisplay.adImage == null) { return false; } else { appendBannerImage(ref messageToSend, userInfo, adTodisplay); } } //If the Alt text is empty then don't display the link below the image: if (!String.IsNullOrEmpty(adTodisplay.altText)) { messageToSend.Append("Go to ", CSS.Ins.clr["light"], CSS.Ins.mrk["d"]); String displayText = System.Net.WebUtility.HtmlDecode(adTodisplay.altText); messageToSend.AppendLine(MessageBuilder.Elements.CreateBrowserLink(displayText, adTodisplay.clickURL)); messageToSend.AppendLine(); } else //Don't display Alt text link: { messageToSend.AppendLine(); } //register impression for the bannerad display HttpWebRequest req = (HttpWebRequest)WebRequest.Create(adTodisplay.impressionURL); req.UserAgent = "Mozilla Compatible"; Random random = new Random(DateTime.Now.Second); int randomUpTo254 = random.Next(1, 254); String tempIP = "196.11.239." + randomUpTo254; req.Headers.Add("X-Forwarded-For", tempIP); req.Referer = AdvertConfig.appID; req.Timeout = AdvertConfig.bannerAdTimeout; req.Proxy = null; req.KeepAlive = false; req.ServicePoint.ConnectionLeaseTimeout = 10000; req.ServicePoint.MaxIdleTime = 10000; QueueHelper_HTTP.Instance.QueueItem(req); } } //zama end } catch (Exception ex) { logger.Error("[" + MethodBase.GetCurrentMethod().Name + " - Error getting or showing Shinka ad: " + ex.ToString()); } return gotShinkaAd; //so that the calling function knows if an ad was displayed }
public override MessageToSend getOutputScreenMessage( UserSession us, MenuPage mp, MessageToSend ms, InputHandlerResult ihr) { ms.Append(MessageBuilder.Elements.CreateClearScreen()); if (!mp.GetType().FullName.Equals("MxitTestApp.VerseMenuPage"))//TODO: Should be constant throw new Exception("Invalid menu page passed into getScreen method "); VerseMenuPage omp = (VerseMenuPage)mp; ms.Append(omp.title + "\r\n", TextMarkup.Bold); ms.Append("\r\n"); ms.Append("\r\n"); if (ihr.error != null && ihr.action == InputHandlerResult.INVALID_MENU_ACTION) { ms.Append((string)ihr.error + "\r\n"); } Boolean should_display_conf_message = displayMessage(us, ms, ihr); if (should_display_conf_message) { return ms; } ms.Append(parseMessage(us, omp.message) + "\r\n"); /*else if (us.getVariable(FriendHandler.DELETED_FRIEND_NAME) != null) { friend_name = (String)us.removeVariable(FriendHandler.DELETED_FRIEND_NAME); ms.Append("You have removed " + friend_name + " from you buddy list."); ms.Append("\r\n"); ms.Append("\r\n"); }*/ Boolean recip_is_set = false; //check if recipient is set already if (us.hasVariable(RECIPIENT_ID)) { String friend_id = us.getVariable(RECIPIENT_ID); long l_friend_id = long.Parse(friend_id); String user_name = UserNameManager.getInstance().getUserName(l_friend_id); ms.Append("To: "); ms.Append(user_name, TextMarkup.Bold); ms.Append(" "); ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", NotifMessageSendHandler.CHOOSE_FRIEND_ID)); recip_is_set = true; } else { ms.Append("To: "); ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", NotifMessageSendHandler.CHOOSE_FRIEND_ID)); ms.Append(" *"); } ms.Append("\r\n"); ms.Append("\r\n"); if (us.hasVariable(MESSAGE_SUBJECT)) { String subject = us.getVariable(MESSAGE_SUBJECT); ms.Append("Subject: "); ms.Append(subject); ms.Append(" "); } else { ms.Append("Subject: "); } ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", NotifMessageSendHandler.ENTER_MESSAGE_SUBJECT)); ms.Append("\r\n"); ms.Append("\r\n"); if (us.hasVariable(MESSAGE_TEXT)) { String message = us.getVariable(MESSAGE_TEXT); ms.Append("Message: "); ms.Append(message); ms.Append(" "); } else { ms.Append("Message: "); } ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", NotifMessageSendHandler.ENTER_MESSAGE)); ms.Append("\r\n"); ms.Append("\r\n"); if (!recip_is_set) ms.AppendLine("Fields marked with * has to be set before you can send the message"); else ms.AppendLine(createMessageLink(MENU_LINK_NAME, "Send Message", NotifMessageSendHandler.SEND_MESSAGE)); ms.AppendLine(""); appendBackMainLinks(us, ms); appendMessageConfig(true, ms); return ms; //return output; }
public override MessageToSend getOutputScreenMessage( UserSession us, MenuPage mp, MessageToSend ms, InputHandlerResult ihr) { ms.Append(MessageBuilder.Elements.CreateClearScreen()); if (!mp.GetType().FullName.Equals("MxitTestApp.OptionMenuPage"))//TODO: Should be constant throw new Exception("Invalid menu page passed into getScreen method "); OptionMenuPage omp = (OptionMenuPage)mp; ms.Append(omp.title + "\r\n", TextMarkup.Bold); if (ihr.action == InputHandlerResult.INVALID_MENU_ACTION && ihr.error != null) { ms.Append((string)ihr.error + "\r\n"); } else { ms.Append(parseMessage(us, omp.message) + "\r\n"); } ms.AppendLine("Refer a friend to the BibleApp on MXit by using the link below. "); ms.AppendLine(createMessageLink(MENU_LINK_NAME, "Spread The Word", MainMenuHandler.REFER_A_FRIEND)); ms.AppendLine(); if (us.user_profile.is_suspended) { ms.Append("\r\n"); ms.Append("You have been suspended from this application. Please email us at [email protected]."); ms.Append("\r\n"); ms.Append("\r\n"); return ms; } if (us.hasVariable(UserSession.GUEST_USER_NAME_ASSIGNED)) { ms.Append("\r\n"); ms.Append("You have been assigned a guest user name. To remove this message please change your user name in the profile option below."); ms.Append("\r\n"); ms.Append("\r\n"); } if (us.bookmark_manager.bookmark_verse != null) { ms.Append("To continue reading where you left off "); ms.Append(createMessageLink(MENU_LINK_NAME, "Click Here", "BOOKMARK")); ms.Append("\r\n"); ms.Append("\r\n"); ms.Append("Or choose an option below...\r\n"); } else { ms.Append("Choose an option below...\r\n"); } List<MenuOptionItem> options = omp.options; int count =1 ; foreach (MenuOptionItem option in options) { ms.Append(createMessageLink(MENU_LINK_NAME, count + ") ", option.link_val)); if (option.menu_option_id == MY_PROFILE_OPTION_ID) { if (us.hasNewEvent()) { ms.Append(option.display_text + " (!)\r\n", TextMarkup.Bold); } else { ms.Append(option.display_text + "\r\n"); } } else { ms.Append(option.display_text + "\r\n"); } count++; } appendBackMainLinks(us, ms); appendMessageConfig(true, ms); ms.AppendLine(""); ms.AppendLine(""); ms.AppendLine("Shortcuts...", TextMarkup.Bold); ms.Append(createMessageLink(MENU_LINK_NAME, "Inbox", MainMenuHandler.MESSAGE_INBOX)); if (us.hasNewMessageEvent()) { ms.Append(" (NEW)", TextMarkup.Bold); } if (us.hasNewFriendRequest()) { ms.Append(" | "); ms.Append(createMessageLink(MENU_LINK_NAME, "Buddy Requests", MainMenuHandler.BUDDY_REQUESTS)); ms.Append(" (NEW)", TextMarkup.Bold); } ms.Append(" | "); ms.Append(createMessageLink(MENU_LINK_NAME, "Help", MainMenuHandler.HELP)); ms.Append(" | "); ms.Append(createMessageLink(MENU_LINK_NAME, "About Us", MainMenuHandler.ABOUT)); ms.Append(" | "); ms.Append(createMessageLink(MENU_LINK_NAME, "Change Colours", MainMenuHandler.COLOUR_CHANGE)); ms.AppendLine(); ms.AppendLine(); UserColourTheme uct = UserColourTheme.getColourTheme(us.user_profile.user_profile_custom.colour_theme); if (uct != null) { Color color = uct.getTipTextColour(); ms.AppendLine("Tip: Check out the profile section and if your friends use the BibleApp add them as buddies so that you can send them verses. For a start add us, our code is CBTJXP. ",color); } else { ms.AppendLine("Tip: Check out the profile section and if your friends use the BibleApp add them as buddies so that you can send them verses. For a start add us, our code is CBTJXP. "); } ms.AppendLine(); ms.AppendLine(); //ADMIN AREA if (us.user_profile.is_admin) { ms.AppendLine("ADMIN AREA"); ms.AppendLine(""); ms.Append(createMessageLink(MENU_LINK_NAME, "Send Notification", MainMenuHandler.SEND_NOTIFICATION)); //ms.AppendLine(""); //ms.Append(createMessageLink(MENU_LINK_NAME, "Send Notification", MainMenuHandler.SEND_NOTIFICATION)); } return ms; //return output; }
public Boolean displayMessage(UserSession us, MessageToSend ms, InputHandlerResult ihr) { if (ihr.action == InputHandlerResult.DISPLAY_MESSAGE) { ms.Append(MessageBuilder.Elements.CreateClearScreen()); ms.Append(ihr.message + "\r\n"); appendBackMainLinks(us, ms); appendMessageConfig(true, ms); us.setVariable(AInputHandler.DISPLAY_MESSAGE , "Message sent");//you must be sure to remove this from hash table in handler. return true; } return false; }
//this adds pagination links depending on the count passed into it and the current page the user //is on public void appendPaginateLinks( UserSession us, MessageToSend ms, int count) { int cur_page_limit = 0; if (!us.current_menu_loc.Equals(MenuDefinition.ROOT_MENU_ID)) { cur_page_limit = MenuDefinition.PAGE_ITEM_COUNT * (us.current_menu_page+1); if ((cur_page_limit > MenuDefinition.PAGE_ITEM_COUNT)) ms.Append(createMessageLink(MENU_LINK_NAME, "Previous", "PREV")); if ((cur_page_limit > MenuDefinition.PAGE_ITEM_COUNT) && (cur_page_limit < count)) ms.Append(" | "); if ((cur_page_limit < count)) ms.Append(createMessageLink(MENU_LINK_NAME, "Next", "NEXT")); if (count > MenuDefinition.PAGE_ITEM_COUNT) ms.Append("\r\n"); } }
/*adds refresh link on new line*/ public void appendRefreshLink(MessageToSend ms) { ms.Append(createMessageLink(MENU_LINK_NAME, "Refresh", "Refresh")); ms.AppendLine(); }
//this adds pagination links depending on the count passed into it and the current page the user //is on public override void appendPaginateLinks( UserSession us, MessageToSend ms, int count, int count_per_page) { int cur_page_limit = 0; int num_pages = 0; int current_page = Int32.Parse(us.getVariable(MessageInboxHandler.CURRENT_MESSAGE_THREAD)); if (!us.current_menu_loc.Equals(MenuDefinition.ROOT_MENU_ID)) { cur_page_limit = count_per_page * (current_page + 1); int rem = count % count_per_page; num_pages = count / count_per_page; if (rem > 0) num_pages += 1; if ((cur_page_limit > count_per_page)) { if (num_pages > 2 && current_page > 0) { ms.Append(createMessageLink(MENU_LINK_NAME, "First", AInputHandler.FIRST_PAGE)); ms.Append(" | "); } ms.Append(createMessageLink(MENU_LINK_NAME, "Previous", AInputHandler.PREV_PAGE)); } if ((cur_page_limit > count_per_page) && (cur_page_limit < count)) ms.Append(" | "); if ((cur_page_limit < count)) { ms.Append(createMessageLink(MENU_LINK_NAME, "Next", AInputHandler.NEXT_PAGE)); if (num_pages > 2 && current_page < num_pages - 1) { ms.Append(" | "); ms.Append(createMessageLink(MENU_LINK_NAME, "Last", AInputHandler.LAST_PAGE + "_" + (num_pages - 1))); } } if (count > count_per_page) ms.Append("\r\n"); } }
public override void parseAndAppendBibleText( List<Verse> list, MessageToSend ms, UserColourTheme uct) { Color color = Color.Empty; if (uct != null) color = uct.getBibleTextColour(); string tmp = ""; Boolean is_last_verse_in_section = false; //int verse_end_id = 0; int current_chapter = -1; if (list.Count > 0) current_chapter = list[0].chapter.chapter_id; for (int i = 0; i < list.Count; i++) { if (list[i] != null) { if (list[i].chapter.chapter_id != current_chapter) { if(uct!=null) ms.Append("\r\n" + list[i].book.name + " " + list[i].chapter.chapter_id + "\r\n", color, TextMarkup.Bold); else ms.Append("\r\n" + list[i].book.name + " " + list[i].chapter.chapter_id + "\r\n", TextMarkup.Bold); } // verse_end_id = list[i].verse_id; is_last_verse_in_section = i == (list.Count - 1); if (i == 0) { appendText(ms, list[i], true, is_last_verse_in_section, uct); } else { appendText(ms, list[i], false, is_last_verse_in_section, uct); } } current_chapter = list[i].chapter.chapter_id; } // section += verse_end_id.ToString(); if (uct != null) ms.Append(tmp + "\r\n", color); else ms.Append(tmp + "\r\n"); }
protected void appendMessageThread( UserSession us, MessageToSend ms, VerseMessageThread vmt) { Boolean is_new = false; String verse_ref = ""; String message; List<VerseMessage> messages = vmt.getMessages(); VerseMessage first_vm = messages.First(); VerseMessage last_vm = messages.Last(); ms.AppendLine(""); ms.Append(createMessageLink(MENU_LINK_NAME, "*", MessageInboxHandler.OPEN_THREAD + vmt.thread_id)); //determine if there is a new message in this thread by comparing last updated and read dates. ms.Append(" "); DateTime last_mod_date = vmt.datetime_last_modified; VerseMessageParticipant vmp = vmt.getParticipant(us.user_profile.id); DateTime last_acc_date = DateTime.MaxValue; if (vmp != null) last_acc_date = vmp.datetime_last_read; is_new = last_mod_date > last_acc_date; String subject = vmt.subject; ms.Append("From: "); if (first_vm.sender_id == us.user_profile.id) { ms.AppendLine("You ", TextMarkup.Bold); } else { ms.AppendLine(" " + UserNameManager.getInstance().getUserName(first_vm.sender_id), TextMarkup.Bold); } ms.Append("To: "); List<VerseMessageParticipant> parts = vmt.getListOfParticipants(); String receivers = getRecieverString(us, parts,first_vm.sender_id); ms.AppendLine(receivers, TextMarkup.Bold); if (!VerseMessageThread.NOTIFICATION_THREAD.Equals(vmt.start_verse)) { verse_ref = BibleHelper.getVerseSectionReference(us, vmt.start_verse, vmt.end_verse); ms.AppendLine("Verse: " + verse_ref); } if (!(subject == null || subject.Equals("") || subject.Equals("NULL"))) { ms.AppendLine("Subject: '" + subject + "'"); //ms.Append(); //ms.AppendLine("'"); } message = last_vm.message_text; if(!(message== null || message.Equals("") || message.Equals("NULL"))) ms.AppendLine("Newest Message: " + StringUtils.getTextSummary(message, 4) + "...' ("+messages.Count+" messages)"); //ms.AppendLine(""); if (last_vm != null) { ms.Append("Last Updated by "); if (last_vm.sender_id == us.user_profile.id) { ms.Append("You ("); } else { ms.Append(UserNameManager.getInstance().getUserName(last_vm.sender_id) + " ("); } if (is_new) { ms.Append(DateUtils.RelativeDate(last_mod_date),TextMarkup.Bold); ms.AppendLine(")"); } else { ms.AppendLine(DateUtils.RelativeDate(last_mod_date) + ")"); } } ms.Append(createMessageLink(MENU_LINK_NAME, "[DELETE]", MessageInboxHandler.DELETE_THREAD + vmt.thread_id)); ms.AppendLine(" "); ms.Append("\r\n"); }
/*protected String parseSCTags( String text) { int b_index = text.IndexOf("scstart-"); String sc_text; string message_text = ""; if (b_index != -1) { int e_index = text.IndexOf("-scend"); string variable_name = text.Substring(b_index + 1, e_index - b_index - 1); sc_text = text.Substring(start_title_index, end_title_index - start_title_index ); message_text = parseMessage(us, message.Replace('[' + variable_name + ']', us.getVariable(variable_name))); } }*/ /*replace info tags and div tags*/ protected void parseText( MessageToSend ms, Verse verse, Boolean is_first_verse, Boolean is_last_verse, UserColourTheme uct) { Color color = Color.Empty; if (uct != null) color = uct.getBibleTextColour(); String tag_contents = ""; int start_title_index = -1; int end_title_index = -1; String paragraph_title = ""; Boolean start_of_verse = true; String message = parseSCTags(verse.text); message = parseXMLCodes(message); if (is_first_verse) { Verse prev_verse = verse.getPreviousVerse(); if (prev_verse != null) { String initial_title = getParagaphTitleFromVerse(prev_verse); //test if title is at beginning of verse.... if (initial_title != null) { //first test if title is at the beginning of string and String prev_verse_test = removeTags(prev_verse.text).Trim(); if (prev_verse_test.IndexOf(initial_title) != 0) { ms.Append("\r\n"); if(uct!=null) ms.Append(removeTags(initial_title), color,new TextMarkup[] { TextMarkup.Bold }); else ms.Append(removeTags(initial_title), new TextMarkup[] { TextMarkup.Bold }); ms.Append("\r\n"); } } } } int b_index = message.IndexOf('<'); if (b_index == -1) { if(uct!=null) ms.Append(message,color); else ms.Append(message); return; } while (b_index != -1) { int e_index = message.IndexOf('>'); if (e_index == -1) { Console.WriteLine("NO CLOSING TAG FOUND FOR A VERSE: " + message); return; } tag_contents = message.Substring(b_index + 1, e_index - b_index - 1); if (tag_contents.Contains(PARAGRAPH_TITLE_TAG)) { end_title_index = message.IndexOf("<lb>", e_index); start_title_index = message.IndexOf("<head>") + 6; // move past head tag also paragraph_title = message.Substring(start_title_index, end_title_index - start_title_index /*- 1*/); if ((is_first_verse || !is_last_verse) && paragraph_title != null && !paragraph_title.Trim().Equals("") && !(is_first_verse && is_last_verse && !start_of_verse)) { ms.Append("\r\n"); if(uct!=null) ms.Append(paragraph_title.Trim(),color, new TextMarkup[] { TextMarkup.Bold }); else ms.Append(paragraph_title.Trim(), new TextMarkup[] { TextMarkup.Bold }); ms.Append("\r\n"); ms.Append("\r\n"); } message = message.Remove(b_index, end_title_index - b_index + 4); } else if (tag_contents.Contains(PARAGRAPH_TAG)) { if (start_of_verse) { if(uct!=null) ms.Append(" (" + verse.verse_id + ") ",color, TextMarkup.Bold); else ms.Append(" (" + verse.verse_id + ") ", TextMarkup.Bold); start_of_verse = false; } if(uct!=null) ms.Append(removeTags(message.Substring(0, b_index)),color); else ms.Append(removeTags(message.Substring(0, b_index))); if(!(verse.chapter.chapter_id == 1 && verse.verse_id == 1)) { ms.Append("\r\n"); // ms.Append("\r\n"); } message = message.Remove(0, e_index+1); } /* else if (tag_contents.Equals(ITALIC_TAG)) { if (start_of_verse) { ms.Append(" (" + verse.verse_id + ") ", TextMarkup.Bold); start_of_verse = false; } ms.Append(message.Substring(0, b_index)); message = message.Remove(0, e_index + 1); //remove opening tag and previous text int e_italic_index = message.IndexOf("<" + END_ITALIC_TAG + ">"); ms.Append(message.Substring(0, e_italic_index), TextMarkup.Italics); message = message.Remove(0, e_italic_index+ 4); //remove closing tag and previous text } else if (tag_contents.Equals(BOLD_TAG)) { if (start_of_verse) { ms.Append(" (" + verse.verse_id + ") ", TextMarkup.Bold); start_of_verse = false; } ms.Append(message.Substring(0, b_index)); message = message.Remove(0, e_index + 1); //remove opening tag and previous text int e_italic_index = message.IndexOf("<" + END_BOLD_TAG + ">"); ms.Append(message.Substring(0, e_italic_index), TextMarkup.Bold); message = message.Remove(0, e_italic_index + 4); //remove closing tag and previous text }*/ else { message = message.Remove(b_index, e_index - b_index+1); } b_index = message.IndexOf('<'); } if (start_of_verse) { if(uct!=null) ms.Append(" (" + verse.verse_id + ") ", color, TextMarkup.Bold); else ms.Append(" (" + verse.verse_id + ") ", TextMarkup.Bold); } if (uct != null) { ms.Append(parseSCTags(removeTags(message)), color); } else { ms.Append(parseSCTags(removeTags(message))); } }
public override MessageToSend getOutputScreenMessage( UserSession us, MenuPage mp, MessageToSend ms, InputHandlerResult ihr) { ms.Append(MessageBuilder.Elements.CreateClearScreen()); if (!mp.GetType().FullName.Equals("MxitTestApp.VerseMenuPage"))//TODO: Should be constant throw new Exception("Invalid menu page passed into getScreen method "); VerseMenuPage omp = (VerseMenuPage)mp; ms.Append(omp.title + "\r\n", TextMarkup.Bold); ms.Append("\r\n"); ms.Append("\r\n"); if (ihr.error != null && ihr.action == InputHandlerResult.INVALID_MENU_ACTION) { ms.Append((string)ihr.error + "\r\n"); } Boolean should_display_conf_message = displayMessage(us, ms, ihr); if (should_display_conf_message) { return ms; } ms.Append(parseMessage(us, omp.message) + "\r\n"); /*else if (us.getVariable(FriendHandler.DELETED_FRIEND_NAME) != null) { friend_name = (String)us.removeVariable(FriendHandler.DELETED_FRIEND_NAME); ms.Append("You have removed " + friend_name + " from you buddy list."); ms.Append("\r\n"); ms.Append("\r\n"); }*/ if (us.friend_manager.getFriends().Count <= 0) { ms.Append("You dont have any buddies added, you need to first invite buddies in order to send Verses to them."); ms.Append("\r\n"); ms.Append("\r\n"); } else { Boolean recip_is_set = false; //check if recipient is set already if (us.hasVariable(ChooseFriendHandler.RECIPIENT_LIST) && ((List<long>)us.getVariableObject(ChooseFriendHandler.RECIPIENT_LIST)).Count > 0) { String friend_list = getCurrentSendList(us); ms.Append("To: "); ms.Append(friend_list); ms.Append(" "); ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", VerseMessageSendHandler.CHOOSE_FRIEND_ID)); recip_is_set = true; } else { ms.Append("To: "); ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", VerseMessageSendHandler.CHOOSE_FRIEND_ID)); ms.Append(" *"); } ms.Append("\r\n"); ms.Append("\r\n"); VerseSection vs = (VerseSection)us.getVariableObject("Browse.verse_section"); if (vs == null) { Console.WriteLine("Expected Browse.verse_section present, but not found"); } else { Verse start_verse = vs.start_verse; Verse end_verse = vs.end_verse; if (end_verse == null) { end_verse = BrowseBibleScreenOutputAdapter.getDefaultEndVerse(start_verse); } ms.Append("Verse: "); ms.Append(BibleHelper.getVerseSectionReference(start_verse, end_verse), TextMarkup.Bold); ms.Append("\r\n"); ms.Append("\r\n"); } if (us.hasVariable(MESSAGE_SUBJECT)) { String subject = us.getVariable(MESSAGE_SUBJECT); ms.Append("Subject: "); ms.Append(subject); ms.Append(" "); } else { ms.Append("Subject: "); } ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", VerseMessageSendHandler.ENTER_MESSAGE_SUBJECT)); ms.Append("\r\n"); ms.Append("\r\n"); if (us.hasVariable(MESSAGE_TEXT)) { String message = us.getVariable(MESSAGE_TEXT); ms.Append("Message: "); ms.Append(message); ms.Append(" "); } else { ms.Append("Message: "); } ms.Append(createMessageLink(MENU_LINK_NAME, "[ edit ]", VerseMessageSendHandler.ENTER_MESSAGE)); ms.Append("\r\n"); ms.Append("\r\n"); if (!recip_is_set) ms.AppendLine("Fields marked with * has to be set before you can send the message"); else ms.AppendLine(createMessageLink(MENU_LINK_NAME, "Send Message", VerseMessageSendHandler.SEND_MESSAGE)); } ms.AppendLine(""); appendBackMainLinks(us, ms); appendMessageConfig(true, ms); return ms; //return output; }
public override void addLinksToMessageFromList( UserSession us, List<MenuOptionItem> list, MessageToSend ms) { int count = (us.current_menu_page * PAGE_ITEM_COUNT) + 1; int starting_index = us.current_menu_page * PAGE_ITEM_COUNT; ms.AppendLine(); for (int i = starting_index; i < list.Count && i < starting_index + PAGE_ITEM_COUNT; i++) { TaggedVerseMenuOptionItem an_option = (TaggedVerseMenuOptionItem) list[i]; ms.Append(createMessageLink(MENU_LINK_NAME, count + ") ", an_option.link_val)); VerseTag verse_tag = an_option.verse_tag; String start_verse = verse_tag.start_verse; String end_verse = verse_tag.end_verse; /*if (verse_tag.datetime != null && verse_tag.datetime != DateTime.MinValue && !"".Equals(verse_tag.datetime)) { date_tagged = verse_tag.datetime.ToString("dd/MM/yy"); } else { date_tagged = ""; }*/ bool is_liked = verse_tag.isLikedByUser(us.user_profile.id); int like_count = verse_tag.getLikeCount(); String like_string; if (like_count == 0) { like_string = ""; } else if (is_liked && like_count == 1) { like_string = "(you like this)"; } else if (!is_liked && like_count == 1) { like_string = "(1 person likes this)"; } else if (is_liked && like_count == 2) { like_string = "(you and " + (like_count-1) + " other person like this)"; } else if (is_liked && like_count > 2) { like_string = "(you and " + (like_count-1) + " other people like this)"; } else if (!is_liked && like_count > 1) { like_string = "("+like_count + " people likes this)"; } else { like_string = ""; } String rel_date = DateUtils.RelativeDate(verse_tag.datetime); Verse s_v = Verse_Handler.getStartingVerse(us.user_profile.getDefaultTranslationId(), start_verse); Verse e_v; if (s_v != null) { if (end_verse == null || "".Equals(end_verse) || end_verse.Equals(start_verse)) e_v = null; else if ("NULL".Equals(end_verse)) e_v = BrowseBibleScreenOutputAdapter.getDefaultEndVerse(s_v); else e_v = Verse_Handler.getStartingVerse(us.user_profile.getDefaultTranslationId(), end_verse); String verse_summ = BibleContainer.getSummaryOfVerse(s_v, 7); String user_name = UserNameManager.getInstance().getUserName(verse_tag.user_id); String verse_ref = BibleHelper.getVerseSectionReferenceWithoutTranslation(s_v, e_v); if (start_verse == null || end_verse == null) { ms.Append("N/A"); } else { ms.Append(verse_ref,TextMarkup.Bold); ms.Append(" ("); ms.Append(rel_date,TextMarkup.Italics); ms.Append(") - " + verse_summ + "... "); ms.Append(like_string, TextMarkup.Bold); if (!is_liked) { ms.Append(createMessageLink(MENU_LINK_NAME, " [+]", LIKE_TAG + verse_tag.id)); } ms.AppendLine(""); ms.Append("Tagged by: "); ms.AppendLine(user_name,TextMarkup.Bold); //ms.Append(like_string); } } else { ms.Append("Currently not available in your chosen translation (this could be due to a S/W bug)."); } ms.Append("\r\n"); count++; } appendRefreshLink(ms); }
public bool appendShinkaBannerAd(ref MessageToSend messageToSend, MXit.User.UserInfo userInfo) { bool gotShinkaAd = false; try { if (AdvertConfig.isShowShinkaBannerAd) { String MxitUserID = userInfo.UserId; MXit.User.GenderType userGenderType = userInfo.Gender; int displayWidth = userInfo.DeviceInfo.DisplayWidth; int displayHeight = userInfo.DeviceInfo.DisplayHeight; int userAge = AgeInYears(userInfo.DateOfBirth); BannerAd adTodisplay; gotShinkaAd = AdvertHelper.Instance.getBannerAd(MxitUserID, userGenderType, displayWidth, displayHeight, userAge, out adTodisplay); if (gotShinkaAd) { if (adTodisplay.creativeType == "image") { IMessageElement inlineImage = MessageBuilder.Elements.CreateInlineImage(adTodisplay.adImage, ImageAlignment.Center, TextFlow.AloneOnLine, 100); messageToSend.Append(inlineImage); } messageToSend.Append("Go to ", CSS.Ins.clr["light"], CSS.Ins.mrk["d"]); messageToSend.AppendLine(MessageBuilder.Elements.CreateLink(adTodisplay.altText, ".clickad~" + adTodisplay.clickURL)); messageToSend.AppendLine(); //register impression for the bannerad display HttpWebRequest req = (HttpWebRequest)WebRequest.Create(adTodisplay.impressionURL); req.UserAgent = "Mozilla Compatible mxit_client"; req.Headers.Add("HTTP_X_DEVICE_USER_AGENT", "Mozilla Compatible mxit_client"); req.Headers.Add("HTTP_X_FORWARDED_FOR", MxitUserID); req.Headers.Add("HTTP_REFERER", AdvertConfig.appID); req.Timeout = AdvertConfig.bannerAdTimeout; req.Proxy = null; req.KeepAlive = false; req.ServicePoint.ConnectionLeaseTimeout = 1000; req.ServicePoint.MaxIdleTime = 1000; QueueHelper_HTTP.Instance.QueueItem(req); } } //zama end } catch (Exception ex) { logger.Error("[" + MethodBase.GetCurrentMethod().Name + " - Error getting or showing Shinka ad: " + ex.ToString()); } return gotShinkaAd; //so that the calling function knows if an ad was displayed }
public void appendCurrentSendList( UserSession us, MessageToSend ms) { if (us.hasVariable(ChooseFriendHandler.RECIPIENT_LIST)) { List<long> recipient_list = (List<long>)us.getVariableObject(ChooseFriendHandler.RECIPIENT_LIST); ms.AppendLine(); ms.Append("Recipients: ", TextMarkup.Bold); if (recipient_list.Count > 0) { for (int i = 0; i < recipient_list.Count; i++) { ms.Append(UserNameManager.getInstance().getUserName(recipient_list[i]) + " "); ms.Append(createMessageLink(MENU_LINK_NAME, "[-]", "REMOVE_" + recipient_list[i])); if (recipient_list.Count > 1 && (i != recipient_list.Count - 1)) ms.Append(", "); } } else { ms.Append("Empty"); } ms.AppendLine(); } else { ms.Append("Recipients: ", TextMarkup.Bold); ms.Append("Empty"); ms.AppendLine(); } }
public void appendBackMainLinks(UserSession us, MessageToSend ms) { if (!us.current_menu_loc.Equals(MenuDefinition.ROOT_MENU_ID)) { MenuManager mm = MenuManager.getInstance(); MenuPage mp; mp = mm.menu_def.getMenuPage(us.current_menu_loc); int count_links = 0; if (mp.isBackLinkEnabled()) count_links++; if (mp.isMainLinkEnabled()) count_links++; if (mp.hasHelpPage()) count_links++; if (mp.isBackLinkEnabled()) { ms.Append(createMessageLink(MENU_LINK_NAME, "Back", "BACK")); if (mp.isMainLinkEnabled() || mp.hasHelpPage()) ms.Append(" | "); } if (mp.isMainLinkEnabled()) { ms.Append(createMessageLink(MENU_LINK_NAME, "Main", "MAIN")); } if (mp.hasHelpPage()) { if (mp.isMainLinkEnabled()) ms.Append(" | "); ms.Append(createMessageLink(MENU_LINK_NAME, "Help", "HELP")); } } }