public Seeder(
     WikiDbContext dbContext,
     IConfiguration configuration)
 {
     _dbContext     = dbContext;
     _configuration = configuration;
 }
Example #2
0
        // GET: api/Article
        public ICollection <Article> Get()
        {
            WikiDbContext context  = new WikiDbContext();
            var           articles = context.Articles.ToList();

            return(articles);
        }
Example #3
0
        // GET: api/Article/5
        public Article Get(int id)
        {
            WikiDbContext context = new WikiDbContext();
            var           article = context.Articles.FirstOrDefault(c => c.Id == id);

            return(article);
        }
Example #4
0
        public ActionResult Details(int id)
        {
            WikiDbContext context = new WikiDbContext();
            var           article = context.Articles.FirstOrDefault(c => c.Id == id);

            return(View(article));
        }
Example #5
0
        // DELETE: api/Article/5
        public void Delete(int id)
        {
            WikiDbContext context = new WikiDbContext();
            var           delete  = context.Articles.FirstOrDefault(d => d.Id == id);

            context.Articles.Remove(delete);
        }
Example #6
0
        public ActionResult Edit(int id)
        {
            WikiDbContext context = new WikiDbContext();
            var           edit    = context.Articles.FirstOrDefault(e => e.Id == id);

            return(View(edit));
        }
Example #7
0
        public ActionResult Search(string search)
        {
            WikiDbContext context = new WikiDbContext();
            var           posts   = context.Articles.Where(a => a.Content.Contains(search)).ToList();

            TempData["ResultSearch"] = posts;
            return(RedirectToAction("Index"));
        }
Example #8
0
 public HomeController(
     SignInManager <WikiUser> signInManager,
     ILoggerFactory loggerFactory,
     WikiDbContext _context)
 {
     _signInManager  = signInManager;
     _logger         = loggerFactory.CreateLogger <HomeController>();
     this._dbContext = _context;
 }
Example #9
0
 public Seeder(
     WikiDbContext dbContext,
     IConfiguration configuration,
     HTTPService http)
 {
     _dbContext     = dbContext;
     _configuration = configuration;
     _http          = http;
 }
Example #10
0
        public ActionResult DeleteCom(int id)
        {
            WikiDbContext context = new WikiDbContext();
            var           delete  = context.Comments.FirstOrDefault(d => d.Id == id);

            context.Comments.Remove(delete);
            context.SaveChanges();
            return(PartialView("_displayComments", context.Comments.Where(c => c.ArticleId == delete.ArticleId).ToList()));
        }
Example #11
0
 public HomeController(
     ILoggerFactory loggerFactory,
     WikiDbContext _context,
     Seeder seeder)
 {
     _logger         = loggerFactory.CreateLogger <HomeController>();
     this._dbContext = _context;
     _seeder         = seeder;
 }
