public IEnumerable<Models.Page> GetPages(string storeId, GetPagesCriteria criteria)
		{
			var path = string.Format("{0}/", storeId);
			var pages = _repository.GetPages(path, criteria);

			foreach (var page in pages)
			{
				page.Path = FixPath(GetPageMainPath(storeId, page.Language), page.Path);
				page.ContentType = ContentTypeUtility.GetContentType(page.Name, page.ByteContent);
			}

			return pages.Select(p => p.AsPage());
		}
		public IEnumerable<ContentPage> GetPages(string path, GetPagesCriteria criteria)
		{
			var query = Pages.Where(p => p.Path.StartsWith(path));

			if (criteria != null && criteria.LastUpdateDate.HasValue)
			{
			    var compareDate = criteria.LastUpdateDate.Value;
                query = query.Where(i => (i.ModifiedDate.HasValue && compareDate < i.ModifiedDate.Value) || (compareDate < i.CreatedDate));
			}

			return query.AsEnumerable();
		}
		public IEnumerable<ContentPage> GetPages(string path, GetPagesCriteria criteria)
		{
			throw new NotImplementedException();
		}
		public IEnumerable<Models.ContentPage> GetPages(string path, GetPagesCriteria criteria)
		{
			var list = new List<Models.ContentPage>();

			var retVal = new List<Models.ContentPage>();

			var fullPath = GetFullPath(path);

			if (!Directory.Exists(fullPath))
			{
				Directory.CreateDirectory(fullPath);
			}

			var languages = Directory.GetDirectories(fullPath);

			foreach (var language in languages)
			{
				var files = Directory.GetFiles(language, "*.*", SearchOption.AllDirectories);

				foreach(var file in files)
				{
					var addedPage = new Models.ContentPage
					{
						Name = FixName(file, language),
						ModifiedDate = Directory.GetLastWriteTimeUtc(file),
						Language = GetLanguageFromLanguagePath(language),
						ByteContent = File.ReadAllBytes(file),
						ContentType = ContentTypeUtility.GetContentType(Path.GetFileName(file), File.ReadAllBytes(file)),
						Path = RemoveBaseDirectory(file),
						Id = RemoveBaseDirectory(file)
					};

					list.Add(addedPage);
				}
			}

			return list.ToArray();
		}
 public IEnumerable<ContentPage> GetPages(string path, GetPagesCriteria criteria)
 {
     return GetPages(path);
 }