protected override void Page_Load(object sender, EventArgs e)
        {
            RequireClientAuthentication();

            if (CustomerUtilities.IsLoggedIn() == true)
            {
                phonebook = ObjectFromQueryString<Phonebook>();
                fieldLegalValueConfiguration = ObjectFromQueryString<FieldLegalValueConfiguration>();

                if (phonebook == null || fieldLegalValueConfiguration == null)
                {
                    Response.Redirect(UrlManager.Root);
                }

                SetHeadingControlText("Auto-correct data");
                SetupRibbon();
                SetupPopup();
            }

            if (IsPostBack == false)
            {
                Session[DataSourceSessionKey] = null;
            }
            else if(Session[DataSourceSessionKey] != null)
            {
                ChangeLogGridView.DataSource = Session[DataSourceSessionKey];
                ChangeLogGridView.DataBind();
            }

            base.Page_Load(sender, e);
        }
        protected void PhonebooksGridView_RowInserting(object sender, DevExpress.Web.Data.ASPxDataInsertingEventArgs e)
        {
            ASPxGridView grid = sender as ASPxGridView;

            if (CustomerUtilities.IsLoggedIn() == true)
            {
                using (var uow = new UnitOfWork())
                {
                    Phonebook phonebook = new Phonebook(uow);
                    SetPhonebookValues(phonebook, e.NewValues);
                    phonebook.Customer = uow.GetObjectByKey<Customer>(CustomerUtilities.CurrentCustomer().Oid);

                    ValidationResult validation = new PhonebookValidator().Validate(phonebook);

                    if (validation.IsValid)
                    {
                        uow.CommitChanges();
                    }
                    else
                    {
                        e.Cancel = true;
                        uow.Dispose();
                    }
                }
            }
            else
            {
                Response.Redirect(UrlManager.Root);
            }

            EndEditing(grid, e);
        }
Ejemplo n.º 3
0
    public static void Main()
    {
        var phones = ReadPhones("../../phones.txt");
        var phonebook = new Phonebook(phones);

        var commands = ReadCommands("../../commands.txt");
        ProcessCommands(commands, phonebook);
    }
 public static AgentDesktopImportSettings Default(Phonebook phonebook, string csvRelativeFilePath)
 {
     return new AgentDesktopImportSettings
     {
         ExePath = HttpContext.Current.Server.MapPath("~\\Executable\\Farlon.AgentDesktop.Import.exe"),
         CsvFilePath = HttpContext.Current.Server.MapPath(csvRelativeFilePath),
         Phonebook = phonebook
     };
 }
