Пример #1
0
        /// <summary>
        /// Создает каталог для пользователя
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        private Folder CreateUserFolder(SerializationObject.User user)
        {
            Folder curFolder = new Folder(user.FirstName + " " + user.LastName);

            string uid = user.Id.ToString();

            Folder subFolder = new Folder("Аудиозаписи");

            subFolder.Property.Add("type", "AudioApi.ExecuteGetAlbums");
            subFolder.Property.Add("uid", uid);
            curFolder.ChildsAdd(subFolder);

            subFolder = new Folder("Фотографии", new Loader.VKontakte.Photos.GetAlbums(user.Id));
            curFolder.ChildsAdd(subFolder);

            curFolder.ChildsAdd(
                new PlainText(
                    "Открыть в браузере.url",
                    PlainText.InternetShortcut("https://vk.com/id" + uid)
                    )
                );

            curFolder.IsLoaded = true;
            return(curFolder);
        }
Пример #2
0
        private Folder CreateGroupFolder(SerializationObject.Group group)
        {
            string gid       = group.Id.ToString();
            var    curFolder = new Folder(group.Name);

            curFolder.Property.Add("gid", gid);

            Folder subFolder = new Folder("Аудиозаписи");

            subFolder.Property.Add("type", "AudioApi.ExecuteGetAlbums");
            subFolder.Property.Add("inStorage", "1");
            subFolder.Property.Add("gid", gid);
            curFolder.ChildsAdd(subFolder);

            subFolder = new Folder("Фотографии", new Loader.VKontakte.Photos.GetAlbums(-group.Id));
            curFolder.ChildsAdd(subFolder);

            subFolder = new Folder("Стена(beta)", new Loader.VKontakte.Wall.Get(-group.Id));
            curFolder.ChildsAdd(subFolder);

            curFolder.ChildsAdd(
                new PlainText(
                    "Открыть в браузере.url",
                    PlainText.InternetShortcut("https://vk.com/club" + gid)
                    )
                );

            curFolder.IsLoaded = true;
            return(curFolder);
        }
Пример #3
0
        public MainFs()
        {
            var drive = Properties.Settings.Default.MountPoint;

            _log.Debug("Start MainFS");
            _log.Debug("Db connect");
            try
            {
                Db.Instance.Connect();
            }
            catch (Exception e)
            {
                _log.Error("Db connect fail", e);
                throw;
            }
            _log.Debug("Make root tree");
            MakeRootDirectory();

            _topFiles = new List <VFile>();

            var readme = new PlainText("Прочти меня.txt");

            #region Много текста в readme.txt

            readme.SetText("Привет!\n" +
                           "\n" +
                           "Ты установил приложение VkDrive.\n" +
                           "\n" +
                           "Это полноценный виртуальный диск с музыкой и фотографиями из ВКонтакте.\n" +
                           "Для открытия файлов не нужно ждать долгое время синхронизации. Открытие файла происходит в течение доли секунд.\n" +
                           "\n" +
                           "После установки у тебя в \"Мой компьютер\" появился новый виртуальный диск " + drive +
                           ":\\\n" +
                           "На диске доступны папки:\n" +
                           "- Моя страница\n" +
                           "- Мои друзья\n" +
                           "- Мои группы\n" +
                           "- Поиск\n" +
                           "\n" +
                           "\n" +

                           /*"В бесплатной версии в папках страница, друзья, группы и поиск - тебе доступна музыка для для прослушивания (only read).\n"+
                            * "\n"+
                            * "В полной версии в папках страница, друзья, группы - доступен просмотр фотографий и загрузка фото в альбомы своей страницы.\n"+
                            * "Кроме прослушивания музыки - становится доступна загрузка музыкальных файлов в свои аудиозаписи.\n"+
                            * "\n"+
                            * "Для получения полной версии - пожертвуйте 1000 руб. на электронный кошелек хххххххххх. После чего (описание манипуляций для получения полной версии программы).\n"+
                            * "\n"+
                            */
                           "P.S.: все файлы используются исключительно с серверов ВКонтакте для ознакомления и прослушивания. За сторонние копирования - автор программы ответственности не несёт.\n" +
                           "\n" +
                           "P.P.S.: ваши идеи, предложения, сообщения об ошибках присылайте на e-mail: [email protected]");

            #endregion

            _topFiles.Add(readme);

            _topFiles.Add(new PlainText("Официальная группа.url",
                                        PlainText.InternetShortcut("https://vk.com/vkdriveapp")));
            _topFiles.Add(new Settings("Обновить все.lnk", "--GC"));

            //TopDirectory["Test"] = new DirTest();
            //TopDirectory["Last.fm"] = new DirLastFm();*/

            _log.Debug("Start MainFS OK");

            // clear root directory
            var makeRootTimer = new System.Timers.Timer(5 * 60 * 1000)
            {
                Enabled = true
            };
            makeRootTimer.Elapsed += (sender, args) =>
            {
                MakeRootDirectory();
                GC.Collect();
            };
            makeRootTimer.Start();
        }