Ejemplo n.º 1
0
        public async Task <ActionResult> ViewProfile(int id)
        {
            using (DataquadEntities db = new DataquadEntities())
            {
                var userPersonalDetails = db.userPersonalDetails.Where(x => x.userId == id).FirstOrDefault();
                ViewBag.userImages = db.userProfileImages.Where(x => x.UserId == id).FirstOrDefault();
                ViewBag.files      = await GetAllFiles.GetAllFilesByUserId(id);

                ViewBag.userId = id;
                return(View(userPersonalDetails));
            }
        }
        //To present a view to upload files
        public async Task <ActionResult> UploadFiles(int?id)
        {
            userFilesCollection uploadFileCollection = new userFilesCollection();

            uploadFileCollection.UserId = id;
            using (DataquadEntities db = new DataquadEntities())
            {
                var watch = new Stopwatch();
                var files = await GetAllFiles.GetAllFilesByUserId(id);

                ViewBag.files      = files;
                ViewBag.userImages = ImageFiles(files);
            }
            return(View(uploadFileCollection));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Creates a file locker and immediately locks <paramref name="file"/>
        /// </summary>
        /// <param name="file">The file to lock/unlock</param>
        /// <param name="timeTillDeath">the time until the file automatically locks itself</param>
        public Locker(List <string> file, long timeTillDeath, bool shouldChangePass = false)
        {
            TimeTillDeath = timeTillDeath;
            Files         = GetAllFiles.GetAllFilesFromPaths(file);
            Password      = GetPassword.GetPasswordFromCMD();
            // start new line from GetPasswordFromCMD()
            Console.WriteLine();

            for (int i = 0; i < file.Count(); i++)
            {
                var f = file[i];

                // if the file is already locked
                if (Path.GetExtension(f) == ".lock")
                {
                    // let File be the original file name without .lock
                    Files[i] = f.Remove(f.Length - 5);
                    try
                    {
                        UnlockFile(f, Files[i]);
                    }
                    catch (CryptographicException)
                    {
                        Console.WriteLine("Password is incorrect.");
                        File.Delete(Files[i]);
                        Environment.Exit(1);
                    }
                }
            }

            // in case of ctrl-c, lock the file
            Console.CancelKeyPress += new ConsoleCancelEventHandler(HandleConsoleEnd);

            if (shouldChangePass)
            {
                ChangePassword();
            }
            else
            {
                // wait until timer dies
                Thread.Sleep((int)TimeTillDeath);
            }
        }
        //Upload files
        public async Task <ActionResult> UploadFiles(userFilesCollection uploadedFiles, int?userId)
        {
            string fileNameString, fileExtensionString;
            userFilesCollection uploadFileCollection = new userFilesCollection();

            if (uploadedFiles.Files[0] != null)
            {
                foreach (var file in uploadedFiles.Files)
                {
                    //Images image = new Images();
                    fileNameString                       = (file.FileName.Split('.'))[0];
                    fileExtensionString                  = (file.FileName.Split('.'))[1];
                    uploadFileCollection.FileName        = fileNameString;
                    uploadFileCollection.FileExtension   = fileExtensionString;
                    uploadFileCollection.FileSize        = file.ContentLength;
                    uploadFileCollection.FileContentType = file.ContentType;
                    byte[] data = new byte[file.ContentLength];
                    file.InputStream.Read(data, 0, file.ContentLength);
                    uploadFileCollection.FileData = data;
                    uploadFileCollection.UserId   = userId;
                    DataquadEntities db = new DataquadEntities();
                    db.userFilesCollections.Add(uploadFileCollection);
                    db.SaveChanges();
                }
                return(RedirectToAction("ViewProfile", "Account", new { id = userId }));
            }
            else
            {
                ModelState.AddModelError("FileName", "Please select atleast one file to upload");
                userFilesCollection uploadFile = new userFilesCollection();
                uploadFileCollection.UserId = uploadedFiles.UserId;
                using (DataquadEntities db = new DataquadEntities())
                {
                    var files = await GetAllFiles.GetAllFilesByUserId(uploadedFiles.UserId);

                    ViewBag.files = files;

                    ViewBag.userImages = ImageFiles(files);
                }
                return(View("UploadFiles", uploadFileCollection));
            }
        }