Ejemplo n.º 5
0
        /// <summary>
        /// Редактировать группу телефонных номеров
        /// </summary>
        /// <returns>Возвращает новую группу телефонных номеров, созданную на основе заданной, 
        /// или null в случае отмены</returns>
        public static Phonebook.PhoneGroup EditPhoneGroup(Phonebook.PhoneGroup phoneGroup)
        {
            if (phoneGroup == null)
                throw new ArgumentNullException("phoneGroup");

            FrmPhoneGroup frmPhoneGroup = new FrmPhoneGroup();
            frmPhoneGroup.oldGroup = phoneGroup;
            frmPhoneGroup.ShowDialog();
            return frmPhoneGroup.newGroup;
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Редактировать телефонный номер
        /// </summary>
        /// <returns>Возвращает новый телефонный номер, созданный на основе заданного, 
        /// или null в случае отмены</returns>
        public static Phonebook.PhoneNumber EditPhoneNumber(Phonebook.PhoneNumber phoneNumber)
        {
            if (phoneNumber == null)
                throw new ArgumentNullException("phoneNumber");

            FrmPhoneNumber frmPhoneGroup = new FrmPhoneNumber();
            frmPhoneGroup.oldNumber = phoneNumber;
            frmPhoneGroup.ShowDialog();
            return frmPhoneGroup.newNumber;
        }
Ejemplo n.º 7
0
        private TreeNode nodePhonebook;             // узел справочника


        /// <summary>
        /// Конструктор, ограничивающий создание формы без параметров
        /// </summary>
        private FrmPhonebook()
        {
            InitializeComponent();

            appDirs = null;
            phonebook = new Phonebook();
            modified = false;
            copiedNumber = null;
            nodePhonebook = tvPhonebook.Nodes["nodePhonebook"];
        }
        public static void TranslateValuesIfNecessary(this Employee employee, FieldLegalValueConfiguration fieldLegalValueConfiguration, Phonebook phonebook)
        {
            if (fieldLegalValueConfiguration != null)
            {
                var translator = new FieldTranslator(fieldLegalValueConfiguration, phonebook, true);
                TranslationLogEntry logEntry = null;
                translator.TranslateValuesForEmployee(employee, fieldLegalValueConfiguration, Utilities.GetPropertyNames<Employee>(), out logEntry);

                System.Diagnostics.Debug.WriteLine(String.Format("Changed {0} values", translator.Changes.Count));
            }
            else
            {
                System.Diagnostics.Debug.WriteLine("fieldLegalValueConfiguration was null so changed 0 values");
            }
        }
        public static List<string> DatabaseValuesForFieldName(this FieldLegalValueConfiguration fieldLegalValueConfiguration, string fieldName, Phonebook phonebook)
        {
            List<string> rc = new List<string>();

            if (phonebook != null && fieldName != null)
            {
                foreach (Employee employee in phonebook.Employees.ToList<Employee>())
                {
                    string value = Convert.ToString(employee.GetMemberValue(fieldName));
                    rc.Add(value);
                }
            }

            return rc.Where(x => String.IsNullOrEmpty(x) == false).Distinct().ToList();
        }
Ejemplo n.º 10
0
        internal override void LoadContent()
        {
            _batch = new SpriteBatch(Controller.GraphicsDevice);

            _arrow           = Controller.Content.LoadDirect <Texture2D>("Textures/UI/Pokegear/arrow.png");
            _buttons         = Controller.Content.LoadDirect <Texture2D>("Textures/UI/Pokegear/buttons.png");
            _switchButton    = Controller.Content.LoadDirect <Texture2D>("Textures/UI/Pokegear/switchButton.png");
            _timeBox         = Controller.Content.LoadDirect <Texture2D>("Textures/UI/Pokegear/time.png");
            _mapOverlay      = Controller.Content.LoadDirect <Texture2D>("Textures/UI/Pokegear/mapOverlay.png");
            _phoneBackground = Controller.Content.LoadDirect <Texture2D>("Textures/UI/Pokegear/phoneBackground.png");
            _reception       = Controller.Content.LoadDirect <Texture2D>("Textures/UI/Pokegear/reception.png");

            _fontRenderer = new PokemonFontRenderer();
            _fontRenderer.LoadContent();

            _contactsFontRenderer = new PokemonFontRenderer();
            _contactsFontRenderer.LoadContent();
            _contactsFontRenderer.LineGap = 0;

            _exitTextbox = new Textbox();
            _exitTextbox.LoadContent();
            _exitTextbox.ShowAndSkip("Press any button\nto exit.");
            _exitTextbox.OffsetY = (int)(Border.SCREEN_HEIGHT * Border.SCALE * Border.UNIT - Textbox.HEIGHT * Border.UNIT * Border.SCALE);

            _phoneTextbox = new Textbox();
            _phoneTextbox.LoadContent();
            _phoneTextbox.ShowAndSkip("Whom do you want\nto call?");
            _phoneTextbox.OffsetY = (int)(Border.SCREEN_HEIGHT * Border.SCALE * Border.UNIT - Textbox.HEIGHT * Border.UNIT * Border.SCALE);

            _phoneOptionsBox = new OptionsBox();
            _phoneOptionsBox.LoadContent();
            _phoneOptionsBox.OffsetY     = _phoneTextbox.OffsetY;
            _phoneOptionsBox.OffsetX    += (int)(Border.SCALE * Border.UNIT * 9);
            _phoneOptionsBox.BufferUp    = 1;
            _phoneOptionsBox.BufferRight = 1;

            _deleteNumberOptionsBox = new OptionsBox();
            _deleteNumberOptionsBox.LoadContent();
            _deleteNumberOptionsBox.OffsetY  = _phoneTextbox.OffsetY;
            _deleteNumberOptionsBox.OffsetX += (int)(Border.SCALE * Border.UNIT * 14);

            // TODO: get correct location from world
            _mapScreen = new TownMapScreen(null, "kanto", "Pallet Town");
            _mapScreen.LoadContent();

            _phonebook = Phonebook.Load();
        }
Ejemplo n.º 11
0
        private void GetPhoneContacts()
        {
            try
            {
                using (var phones = Android.App.Application.Context.ContentResolver.Query(ContactsContract.CommonDataKinds.Phone.ContentUri, null, null, null, null))
                {
                    if (phones != null)
                    {
                        while (phones.MoveToNext())
                        {
                            try
                            {
                                string name        = phones.GetString(phones.GetColumnIndex(ContactsContract.Contacts.InterfaceConsts.DisplayName));
                                string phoneNumber = phones.GetString(phones.GetColumnIndex(ContactsContract.CommonDataKinds.Phone.Number));

                                string[] words   = name.Split(' ');
                                var      contact = new Phonebook();
                                contact.FirstName = words[0];
                                if (words.Length > 1)
                                {
                                    contact.LastName = words[1];
                                }
                                else
                                {
                                    contact.LastName = "";
                                }
                                contact.Phone       = phoneNumber;
                                contact.DisplayName = name;
                                phoneContacts.Add(contact);
                            }
                            catch
                            {
                                return;
                            }
                        }
                        phones.Close();
                    }
                }
            }
            catch
            {
                return;
            }

            return;
        }
Ejemplo n.º 12
0
        public void Update(Phonebook phonebook)
        {
            try
            {
                if (phonebook.State == State.Modified)
                {
                    _dbContext.Update(phonebook.ConvertToEntity());
                    return;
                }

                if (phonebook.Entries.Any())
                {
                    var entry  = phonebook.Entries.First();
                    var entity = _dbContext.FindByIdAsync(phonebook.Id).Result;
                    switch (entry.State)
                    {
                    case State.Added:
                        entity.Entries.Add(entry.ConvertToEntity());
                        _dbContext.Update(entity);
                        return;

                    case State.Modified:
                        var modifiedEntry = entity.Entries.First(x => x.Id == entry.Id);
                        modifiedEntry.State       = EntityState.Modified;
                        modifiedEntry.Name        = entry.Name;
                        modifiedEntry.PhoneNumber = entry.PhoneNumber;
                        _dbContext.Update(entity);
                        return;

                    case State.Deleted:
                        var deletedEntry = entity.Entries.First(x => x.Id == entry.Id);
                        entity.Entries.Remove(deletedEntry);
                        _dbContext.Update(entity);
                        return;

                    default:
                        throw new Exception("State unknown.");
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.Log(LogLevel.Critical, ex);
                throw new Exception(ex.Message);
            }
        }
        public PhonebookController() : base()
        {
            Phonebook p1 = new Phonebook {
                Name = "Ronan", Number = "1111", Address = "1 Main Street"
            };
            Phonebook p2 = new Phonebook {
                Name = "James", Number = "2222", Address = "2 Main Street"
            };
            Phonebook p3 = new Phonebook {
                Name = "Pamela", Number = "3333"
            };

            pCtx.Phonebooks.Add(p1);
            pCtx.Phonebooks.Add(p2);
            pCtx.Phonebooks.Add(p3);
            pCtx.SaveChanges();
        }
 [Route("DeleteEntry")] // http://localhost:51275/api/Phonebook/DeleteEntry?Number=1111 ** will Delete Ronan
 public IHttpActionResult DeleteEntry([FromBody] Phonebook contact)
 {
     using (PhonebookContext db = new PhonebookContext())
     {
         var matchNumber = db.Phonebooks.FirstOrDefault(p => p.Number.ToUpper() == contact.Number.ToUpper());
         if (matchNumber == null)
         {
             return(BadRequest("Number not in DB")); // might update but means wont be added to DB - this is a 400
         }
         else
         {
             db.Phonebooks.Remove(matchNumber);
             db.SaveChanges();
             return(Ok());
         }
     }
 }
Ejemplo n.º 15
0
 public ActionResult Phonebook()
 {
     using (PhonebookContext db = new PhonebookContext())
     {
         var phonebook = db.Phonebooks;
         var contacts  = new List <Phonebook>();
         foreach (var contact in phonebook)
         {
             var phonebookContact = new Phonebook();
             phonebookContact.ID          = contact.ID;
             phonebookContact.FirstName   = contact.FirstName;
             phonebookContact.LastName    = contact.LastName;
             phonebookContact.PhoneNumber = contact.PhoneNumber;
             contacts.Add(phonebookContact);
         }
         return(View(contacts));
     }
 }
 public IHttpActionResult AddEntry([FromBody] Phonebook contact)
 {
     using (PhonebookContext db = new PhonebookContext())
     {
         var matchNumber = db.Phonebooks.FirstOrDefault(p => p.Number.ToUpper() == contact.Number.ToUpper());
         var matchName   = db.Phonebooks.FirstOrDefault(p => p.Name.ToUpper() == contact.Name.ToUpper());
         if ((matchNumber != null) || (matchName != null))
         {
             return(BadRequest()); // might update but means wont be added to DB - this is a 400
         }
         else
         {
             db.Phonebooks.Add(contact);
             db.SaveChanges();
             return(Ok());
         }
     }
 }
        protected void EditSelectedEmployeesSave(List<string> employeeIds)
        {
            foreach (string id in employeeIds)
            {
                if (String.IsNullOrEmpty(id) == false)
                {
                    Guid guid = new Guid(id);
                    Employee employee = ObjectFromSessionWithId<Employee>(guid, XpoHelper.GetNewSession());
                    employee.BindValuesFromFormLayout(EditSelectedEmployeesFormLayout, true);
                    employee.Save();

                    phonebook = ObjectFromQueryString<Phonebook>(XpoHelper.GetNewSession());
                    EmployeesGridView.DataBind(phonebook.Employees);

                    StatusMessage.ShowMessageWithHeader("Success!", String.Format("Successfully updated {0} employees!", employeeIds.Count()), Views.Controls.MessageControlType.Positive);
                }
            }
        }
Ejemplo n.º 18
0
        public static PhonebookViewModel ConvertToPhonebookViewModelLite(this Phonebook Phonebook)
        {
            PhonebookViewModel PhonebookViewModel = new PhonebookViewModel()
            {
                Id         = Phonebook.Id,
                Identifier = Phonebook.Identifier,

                Code = Phonebook.Code,
                Name = Phonebook.Name,

                Address = Phonebook.Address,

                IsActive = Phonebook.Active,

                UpdatedAt = Phonebook.UpdatedAt,
                CreatedAt = Phonebook.CreatedAt
            };

            return(PhonebookViewModel);
        }
Ejemplo n.º 19
0
        static void Main(string[] args)
        {
            Contact dueño     = new Contact("NombreDueño", "0999999", "dueñ[email protected]");
            Contact contacto1 = new Contact("Nombre1", "+59899742172", "*****@*****.**");

            contacto1.TwitterID = "13960658118";
            Contact contacto2 = new Contact("Nombre2", "+59899742172", "*****@*****.**");

            contacto2.TwitterID = "2230668516";

            Phonebook lista = new Phonebook(dueño);

            lista.AddContact(contacto1);
            lista.AddContact(contacto2);

            Message mensajeW = new Message(contacto1, contacto2);

            mensajeW.Text = "Hola";
            WhatsAppChannel wpp = new WhatsAppChannel();

            wpp.Send(mensajeW);

            Message mensajeT = new Message(contacto1, contacto2);

            mensajeT.Text = "Hola";
            TwitterChannel twitter = new TwitterChannel();

            twitter.Send(mensajeT);

            // Crear el contacto dueño

            // Crear la lista de contactos

            // Agregar contactos a la lista

            // Enviar un correo a algunos contactos

            // Enviar un WhatsApp a algunos contactos

            // Enviar un SMS a algunos contactos
        }
Ejemplo n.º 20
0
        public Phonebook Create(Phonebook Phonebook)
        {
            if (context.Phonebooks.Where(x => x.Identifier != null && x.Identifier == Phonebook.Identifier).Count() == 0)
            {
                Phonebook.Id = 0;

                Phonebook.Code   = GetNewCodeValue(Phonebook.CompanyId ?? 0);
                Phonebook.Active = true;

                Phonebook.UpdatedAt = DateTime.Now;
                Phonebook.CreatedAt = DateTime.Now;

                context.Phonebooks.Add(Phonebook);
                return(Phonebook);
            }
            else
            {
                // Load Phonebook that will be updated
                Phonebook dbEntry = context.Phonebooks
                                    .FirstOrDefault(x => x.Identifier == Phonebook.Identifier && x.Active == true);

                if (dbEntry != null)
                {
                    dbEntry.CompanyId      = Phonebook.CompanyId ?? null;
                    dbEntry.CreatedById    = Phonebook.CreatedById ?? null;
                    dbEntry.CountryId      = Phonebook.CountryId;
                    dbEntry.RegionId       = Phonebook.RegionId;
                    dbEntry.MunicipalityId = Phonebook.MunicipalityId ?? null;
                    dbEntry.CityId         = Phonebook.CityId ?? null;
                    // Set properties
                    dbEntry.Code    = Phonebook.Code;
                    dbEntry.Name    = Phonebook.Name;
                    dbEntry.Address = Phonebook.Address;

                    // Set timestamp
                    dbEntry.UpdatedAt = DateTime.Now;
                }

                return(dbEntry);
            }
        }
Ejemplo n.º 21
0
    // Executes each command and searches the phonebook
    private static void ProcessCommands(IEnumerable<string> commands, Phonebook phonebook)
    {
        foreach (var command in commands)
        {
            Console.WriteLine("> " + command);
            var args = command.Substring(5, command.Length - 6);
            var searchTerms = args.Split(new[] { ", " }, StringSplitOptions.RemoveEmptyEntries);

            try
            {
                var entries = phonebook.Find(searchTerms);
                Console.WriteLine(string.Join("\n", entries));
            }
            catch (KeyNotFoundException)
            {
                Console.WriteLine("Not found: {0}", args);
            }

            Console.WriteLine("----------------------------------------------");
        }
    }
        protected override void Page_Load(object sender, EventArgs e)
        {
            RequireClientAuthentication();

            SelectFileManager.ClientVisible = false;

            if (CustomerUtilities.IsLoggedIn() == true)
            {
                phonebook = ObjectFromQueryString<Phonebook>();

                if (phonebook != null)
                {
                    SelectFileManager.ClientVisible = true;
                    SelectFileManager.Settings.RootFolder = CustomerUtilities.CurrentCustomer().PathForFiles();
                    SetHeadingControlText(phonebook.Name, "Import");
                    SetupRibbon();
                }
            }

            base.Page_Load(sender, e);
        }
Ejemplo n.º 23
0
        public HttpResponseMessage Post([FromBody] Phonebook phonebook)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var phonebookId = this.phonebookRepository.AddNewPhonebookRecord(phonebook);

                    return(Request.CreateResponse(HttpStatusCode.OK, phonebookId));
                }
                else
                {
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
                }
            }
            catch (Exception ex)
            {
                //Log exception by using log4net.
                return(InternalServerErrorMessage());
            }
        }