Example #12
0
        public ActionResult Delete(int id)
        {
            WikiDbContext context = new WikiDbContext();
            var           delete  = context.Articles.FirstOrDefault(d => d.Id == id);

            context.Articles.Remove(delete);
            context.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #13
0
 public AuthController(
     UserManager <WikiUser> userManager,
     SignInManager <WikiUser> signInManager,
     WikiDbContext _context)
 {
     _userManager   = userManager;
     _signInManager = signInManager;
     _dbContext     = _context;
 }
Example #14
0
 public HomeController(
     SignInManager <WikiUser> signInManager,
     WikiDbContext context,
     GatewayLocator serviceLocation)
 {
     _signInManager   = signInManager;
     _dbContext       = context;
     _serviceLocation = serviceLocation;
 }
Example #15
0
 public Seeder(
     WikiDbContext dbContext,
     IConfiguration configuration,
     HTTPService http,
     MarkDownGenerator markdown)
 {
     _dbContext     = dbContext;
     _configuration = configuration;
     _http          = http;
     _markdown      = markdown;
 }
Example #16
0
        // PUT: api/Article/5
        public void Put(int id, [FromBody] Article article)
        {
            WikiDbContext context = new WikiDbContext();
            var           edit    = context.Articles.FirstOrDefault(e => e.Id == article.Id);

            edit.Content = article.Content;
            edit.Created = article.Created;
            edit.Image   = article.Image;
            edit.Theme   = article.Theme;
            edit.Author  = article.Author;
        }
Example #17
0
        public ActionResult Form(Article article)
        {
            if (!ModelState.IsValid)
            {
                return(View(article));
            }
            WikiDbContext context = new WikiDbContext();

            context.Articles.Add(article);
            context.SaveChanges();
            return(RedirectToAction("Index"));
        }
Example #18
0
 public HomeController(
     SignInManager <WikiUser> signInManager,
     ILoggerFactory loggerFactory,
     WikiDbContext _context,
     Seeder seeder,
     ServiceLocation serviceLocation)
 {
     _signInManager   = signInManager;
     _logger          = loggerFactory.CreateLogger <HomeController>();
     this._dbContext  = _context;
     _seeder          = seeder;
     _serviceLocation = serviceLocation;
 }
Example #19
0
 public HomeController(
     SignInManager <WikiUser> signInManager,
     WikiDbContext context,
     Seeder seeder,
     ServiceLocation serviceLocation,
     IConfiguration configuration)
 {
     _signInManager   = signInManager;
     _dbContext       = context;
     _seeder          = seeder;
     _serviceLocation = serviceLocation;
     _configuration   = configuration;
 }
Example #20
0
        public ActionResult AjouterCom(Commentaire commentaire)
        {
            if (!ModelState.IsValid)
            {
                ModelState.AddModelError("Content", "erreur format : ecrire seulement des lettres");
                return(View(commentaire));
            }
            WikiDbContext context = new WikiDbContext();

            context.Comments.Add(commentaire);
            context.SaveChanges();
            //return RedirectToAction("Details",new { id = commentaire.ArticleId });
            return(PartialView("_displayComments", context.Comments.Where(c => c.ArticleId == commentaire.ArticleId).ToList()));
        }
Example #21
0
 public Seeder(
     WikiDbContext dbContext,
     IConfiguration configuration,
     HTTPService http,
     MarkDownDocGenerator markDownGenerator,
     EventService eventService,
     AppsContainer appsContainer)
 {
     _dbContext         = dbContext;
     _configuration     = configuration;
     _http              = http;
     _markDownGenerator = markDownGenerator;
     _eventService      = eventService;
     _appsContainer     = appsContainer;
 }
Example #22
0
        public ActionResult Edit(Article article)
        {
            if (!ModelState.IsValid)
            {
                return(View(article));
            }
            WikiDbContext context = new WikiDbContext();
            var           edit    = context.Articles.FirstOrDefault(e => e.Id == article.Id);

            edit.Content = article.Content;
            edit.Created = article.Created;
            edit.Image   = article.Image;
            edit.Theme   = article.Theme;
            edit.Author  = article.Author;
            context.SaveChanges();
            return(View(edit));
        }
Example #23
0
        public ActionResult Index(int page = 0)
        {
            int           nbItems  = 10;
            WikiDbContext context  = new WikiDbContext();
            var           articles = context.Articles.OrderBy(a => a.Created).Skip(page * nbItems).Take(nbItems).ToList(); // ordonner par date , skip le nombre de article selon la page 2 * nbr article
            var           posts    = context.Articles.Count();                                                             //nombre d'articles

            ViewBag.nbPage = posts / 10;
            if (TempData["ResultSearch"] is null)
            {
                return(View(articles));
            }
            else
            {
                ViewBag.display = "Le résultat de la recherche";
                return(View(TempData["ResultSearch"]));
            }
        }
Example #24
0
    public void LoopPages()
    {
        using (var db = new WikiDbContext())
        {
            byte[] CompareText = Encoding.UTF8.GetBytes("Featured_articles");
            var    links       = db.Categorylinks.Where(cl => cl.ClTo == CompareText);

            int count = 0;
            //List<uint> ids = db.KpFirstlinks.Select(link => link.PageId).ToList();
            //foreach (var id in ids)
            foreach (var id in links.Select(link => link.ClFrom))
            {
                if (++count % 1000 == 0)
                {
                    Console.WriteLine(count);
                }
                FindPhilosophy((int)id);
            }
        }
    }
Example #25
0
        public int getNumOfLoops()
        {
            //LoadToPhilosophy must have already run;
            using (var db = new WikiDbContext())
            {
                byte[] CompareText = Encoding.UTF8.GetBytes("Featured_articles");
                var    links       = db.Categorylinks.Where(cl => cl.ClTo == CompareText);

                int loopNum = 0;
                //foreach (var id in db.KpFirstlinks.Select(link =>
                foreach (var id in links.Select(link => link.ClFrom))
                {
                    bool inLoop = ToPhilosophy[(int)id].InALoop;
                    if (inLoop)
                    {
                        loopNum++;
                    }
                }
                return(loopNum);
            }
        }
Example #26
0
        public int getNumUnProcessed()
        {
            //LoadToPhilosophy must have already run;
            using (var db = new WikiDbContext())
            {
                byte[] CompareText = Encoding.UTF8.GetBytes("Featured_articles");
                var    links       = db.Categorylinks.Where(cl => cl.ClTo == CompareText);

                int procNum = 0;
                //foreach (var id in db.KpFirstlinks.Select(link =>
                foreach (var id in links.Select(link => link.ClFrom))
                {
                    bool unProcessed = ToPhilosophy[(int)id].unProcessed;
                    if (unProcessed)
                    {
                        procNum++;
                    }
                }
                return(procNum);
            }
        }
Example #27
0
        public Tuple <int, double> getNumToPhilosophy()
        {
            //LoadToPhilosophy must have already run;
            using (var db = new WikiDbContext())
            {
                byte[] CompareText = Encoding.UTF8.GetBytes("Featured_articles");
                var    links       = db.Categorylinks.Where(cl => cl.ClTo == CompareText);

                int    philNum    = 0;
                double depthCount = 0;
                //foreach (var id in db.KpFirstlinks.Select(link =>
                foreach (var id in links.Select(link => link.ClFrom))
                {
                    bool toPhilosophy = ToPhilosophy[(int)id].GoesToPhilosophy;
                    if (toPhilosophy)
                    {
                        philNum++;
                        depthCount += ToPhilosophy[(int)id].Depth;
                    }
                }
                return(new Tuple <int, double>(philNum, depthCount / philNum));
            }
        }
Example #28
0
    public FirstLinkInfo FindPhilosophy(int FromId)
    {
        //Console.WriteLine("entered the void");
        var entry = ToPhilosophy.GetValueOrDefault(FromId);

        if (entry != null)
        {
            //Console.WriteLine("We've seen it before fromId - {0}", FromId);
            if (entry.unProcessed || entry.InALoop)
            {
                entry.InALoop = true;
                //Console.WriteLine("we've put it in a loop");
                entry.unProcessed = false;
            }

            return(entry);
        }

        FirstLinkInfo unProcessedEntry = new FirstLinkInfo();

        ToPhilosophy.Add(FromId, unProcessedEntry);


        using (var db = new WikiDbContext())
        {
            var ToTitleBinary = db.KpFirstlinks.Where(fl => fl.PageId == FromId).Select(fl => fl.DestinationTitle).FirstOrDefault();

            if (ToTitleBinary == null)
            {
                FirstLinkInfo nullEntry = new FirstLinkInfo(0, false, false, -1);
                ToPhilosophy[FromId] = nullEntry;

                //Console.WriteLine("Exiting at 114");
                return(nullEntry);
            }

            string ToTitle = Encoding.UTF8.GetString(ToTitleBinary);
            var    ToId    = db.Page.Where(pg => pg.PageNamespace == 0 && pg.PageTitle == ToTitleBinary).Select(pg => pg.PageId).FirstOrDefault();


            if (ToId == 0)
            {
                FirstLinkInfo nullEntry = new FirstLinkInfo(0, false, false, -1);
                ToPhilosophy[FromId] = nullEntry;

                //Console.WriteLine("Exiting at 127");
                return(nullEntry);
            }

            FirstLinkInfo childInfo = ToPhilosophy.GetValueOrDefault((int)ToId);

            if (childInfo != null)
            {
                if (childInfo.unProcessed)
                {
                    childInfo.InALoop = true;
                }
                FirstLinkInfo parentInfo = new FirstLinkInfo((int)ToId, childInfo.GoesToPhilosophy, childInfo.InALoop, childInfo.Depth + 1);

                ToPhilosophy[FromId] = parentInfo;
                //Console.WriteLine("Exiting at 142 FromId {0} ToTitle {1} inaloop {2}", FromId,ToTitle, parentInfo.InALoop);
                return(parentInfo);
            }

            if (ToTitle == "Philosophy")
            {
                FirstLinkInfo info = new FirstLinkInfo((int)ToId, true, false, 1);
                ToPhilosophy[FromId] = info;
                //Console.WriteLine("Exiting at 152");
                return(info);
            }

            childInfo = FindPhilosophy((int)ToId);
            FirstLinkInfo legalGuardianInfo = new FirstLinkInfo((int)ToId, childInfo.GoesToPhilosophy, childInfo.InALoop, childInfo.Depth + 1);
            ToPhilosophy[FromId] = legalGuardianInfo;
            //Console.WriteLine("Exiting at 164 FromId {0} ToTitle {1} inaloop {2}", FromId, ToTitle, legalGuardianInfo.InALoop);
            return(legalGuardianInfo);
        }
    }
Example #29
0
        // POST: api/Article
        public void Post([FromBody] Article article)
        {
            WikiDbContext context = new WikiDbContext();

            context.Articles.Add(article);
        }