Ejemplo n.º 24
0
    public static void Main()
    {
        var phoneBook = new Phonebook <string, string>();

        string input;

        while ((input = Console.ReadLine()) != "search")
        {
            var tokens      = input.Split('-');
            var name        = tokens[0];
            var phoneNumber = tokens[1];

            phoneBook.Add(name, phoneNumber);
        }

        while ((input = Console.ReadLine()) != "end")
        {
            Console.WriteLine(phoneBook.Contains(input)
                ? $"{input} -> {phoneBook[input]}"
                : $"Contact {input} does not exist.");
        }
    }
Ejemplo n.º 25
0
        List <Message> messageList;    // список сообщений, полученных GSM-терминалом


        /// <summary>
        /// Конструктор
        /// </summary>
        public KpSmsLogic(int number)
            : base(number)
        {
            primary     = false;
            phonebook   = null;
            messageList = new List <Message>();
            CanSendCmd  = true;

            List <KPTag> kpTags = new List <KPTag>();

            if (Localization.UseRussian)
            {
                kpTags.Add(new KPTag(1, "Связь"));
                kpTags.Add(new KPTag(2, "Кол-во событий"));
            }
            else
            {
                kpTags.Add(new KPTag(1, "Connection"));
                kpTags.Add(new KPTag(2, "Event count"));
            }
            InitKPTags(kpTags);
        }
Ejemplo n.º 26
0
        /// <summary>
        /// Выполнить действия при запуске линии связи
        /// </summary>
        public override void OnCommLineStart()
        {
            // определение, является ли КП основным на линии связи
            // основным автоматически считается первый КП на линии связи
            object primaryObj;

            if (CommonProps.TryGetValue("KpSmsPrimary", out primaryObj))
            {
                primary   = false;
                phonebook = null;
            }
            else
            {
                primary = true;
                CommonProps.Add("KpSmsPrimary", Caption);

                // загрузка телефонного справочника
                string fileName = AppDirs.ConfigDir + Phonebook.DefFileName;
                if (File.Exists(fileName))
                {
                    WriteToLog(Localization.UseRussian ?
                               "Загрузка телефонного справочника" :
                               "Loading phone book");
                    phonebook = new Phonebook();
                    string errMsg;
                    if (!phonebook.Load(fileName, out errMsg))
                    {
                        ScadaUtils.ShowError(errMsg);
                    }
                }
                else
                {
                    phonebook = null;
                    WriteToLog(Localization.UseRussian ?
                               "Телефонный справочник отсутствует" :
                               "Phone book is missing");
                }
            }
        }
Ejemplo n.º 27
0
        static void Main(string[] args)
        {
            // Crear el contacto dueño
            Contact contact = new Contact("Test");

            // Crear la lista de contactos
            Phonebook phonebook = new Phonebook(contact);

            // Agregar contactos a la lista
            phonebook.AddContact("Gms", null, "+11111111111");

            // Enviar un correo a algunos contactos


            // Enviar un WhatsApp a algunos contactos
            Message wppMsg = new Message("Gms", "+11111111111");

            wppMsg.Text = "Mensaje de prueba2";

            const string    accountSid = "";
            const string    authToken  = "";
            IMessageChannel wppChannel = new WhatsAppMessageChanel(accountSid, authToken);

            phonebook.SendMessage(wppChannel, wppMsg, new string[] { "Gms" });

            // Enviar un mensaje por Twitter a algunos contactos

            string         consumerKey       = "";
            string         consumerKeySecret = "";
            string         accessToken       = "";
            string         accessTokenSecret = "";
            TwitterChannel twitter           = new TwitterChannel(consumerKey, consumerKeySecret, accessToken, accessTokenSecret);

            phonebook.AddContact("Gio", "809185528457338880");
            Message twittermessage = new Message("PooUcu", "809185528457338880");

            twittermessage.Text = "Hola! Todo bien?";
            phonebook.SendMessage(twitter, twittermessage, new string[] { "Gio" });
        }
Ejemplo n.º 28
0
        public static void Main()
        {
            var allContacts = File.ReadAllLines(phonesPath);
            var commands = File.ReadAllLines(commandsPath);

            var phonebook = new Phonebook();

            foreach (var line in allContacts)
            {
                phonebook.Add(line);
            }

            foreach (var command in commands)
            {
                Console.WriteLine("Current command " + command);
                var checkCommand = command.IndexOf("find", StringComparison.InvariantCultureIgnoreCase);

                if (checkCommand < 0)
                {
                    Console.WriteLine("Invalid command!");
                    continue;
                }

                if (command.IndexOf(", ", StringComparison.InvariantCultureIgnoreCase) < 0)
                {
                    var name = command.Substring(checkCommand + 4).Trim(new[] { '(', ')' });

                    Console.WriteLine(string.Join(Environment.NewLine, phonebook.Find(name)));
                }
                else
                {
                    var nameAndTown = command.Substring(checkCommand + 4).Trim(new[] { '(', ')' }).Split(',').Select(x => x.Trim()).ToList();

                    Console.WriteLine(string.Join(Environment.NewLine, phonebook.Find(nameAndTown[0], nameAndTown[1])));
                }

                Console.WriteLine(new string('-', 50));
            }
        }
        public ActionResult AddEditPhonebookRecord(Phonebook phonebook)
        {
            if (ModelState.IsValid)
            {
                var token  = this.ValidateAndGetToken();
                var result = false;
                if (phonebook.Id > 0)
                {
                    result = this.phonebookService.UpdatePhonebookRecord(token, phonebook);
                }
                else
                {
                    result = this.phonebookService.AddPhonebookRecord(token, phonebook) > 0;
                }

                if (result)
                {
                    return(IndexView(token));
                }
            }
            return(View(phonebook));
        }
Ejemplo n.º 30
0
        public async Task <bool> SavePhonebookAsync(CreatePhonebookCommand createPhonebookCommand)
        {
            Phonebook newPhonebook = new Phonebook()
            {
                Name = createPhonebookCommand.Name,
            };

            createPhonebookCommand.Entries.ForEach(e =>
            {
                Entry.Entry newEntry = new Entry.Entry
                {
                    Name        = e.Name,
                    PhoneNumber = e.PhoneNumber,
                };

                newPhonebook.Entries.Add(newEntry);
            });

            this._repository.Add(newPhonebook);

            return(await this._repository.SaveChanges().ConfigureAwait(false));
        }
        public void Setup()
        {
            //InMemory DB did not catch violation of foreign key constraint due to incorrect context configuration
            options = new DbContextOptionsBuilder <AbsaPhonebookContext>().UseSqlServer(@"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=AbsaPhonebook;Integrated Security=True;Connect Timeout=60;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False").Options;
            //"Data Source=(local);Initial Catalog=AbsaPhonebook;Integrated Security=True;" - MSSQL connection string
            var context = new AbsaPhonebookContext(options);

            context.RemoveRange(context.Phonebook);
            context.RemoveRange(context.PhonebookEntry);
            context.SaveChanges();

            phonebook      = PhonebookFactory.Create();
            phonebook.Name = "Stellenbosch Directory";

            phonebook.PhonebookEntries.Add(CreateEntry(phonebook, "Dave Worthington", "021979452"));
            phonebook.PhonebookEntries.Add(CreateEntry(phonebook, "Bill Lumsden", "0215554334"));
            repository      = new PhonebookRepository(context);
            entryRepository = new PhonebookEntryRepository(context);

            repository.Add(phonebook);
            repository.Commit();
        }
Ejemplo n.º 32
0
        static void Main(string[] args)
        {
            // Crear el contacto dueño
            Contact   owners = new Contact("Matias");
            Phonebook owner  = new Phonebook(owners);

            // Crear la lista de contactos

            List <Contact> contactList = new List <Contact>();
            Contact        contact1    = new Contact("Mateo");
            Contact        contact2    = new Contact("Francisco");
            Contact        contact3    = new Contact("Matias");

            // Agregar contactos a la lista
            contactList.Add(contact1);
            contactList.Add(contact2);
            contactList.Add(contact3);
            owner.persons = contactList;

            //Creo el mensaje
            Message m = new Message(owners, contact1);

            m.Text = "Hola";


            // Enviar un WhatsApp a algunos contactos
            IMessageChannel message;

            message = new WhatsApp();
            message.Send(m);

            // Enviar un twitter a algunos contactos
            IMessageChannel message1;

            message1 = new Twitter();
            message1.Send(m);
        }
Ejemplo n.º 33
0
            static void Main()
            {
                bool isExecuting = true;
                PhonebookCommandResolver resolver = new PhonebookCommandResolver();
                PhonebookCommandExecutor executor = new PhonebookCommandExecutor();
                IPhonebookRepository phonebook = new Phonebook();

                while (isExecuting)
                {
                    string commandString = Console.ReadLine();
                    if (commandString == "End" || commandString == null)
                    {
                        isExecuting = false;
                        break;
                    }

                    int openBracketIndex;
                    string commandName = resolver.GetCommandName(commandString, out openBracketIndex);

                    if (!commandString.EndsWith(")"))
                    {
                        throw new InvalidOperationException("Invalid command.");
                    }

                    string commandBody = commandString.Substring(openBracketIndex + 1, commandString.Length - openBracketIndex - 2);
                    string[] commandParams = commandBody.Split(',');

                    for (int j = 0; j < commandParams.Length; j++)
                    {
                        commandParams[j] = commandParams[j].Trim();
                    }

                    CommandType type = resolver.GetCommandType(commandName, commandParams);
                    executor.ExecuteCommand(type, commandParams, phonebook, output);
                }
                Console.Write(output);
            }
Ejemplo n.º 34
0
 /// <summary>
 /// Удалить телефонный номер из справочника и из дерева
 /// </summary>
 private void RemoveNumber(Phonebook.PhoneGroup group, TreeNode groupNode, int numberInd)
 {
     group.PhoneNumbers.RemoveAt(numberInd);
     groupNode.Nodes.RemoveAt(numberInd);
     if (groupNode.Nodes.Count == 0)
         groupNode.ImageKey = groupNode.SelectedImageKey = "folder_closed.png";
 }
Ejemplo n.º 35
0
 /// <summary>
 /// Вставить телефонный номер в справочник и в дерево или обновить существующий номер
 /// </summary>
 private void InsertOrUpdateNumber(Phonebook.PhoneGroup group, TreeNode groupNode, Phonebook.PhoneNumber number)
 {
     if (number != null)
     {
         int ind = group.FindPhoneNumberIndex(number.Number);
         if (ind < 0)
         {
             InsertNumber(group, groupNode, number);
             Modified = true;
         }
         else if (MessageBox.Show(KpPhrases.UpdatePhoneNumberConfirm, CommonPhrases.QuestionCaption,
             MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
         {
             RemoveNumber(group, groupNode, ind);
             InsertNumber(group, groupNode, number);
             Modified = true;
         }
     }
 }
Ejemplo n.º 36
0
 /// <summary>
 /// Вставить телефонный номер в справочник и в дерево, проверив уникальность номера
 /// </summary>
 private void InsertNumber(Phonebook.PhoneGroup group, TreeNode groupNode, Phonebook.PhoneNumber number)
 {
     int ind = group.FindPhoneNumberInsertIndex(number);
     group.PhoneNumbers.Insert(ind, number);
     TreeNode node = CreateNumberNode(number);
     groupNode.Nodes.Insert(ind, node);
     groupNode.ImageKey = groupNode.SelectedImageKey = "folder_open.png";
     tvPhonebook.SelectedNode = node;
 }
Ejemplo n.º 37
0
 public void Setup()
 {
     phonebook = new Phonebook();
 }
Ejemplo n.º 38
0
        public PhonebookResponse Create(PhonebookViewModel re)
        {
            PhonebookResponse response = new PhonebookResponse();

            try
            {
                // Backup notes
                List <PhonebookNoteViewModel> PhonebookNotes = re.PhonebookNotes?.ToList();
                re.PhonebookNotes = null;

                // Backup documents
                List <PhonebookDocumentViewModel> PhonebookDocuments = re.PhonebookDocuments?.ToList();
                re.PhonebookDocuments = null;

                // Backup phone
                List <PhonebookPhoneViewModel> PhonebookPhones = re.PhonebookPhones?.ToList();
                re.PhonebookPhones = null;

                Phonebook createdPhonebook = unitOfWork.GetPhonebookRepository().Create(re.ConvertToPhonebook());

                // Update notes
                if (PhonebookNotes != null && PhonebookNotes.Count > 0)
                {
                    // Items for create or update
                    foreach (var PhonebookNote in PhonebookNotes
                             .Where(x => x.ItemStatus == ItemStatus.Added || x.ItemStatus == ItemStatus.Edited)?.ToList() ?? new List <PhonebookNoteViewModel>())
                    {
                        PhonebookNote.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        PhonebookNote.ItemStatus = ItemStatus.Submited;
                        PhonebookNote createdPhonebookNote = unitOfWork.GetPhonebookNoteRepository()
                                                             .Create(PhonebookNote.ConvertToPhonebookNote());
                    }

                    foreach (var item in PhonebookNotes
                             .Where(x => x.ItemStatus == ItemStatus.Deleted)?.ToList() ?? new List <PhonebookNoteViewModel>())
                    {
                        item.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        unitOfWork.GetPhonebookNoteRepository().Create(item.ConvertToPhonebookNote());

                        unitOfWork.GetPhonebookNoteRepository().Delete(item.Identifier);
                    }
                }

                // Update documents
                if (PhonebookDocuments != null && PhonebookDocuments.Count > 0)
                {
                    // Items for create or update
                    foreach (var PhonebookDocument in PhonebookDocuments
                             .Where(x => x.ItemStatus == ItemStatus.Added || x.ItemStatus == ItemStatus.Edited)?.ToList() ?? new List <PhonebookDocumentViewModel>())
                    {
                        PhonebookDocument.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        PhonebookDocument.ItemStatus = ItemStatus.Submited;
                        PhonebookDocument createdPhonebookDocument = unitOfWork.GetPhonebookDocumentRepository()
                                                                     .Create(PhonebookDocument.ConvertToPhonebookDocument());
                    }

                    foreach (var item in PhonebookDocuments
                             .Where(x => x.ItemStatus == ItemStatus.Deleted)?.ToList() ?? new List <PhonebookDocumentViewModel>())
                    {
                        item.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        unitOfWork.GetPhonebookDocumentRepository().Create(item.ConvertToPhonebookDocument());

                        unitOfWork.GetPhonebookDocumentRepository().Delete(item.Identifier);
                    }
                }

                // Update Phones
                if (PhonebookPhones != null && PhonebookPhones.Count > 0)
                {
                    // Items for create or update
                    foreach (var PhonebookPhone in PhonebookPhones
                             .Where(x => x.ItemStatus == ItemStatus.Added || x.ItemStatus == ItemStatus.Edited)?.ToList() ?? new List <PhonebookPhoneViewModel>())
                    {
                        PhonebookPhone.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        PhonebookPhone.ItemStatus = ItemStatus.Submited;
                        PhonebookPhone createdPhonebookPhone = unitOfWork.GetPhonebookPhoneRepository()
                                                               .Create(PhonebookPhone.ConvertToPhonebookPhone());
                    }

                    foreach (var item in PhonebookPhones
                             .Where(x => x.ItemStatus == ItemStatus.Deleted)?.ToList() ?? new List <PhonebookPhoneViewModel>())
                    {
                        item.Phonebook = new PhonebookViewModel()
                        {
                            Id = createdPhonebook.Id
                        };
                        unitOfWork.GetPhonebookPhoneRepository().Create(item.ConvertToPhonebookPhone());

                        unitOfWork.GetPhonebookPhoneRepository().Delete(item.Identifier);
                    }
                }

                unitOfWork.Save();

                response.Phonebook = createdPhonebook.ConvertToPhonebookViewModel();
                response.Success   = true;
            }
            catch (Exception ex)
            {
                response.Phonebook = new PhonebookViewModel();
                response.Success   = false;
                response.Message   = ex.Message;
            }

            return(response);
        }
Ejemplo n.º 39
0
        public PhonebookPage()
        {
            try
            {
                pb = new Phonebook(handle);
                handle.RegisterNotiEvent(Notification.PhonebookContactChange);
                handle.NotificationChanged += Handle_ContactChanged_NotiEvent;
            }

            catch (Exception ex)
            {
                Log.Debug(Globals.LogTag, "Pb constructor throws exception = " + ex.ToString());
            }

            var PhonebookInitInfoBtn = new Button
            {
                Text              = "PhonebookInitInfo",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.FillAndExpand
            };

            PhonebookInitInfoBtn.Clicked += PhonebookInitInfoBtn_Clicked;

            var PhonebookStorageBtn = new Button
            {
                Text              = "Get Phonebook Storage",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.FillAndExpand
            };

            PhonebookStorageBtn.Clicked += PhonebookStorageBtn_Clicked;

            var PhonebookMetaInfoBtn = new Button
            {
                Text              = "Get Phonebook MetaInfo",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.FillAndExpand
            };

            PhonebookMetaInfoBtn.Clicked += PhonebookMetaInfoBtn_Clicked;

            var PhonebookMetaInfo3GBtn = new Button
            {
                Text              = "Get Phonebook MetaInfo3G",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.FillAndExpand
            };

            PhonebookMetaInfo3GBtn.Clicked += PhonebookMetaInfo3GBtn_Clicked;

            var PhonebookReadRecordGBtn = new Button
            {
                Text              = "Read Phonebook record",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.FillAndExpand
            };

            PhonebookReadRecordGBtn.Clicked += PhonebookReadRecordGBtn_Clicked;

            var PhonebookUpdateRecordGBtn = new Button
            {
                Text              = "Update Phonebook record",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.FillAndExpand
            };

            PhonebookUpdateRecordGBtn.Clicked += PhonebookUpdateRecordGBtn_Clicked;

            var PhonebookDeleteRecordGBtn = new Button
            {
                Text              = "Delete Phonebook record",
                VerticalOptions   = LayoutOptions.Start,
                HorizontalOptions = LayoutOptions.FillAndExpand
            };

            PhonebookDeleteRecordGBtn.Clicked += PhonebookDeleteRecordGBtn_Clicked;

            Content = new StackLayout
            {
                VerticalOptions = LayoutOptions.Center,
                Children        =
                {
                    PhonebookInitInfoBtn,    PhonebookStorageBtn,       PhonebookMetaInfoBtn, PhonebookMetaInfo3GBtn,
                    PhonebookReadRecordGBtn, PhonebookUpdateRecordGBtn, PhonebookDeleteRecordGBtn
                }
            };
        }
        protected override void Page_Load(object sender, EventArgs e)
        {
            RequireClientAuthentication();

            if (CustomerUtilities.IsLoggedIn() == true)
            {
                phonebook = ObjectFromQueryString<Phonebook>(XpoHelper.GetNewSession());

                if (phonebook != null)
                {
                    phonebook.Reload();
                    phonebook.Employees.Reload();

                    EmployeesGridView.DataBind(phonebook.Employees);

                    EmployeesGridView.ClientVisible = true;
                    SetHeadingControlText(phonebook.Name, "Employees");
                    SetupRibbon();

                    if (IsPostBack == false)
                    {
                        SetupEditSelectedEmployeesFormLayout();
                        EditSelectedEmployeesFormLayout.DataBind(new Employee());
                    }
                }
                else
                {
                    Response.Redirect(UrlManager.Root);
                }

                EmployeesGridView.SettingsBehavior.ConfirmDelete = true;
            }

            RemoveAllSelectedEmployeesButton.Image.IconID = IconImage.Delete_Small;

            base.Page_Load(sender, e);
        }
Ejemplo n.º 41
0
        private Phonebook Read(SqlDataReader reader)
        {
            Phonebook Phonebook = new Phonebook();

            Phonebook.Id         = Int32.Parse(reader["PhonebookId"].ToString());
            Phonebook.Identifier = Guid.Parse(reader["PhonebookIdentifier"].ToString());

            if (reader["PhonebookCode"] != DBNull.Value)
            {
                Phonebook.Code = reader["PhonebookCode"].ToString();
            }
            if (reader["PhonebookName"] != DBNull.Value)
            {
                Phonebook.Name = reader["PhonebookName"].ToString();
            }

            if (reader["CountryId"] != DBNull.Value)
            {
                Phonebook.Country            = new Country();
                Phonebook.CountryId          = Int32.Parse(reader["CountryId"].ToString());
                Phonebook.Country.Id         = Int32.Parse(reader["CountryId"].ToString());
                Phonebook.Country.Identifier = Guid.Parse(reader["CountryIdentifier"].ToString());
                Phonebook.Country.Mark       = reader["CountryCode"].ToString();
                Phonebook.Country.Name       = reader["CountryName"].ToString();
            }

            if (reader["RegionId"] != DBNull.Value) //"RegionId, RegionIdentifier, RegionCode, RegionName, " +
            {
                Phonebook.Region            = new Region();
                Phonebook.RegionId          = Int32.Parse(reader["RegionId"].ToString());
                Phonebook.Region.Id         = Int32.Parse(reader["RegionId"].ToString());
                Phonebook.Region.Identifier = Guid.Parse(reader["RegionIdentifier"].ToString());
                Phonebook.Region.RegionCode = reader["RegionCode"].ToString();
                Phonebook.Region.Name       = reader["RegionName"].ToString();
            }

            if (reader["MunicipalityId"] != DBNull.Value) /*"MunicipalityId, MunicipalityIdentifier, MunicipalityCode, MunicipalityName, " +*/
            {
                Phonebook.Municipality                  = new Municipality();
                Phonebook.MunicipalityId                = Int32.Parse(reader["MunicipalityId"].ToString());
                Phonebook.Municipality.Id               = Int32.Parse(reader["MunicipalityId"].ToString());
                Phonebook.Municipality.Identifier       = Guid.Parse(reader["MunicipalityIdentifier"].ToString());
                Phonebook.Municipality.MunicipalityCode = reader["MunicipalityCode"].ToString();
                Phonebook.Municipality.Name             = reader["MunicipalityName"].ToString();
            }

            if (reader["CityId"] != DBNull.Value) // "CityId, CityIdentifier, CityZipCode, CityName, " +
            {
                Phonebook.City            = new City();
                Phonebook.CityId          = Int32.Parse(reader["CityId"].ToString());
                Phonebook.City.Id         = Int32.Parse(reader["CityId"].ToString());
                Phonebook.City.Identifier = Guid.Parse(reader["CityIdentifier"].ToString());
                Phonebook.City.ZipCode    = reader["CityZipCode"].ToString();
                Phonebook.City.Name       = reader["CityName"].ToString();
            }

            if (reader["Address"] != DBNull.Value)
            {
                Phonebook.Address = reader["Address"].ToString();
            }

            Phonebook.Active    = bool.Parse(reader["Active"].ToString());
            Phonebook.UpdatedAt = DateTime.Parse(reader["UpdatedAt"].ToString());

            if (reader["CreatedById"] != DBNull.Value)
            {
                Phonebook.CreatedBy           = new User();
                Phonebook.CreatedById         = Int32.Parse(reader["CreatedById"].ToString());
                Phonebook.CreatedBy.Id        = Int32.Parse(reader["CreatedById"].ToString());
                Phonebook.CreatedBy.FirstName = reader["CreatedByFirstName"]?.ToString();
                Phonebook.CreatedBy.LastName  = reader["CreatedByLastName"]?.ToString();
            }

            if (reader["CompanyId"] != DBNull.Value)
            {
                Phonebook.Company      = new Company();
                Phonebook.CompanyId    = Int32.Parse(reader["CompanyId"].ToString());
                Phonebook.Company.Id   = Int32.Parse(reader["CompanyId"].ToString());
                Phonebook.Company.Name = reader["CompanyName"].ToString();
            }

            return(Phonebook);
        }
Ejemplo n.º 42
0
 public ActionResult EditConfirm(Phonebook phonebook)
 {
     _phonebookService.UpdatePhonebook(phonebook);
     return(View());
 }
Ejemplo n.º 43
0
        // GET: api/Phonebook/5
        public string Get(int id)
        {
            Phonebook p = myBook[id];

            return("Name: " + p.Name + " " + "Number: " + p.Number);
        }
Ejemplo n.º 44
0
 public StandardUser(Phonebook phonebook)
 {
     name  = phonebook.name;
     phone = phonebook.phone;
     email = phonebook.email;
 }
Ejemplo n.º 45
0
 public ActionResult <Phonebook> Post([FromBody] Phonebook phonebook)
 {
     return(_phonebookService.AddPhonebook(phonebook));
 }
Ejemplo n.º 46
0
        public static PhonebookEntry Create(Phonebook phonebook)
        {
            var entry = new PhonebookEntry(phonebook);

            return(entry);
        }
Ejemplo n.º 47
0
 /// <summary>
 /// Удалить телефонный номер из справочника и из дерева
 /// </summary>
 private void RemoveNumber(Phonebook.PhoneGroup group, TreeNode groupNode, Phonebook.PhoneNumber number)
 {
     int ind = group.FindPhoneNumberIndex(number.Number);
     if (ind >= 0)
         RemoveNumber(group, groupNode, ind);
 }
Ejemplo n.º 48
0
        /// <summary>
        /// Создать узел дерева для группы телефонных номеров
        /// </summary>
        private TreeNode CreateGroupNode(Phonebook.PhoneGroup group)
        {
            string imageKey = group.PhoneNumbers.Count > 0 ? "folder_open.png" : "folder_closed.png";
            TreeNode nodeGroup = new TreeNode(group.Name)
            {                
                ImageKey = imageKey,
                SelectedImageKey = imageKey,
                Tag = group
            };

            foreach (Phonebook.PhoneNumber number in group.PhoneNumbers)
                nodeGroup.Nodes.Add(CreateNumberNode(number));

            nodeGroup.Expand();
            return nodeGroup;
        }
Ejemplo n.º 49
0
        /// <summary>
        /// Получить группу телефонных номеров, соответствующую выбранному в дереве узлу
        /// </summary>
        private void GetCurrentGroup(out Phonebook.PhoneGroup group, out TreeNode groupNode)
        {
            TreeNode node = tvPhonebook.SelectedNode;
            while (node != null && !(node.Tag is Phonebook.PhoneGroup))
                node = node.Parent;

            if (node != null && node.Tag is Phonebook.PhoneGroup)
            {
                groupNode = node;
                group = (Phonebook.PhoneGroup)groupNode.Tag;
            }
            else if (nodePhonebook.Nodes.Count > 0)
            {
                groupNode = nodePhonebook.Nodes[0];
                group = (Phonebook.PhoneGroup)groupNode.Tag;
            }
            else
            {
                groupNode = null;
                group = null;
            }
        }
Ejemplo n.º 50
0
 /// <summary>
 /// Создать узел дерева для группы телефонных номеров
 /// </summary>
 private TreeNode CreateNumberNode(Phonebook.PhoneNumber number)
 {
     return new TreeNode()
     {
         Text = number.Name == "" ? 
             number.Number : 
             number.Number + " (" + number.Name + ")",
         ImageKey = "phone.png",
         SelectedImageKey = "phone.png",
         Tag = number
     };
 }
Ejemplo n.º 51
0
        public static Phonebook Create()
        {
            var phonebook = new Phonebook();

            return(phonebook);
        }
Ejemplo n.º 52
0
 /// <summary>
 /// Вставить группу телефонных номеров в справочник и в дерево
 /// </summary>
 private void InsertGroup(Phonebook.PhoneGroup group)
 {
     phonebook.PhoneGroups.Add(group.Name, group);
     int ind = phonebook.PhoneGroups.IndexOfKey(group.Name);
     TreeNode node = CreateGroupNode(group);
     nodePhonebook.Nodes.Insert(ind, node);
     tvPhonebook.SelectedNode = node;
 }
 protected void SetPhonebookValues(Phonebook phonebook, System.Collections.Specialized.OrderedDictionary newValues)
 {
     foreach (string fieldName in Utilities.GetPropertyNames<Phonebook>())
     {
         if (newValues[fieldName] != null)
         {
             PropertyInfo propertyInfo = phonebook.GetType().GetProperty(fieldName);
             phonebook.SetMemberValue(fieldName, Convert.ChangeType(newValues[fieldName], propertyInfo.PropertyType));
         }
     }
 }
Ejemplo n.º 54
0
 /// <summary>
 /// Удалить группу телефонных номеров из справочника и из дерева
 /// </summary>
 private void RemoveGroup(Phonebook.PhoneGroup group)
 {
     int ind = phonebook.PhoneGroups.IndexOfKey(group.Name);
     phonebook.PhoneGroups.RemoveAt(ind);
     nodePhonebook.Nodes.RemoveAt(ind);
 }
 public FieldTranslator(FieldLegalValueConfiguration fieldLegalValueConfiguration, Phonebook phonebook, bool commitChanges)
 {
     this.fieldLegalValueConfiguration = fieldLegalValueConfiguration;
     this.phonebook = phonebook;
     this.CommitChanges = commitChanges;
 }
Ejemplo n.º 56
0
 public ActionResult Put(int id, [FromBody] Phonebook phonebook)
 {
     _phonebookService.UpdatePhonebook(id, phonebook);
     return(Ok());
 }