├── src
├── Czar.AbpDemo.Web
│ ├── wwwroot
│ │ ├── pages
│ │ │ ├── index.min.css
│ │ │ ├── index.css
│ │ │ └── index.scss
│ │ └── libs
│ │ │ ├── font-awesome
│ │ │ └── fonts
│ │ │ │ ├── FontAwesome.otf
│ │ │ │ ├── fontawesome-webfont.eot
│ │ │ │ ├── fontawesome-webfont.ttf
│ │ │ │ ├── fontawesome-webfont.woff
│ │ │ │ └── fontawesome-webfont.woff2
│ │ │ ├── select2
│ │ │ └── js
│ │ │ │ └── i18n
│ │ │ │ ├── zh-TW.js
│ │ │ │ ├── zh-CN.js
│ │ │ │ ├── az.js
│ │ │ │ ├── ja.js
│ │ │ │ ├── ko.js
│ │ │ │ ├── ar.js
│ │ │ │ ├── id.js
│ │ │ │ ├── vi.js
│ │ │ │ ├── is.js
│ │ │ │ ├── tr.js
│ │ │ │ ├── et.js
│ │ │ │ ├── fi.js
│ │ │ │ ├── nb.js
│ │ │ │ ├── th.js
│ │ │ │ ├── sv.js
│ │ │ │ ├── bg.js
│ │ │ │ ├── hu.js
│ │ │ │ ├── km.js
│ │ │ │ ├── ms.js
│ │ │ │ ├── da.js
│ │ │ │ ├── en.js
│ │ │ │ ├── hy.js
│ │ │ │ ├── he.js
│ │ │ │ ├── hi.js
│ │ │ │ ├── fa.js
│ │ │ │ ├── hr.js
│ │ │ │ ├── eu.js
│ │ │ │ ├── mk.js
│ │ │ │ ├── af.js
│ │ │ │ ├── de.js
│ │ │ │ ├── pt-BR.js
│ │ │ │ ├── lv.js
│ │ │ │ ├── pt.js
│ │ │ │ ├── ca.js
│ │ │ │ ├── fr.js
│ │ │ │ ├── it.js
│ │ │ │ ├── ps.js
│ │ │ │ ├── gl.js
│ │ │ │ ├── sl.js
│ │ │ │ ├── es.js
│ │ │ │ ├── nl.js
│ │ │ │ ├── ro.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── pl.js
│ │ │ │ ├── el.js
│ │ │ │ ├── bs.js
│ │ │ │ ├── sr.js
│ │ │ │ ├── uk.js
│ │ │ │ ├── sr-Cyrl.js
│ │ │ │ ├── ru.js
│ │ │ │ ├── dsb.js
│ │ │ │ ├── hsb.js
│ │ │ │ ├── cs.js
│ │ │ │ └── sk.js
│ │ │ ├── jquery-validation
│ │ │ └── localization
│ │ │ │ ├── methods_pt.js
│ │ │ │ ├── methods_fi.js
│ │ │ │ ├── methods_de.js
│ │ │ │ ├── methods_es_CL.js
│ │ │ │ ├── methods_nl.js
│ │ │ │ ├── messages_zh.js
│ │ │ │ ├── messages_zh_TW.js
│ │ │ │ ├── messages_ko.js
│ │ │ │ ├── messages_sk.js
│ │ │ │ ├── messages_da.js
│ │ │ │ ├── messages_vi.js
│ │ │ │ ├── messages_ja.js
│ │ │ │ ├── messages_he.js
│ │ │ │ ├── messages_is.js
│ │ │ │ ├── messages_ar.js
│ │ │ │ ├── messages_th.js
│ │ │ │ ├── messages_sv.js
│ │ │ │ ├── messages_sd.js
│ │ │ │ ├── messages_sr.js
│ │ │ │ ├── messages_hy_AM.js
│ │ │ │ ├── messages_hr.js
│ │ │ │ ├── messages_mk.js
│ │ │ │ ├── messages_no.js
│ │ │ │ ├── messages_de.js
│ │ │ │ ├── messages_hu.js
│ │ │ │ ├── messages_sr_lat.js
│ │ │ │ ├── messages_ur.js
│ │ │ │ ├── messages_bn_BD.js
│ │ │ │ ├── messages_cs.js
│ │ │ │ ├── messages_ge.js
│ │ │ │ ├── messages_et.js
│ │ │ │ └── messages_si.js
│ │ │ └── timeago
│ │ │ └── locales
│ │ │ ├── jquery.timeago.tr.js
│ │ │ ├── jquery.timeago.it.js
│ │ │ ├── jquery.timeago.fr-short.js
│ │ │ ├── jquery.timeago.sq.js
│ │ │ ├── jquery.timeago.hy.js
│ │ │ ├── jquery.timeago.ja.js
│ │ │ ├── jquery.timeago.de-short.js
│ │ │ ├── jquery.timeago.en-short.js
│ │ │ ├── jquery.timeago.it-short.js
│ │ │ ├── jquery.timeago.ko.js
│ │ │ ├── jquery.timeago.pt-short.js
│ │ │ ├── jquery.timeago.tr-short.js
│ │ │ ├── jquery.timeago.es-short.js
│ │ │ ├── jquery.timeago.ro.js
│ │ │ ├── jquery.timeago.pt-br-short.js
│ │ │ ├── jquery.timeago.bg.js
│ │ │ ├── jquery.timeago.da.js
│ │ │ ├── jquery.timeago.gl.js
│ │ │ ├── jquery.timeago.pt.js
│ │ │ ├── jquery.timeago.no.js
│ │ │ ├── jquery.timeago.zh-CN.js
│ │ │ ├── jquery.timeago.zh-TW.js
│ │ │ ├── jquery.timeago.az-short.js
│ │ │ ├── jquery.timeago.es.js
│ │ │ ├── jquery.timeago.pt-br.js
│ │ │ ├── jquery.timeago.az.js
│ │ │ ├── jquery.timeago.lt.js
│ │ │ ├── jquery.timeago.lv.js
│ │ │ ├── jquery.timeago.eu.js
│ │ │ ├── jquery.timeago.de.js
│ │ │ ├── jquery.timeago.el.js
│ │ │ ├── jquery.timeago.is.js
│ │ │ ├── jquery.timeago.si.js
│ │ │ ├── jquery.timeago.sv.js
│ │ │ ├── jquery.timeago.af.js
│ │ │ ├── jquery.timeago.ca.js
│ │ │ ├── jquery.timeago.am.js
│ │ │ ├── jquery.timeago.cy.js
│ │ │ ├── jquery.timeago.rw.js
│ │ │ ├── jquery.timeago.id.js
│ │ │ ├── jquery.timeago.mk.js
│ │ │ ├── jquery.timeago.fa-short.js
│ │ │ ├── jquery.timeago.fr.js
│ │ │ ├── jquery.timeago.hu.js
│ │ │ ├── jquery.timeago.ur.js
│ │ │ ├── jquery.timeago.jv.js
│ │ │ ├── jquery.timeago.th.js
│ │ │ ├── jquery.timeago.en.js
│ │ │ ├── jquery.timeago.vi.js
│ │ │ ├── jquery.timeago.nl.js
│ │ │ ├── jquery.timeago.he.js
│ │ │ ├── jquery.timeago.uz.js
│ │ │ ├── jquery.timeago.dv.js
│ │ │ ├── jquery.timeago.fa.js
│ │ │ ├── README.md
│ │ │ ├── jquery.timeago.pl.js
│ │ │ ├── jquery.timeago.et.js
│ │ │ ├── jquery.timeago.fi.js
│ │ │ ├── jquery.timeago.ky.js
│ │ │ ├── jquery.timeago.uk.js
│ │ │ ├── jquery.timeago.ru.js
│ │ │ ├── jquery.timeago.cs.js
│ │ │ └── jquery.timeago.sk.js
│ ├── abp.resourcemapping.js
│ ├── compilerconfig.json
│ ├── Views
│ │ └── _ViewImports.cshtml
│ ├── package.json
│ ├── appsettings.json
│ ├── Pages
│ │ ├── Index.cshtml.cs
│ │ ├── _ViewImports.cshtml
│ │ ├── AbpDemoPageModelBase.cs
│ │ ├── Books
│ │ │ ├── Index.cshtml.cs
│ │ │ ├── EditModal.cshtml
│ │ │ ├── CreateModal.cshtml
│ │ │ ├── Index.cshtml
│ │ │ └── CreateModal.cshtml.cs
│ │ ├── AbpDemoPageBase.cs
│ │ ├── JobSchedule
│ │ │ ├── Index.cshtml.cs
│ │ │ ├── EditModal.cshtml
│ │ │ ├── CreateModal.cshtml
│ │ │ └── Index.cshtml
│ │ └── Index.cshtml
│ ├── gulpfile.js
│ ├── AbpDemoWebAutoMapperProfile.cs
│ ├── Branding
│ │ └── AbpDemoBrandingProvider.cs
│ ├── zh-Hans.json
│ ├── compilerconfig.json.defaults
│ ├── Menus
│ │ └── AbpDemoMenuContributor.cs
│ └── Program.cs
├── Czar.AbpDemo.Core
│ ├── Czar.AbpDemo.Core.csproj
│ └── Result
│ │ ├── ScheduleResult.cs
│ │ └── BaseResult.cs
├── Czar.AbpDemo.Domain
│ ├── Localization
│ │ └── AbpDemo
│ │ │ ├── AbpDemoResource.cs
│ │ │ ├── tr.json
│ │ │ ├── zh-Hans.json
│ │ │ └── en.json
│ ├── Settings
│ │ ├── AbpDemoSettings.cs
│ │ └── AbpDemoSettingDefinitionProvider.cs
│ ├── Czar.AbpDemo.Domain.csproj
│ ├── BookStore
│ │ ├── BookType.cs
│ │ └── Book.cs
│ └── JobSchedule
│ │ └── JobStatu.cs
├── Czar.AbpDemo.Application
│ ├── AbpDemoApplicationAutoMapperProfile.cs
│ ├── Permissions
│ │ ├── AbpDemoPermissions.cs
│ │ └── AbpDemoPermissionDefinitionProvider.cs
│ ├── Czar.AbpDemo.Application.csproj
│ ├── AbpDemoApplicationModule.cs
│ └── BookStore
│ │ ├── BookDto.cs
│ │ ├── IBookAppService.cs
│ │ ├── CreateUpdateBookDto.cs
│ │ └── BookAppService.cs
├── Czar.AbpDemo.Quartz
│ ├── Czar.AbpDemo.Quartz.csproj
│ └── Job
│ │ └── LogTestJob.cs
└── Czar.AbpDemo.EntityFrameworkCore
│ └── EntityFrameworkCore
│ ├── AbpDemoDbContextFactory.cs
│ ├── AbpDemoDbContext.cs
│ └── AbpDemoEntityFrameworkCoreModule.cs
├── .gitattributes
├── test
├── Czar.AbpDemo.Web.Tests
│ ├── xunit.runner.json
│ ├── Samples
│ │ └── SampleWebTest.cs
│ └── AbpDemoWebTestStartup.cs
└── Czar.AbpDemo.Application.Tests
│ ├── AbpDemoApplicationTestBase.cs
│ ├── Samples
│ └── SampleTest.cs
│ └── Czar.AbpDemo.Application.Tests.csproj
├── Czar.AbpDemo.sln.DotSettings
└── LICENSE
/src/Czar.AbpDemo.Web/wwwroot/pages/index.min.css:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/pages/index.css:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | **/wwwroot/libs/** linguist-vendored
2 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/pages/index.scss:
--------------------------------------------------------------------------------
1 | body{
2 |
3 | }
4 |
--------------------------------------------------------------------------------
/test/Czar.AbpDemo.Web.Tests/xunit.runner.json:
--------------------------------------------------------------------------------
1 | {
2 | "shadowCopy": false
3 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/abp.resourcemapping.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | aliases: {
3 |
4 | },
5 | mappings: {
6 |
7 | }
8 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/compilerconfig.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "outputFile": "wwwroot/pages/index.css",
4 | "inputFile": "wwwroot/pages/index.scss"
5 | }
6 | ]
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yilezhu/AbpQuzatzDemo/HEAD/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Views/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
2 | @addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI
3 | @addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI.Bootstrap
4 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.1.0",
3 | "name": "Czar.AbpDemo",
4 | "private": true,
5 | "dependencies": {
6 | "@abp/aspnetcore.mvc.ui.theme.basic": "^0.4.9"
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yilezhu/AbpQuzatzDemo/HEAD/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yilezhu/AbpQuzatzDemo/HEAD/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yilezhu/AbpQuzatzDemo/HEAD/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yilezhu/AbpQuzatzDemo/HEAD/src/Czar.AbpDemo.Web/wwwroot/libs/font-awesome/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "ConnectionStrings": {
3 | "Default": "Server=localhost;Database=CzarAbpDemo;User Id = sa;Password = 1;Trusted_Connection=True;MultipleActiveResultSets=true"
4 | }
5 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/Index.cshtml.cs:
--------------------------------------------------------------------------------
1 | namespace Czar.AbpDemo.Pages
2 | {
3 | public class IndexModel : AbpDemoPageModelBase
4 | {
5 | public void OnGet()
6 | {
7 |
8 | }
9 | }
10 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Core/Czar.AbpDemo.Core.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.2
5 | Czar.AbpDemo
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
2 | @addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI
3 | @addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI.Bootstrap
4 | @addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI.Bundling
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/Localization/AbpDemo/AbpDemoResource.cs:
--------------------------------------------------------------------------------
1 | using Volo.Abp.Localization;
2 |
3 | namespace Czar.AbpDemo.Localization.AbpDemo
4 | {
5 | [LocalizationResourceName("AbpDemo")]
6 | public class AbpDemoResource
7 | {
8 |
9 | }
10 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Core/Result/ScheduleResult.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Czar.AbpDemo.Result
7 | {
8 | public class ScheduleResult : BaseResult
9 | {
10 |
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/Settings/AbpDemoSettings.cs:
--------------------------------------------------------------------------------
1 | namespace Czar.AbpDemo.Settings
2 | {
3 | public static class AbpDemoSettings
4 | {
5 | private const string Prefix = "CzarAbp";
6 |
7 | //Add your own setting names here. Example:
8 | //public const string MySetting1 = Prefix + ".MySetting1";
9 | }
10 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/gulpfile.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | var gulp = require("gulp"),
4 | path = require('path'),
5 | copyResources = require('./node_modules/@abp/aspnetcore.mvc.ui/gulp/copy-resources.js');
6 |
7 | copyResources.init(path.resolve('./'));
8 |
9 | gulp.task('default', [copyResources.taskName], function () {
10 |
11 | });
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/Localization/AbpDemo/tr.json:
--------------------------------------------------------------------------------
1 | {
2 | "culture": "tr",
3 | "texts": {
4 | "Menu:Home": "Ana sayfa",
5 | "Welcome": "Hoşgeldiniz",
6 | "LongWelcomeMessage": "Uygulamaya hoşgeldiniz. Bu, ABP framework'ü üzerine bina edilmiş bir başlangıç projesidir. Daha fazla bilgi için abp.io adresini ziyaret edebilirsiniz."
7 | }
8 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/AbpDemoWebAutoMapperProfile.cs:
--------------------------------------------------------------------------------
1 | using AutoMapper;
2 |
3 | namespace Czar.AbpDemo
4 | {
5 | public class AbpDemoWebAutoMapperProfile : Profile
6 | {
7 | public AbpDemoWebAutoMapperProfile()
8 | {
9 | //Configure your AutoMapper mapping configuration here...
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Core/Result/BaseResult.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace Czar.AbpDemo.Result
7 | {
8 | public class BaseResult
9 | {
10 | public int Code { get; set; }=0;
11 |
12 | public string Message { get; set; } = "操作成功";
13 |
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/AbpDemoApplicationAutoMapperProfile.cs:
--------------------------------------------------------------------------------
1 | using AutoMapper;
2 |
3 | namespace Czar.AbpDemo
4 | {
5 | public class AbpDemoApplicationAutoMapperProfile : Profile
6 | {
7 | public AbpDemoApplicationAutoMapperProfile()
8 | {
9 | //Configure your AutoMapper mapping configuration here...
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Branding/AbpDemoBrandingProvider.cs:
--------------------------------------------------------------------------------
1 | using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Components;
2 | using Volo.Abp.DependencyInjection;
3 |
4 | namespace Czar.AbpDemo.Branding
5 | {
6 | [Dependency(ReplaceServices = true)]
7 | public class AbpDemoBrandingProvider : DefaultBrandingProvider
8 | {
9 | public override string AppName => "AbpDemo";
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/AbpDemoPageModelBase.cs:
--------------------------------------------------------------------------------
1 | using Czar.AbpDemo.Localization.AbpDemo;
2 | using Volo.Abp.AspNetCore.Mvc.UI.RazorPages;
3 |
4 | namespace Czar.AbpDemo.Pages
5 | {
6 | public abstract class AbpDemoPageModelBase : AbpPageModel
7 | {
8 | protected AbpDemoPageModelBase()
9 | {
10 | LocalizationResourceType = typeof(AbpDemoResource);
11 | }
12 | }
13 | }
--------------------------------------------------------------------------------
/test/Czar.AbpDemo.Application.Tests/AbpDemoApplicationTestBase.cs:
--------------------------------------------------------------------------------
1 | using Volo.Abp;
2 |
3 | namespace Czar.AbpDemo
4 | {
5 | public abstract class AbpDemoApplicationTestBase : AbpIntegratedTest
6 | {
7 | protected override void SetAbpApplicationCreationOptions(AbpApplicationCreationOptions options)
8 | {
9 | options.UseAutofac();
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/Books/Index.cshtml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using Microsoft.AspNetCore.Mvc;
6 | using Microsoft.AspNetCore.Mvc.RazorPages;
7 |
8 | namespace Czar.AbpDemo.Web.Pages.Books
9 | {
10 | public class IndexModel : PageModel
11 | {
12 | public void OnGet()
13 | {
14 |
15 | }
16 | }
17 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/AbpDemoPageBase.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AspNetCore.Mvc.Localization;
2 | using Microsoft.AspNetCore.Mvc.Razor.Internal;
3 | using Czar.AbpDemo.Localization.AbpDemo;
4 | using Volo.Abp.AspNetCore.Mvc.UI.RazorPages;
5 |
6 | namespace Czar.AbpDemo.Pages
7 | {
8 | public abstract class AbpDemoPageBase : AbpPage
9 | {
10 | [RazorInject]
11 | public IHtmlLocalizer L { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/JobSchedule/Index.cshtml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using Czar.AbpDemo.JobSchedule;
6 | using Microsoft.AspNetCore.Mvc;
7 | using Microsoft.AspNetCore.Mvc.RazorPages;
8 |
9 | namespace Czar.AbpDemo.Web.Pages.JobSchedule
10 | {
11 | public class IndexModel : PageModel
12 | {
13 |
14 | public void OnGet()
15 | {
16 |
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/zh-Hans.json:
--------------------------------------------------------------------------------
1 | {
2 | "culture": "zh-Hans",
3 | "texts": {
4 | "Menu:Home": "首页",
5 | "Menu:BookStore": "图书馆",
6 | "Menu:Books": "图书管理",
7 | "Welcome": "欢迎",
8 | "LongWelcomeMessage": "欢迎来到该应用程序. 这是一个基于ABP框架的启动项目. 有关更多信息, 请访问 cn.abp.io.",
9 | "Books:Name": "书籍名称",
10 | "Books:Type": "书籍类型",
11 | "Books:PublishDate": "出版日期",
12 | "Books:Price": "书籍价格",
13 | "Books:CreationTime": "创建时间",
14 | "Books:NewBook": "新书籍"
15 | }
16 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/Settings/AbpDemoSettingDefinitionProvider.cs:
--------------------------------------------------------------------------------
1 | using Volo.Abp.Settings;
2 |
3 | namespace Czar.AbpDemo.Settings
4 | {
5 | public class AbpDemoSettingDefinitionProvider : SettingDefinitionProvider
6 | {
7 | public override void Define(ISettingDefinitionContext context)
8 | {
9 | //Define your own settings here. Example:
10 | //context.Add(new SettingDefinition(AbpDemoSettings.MySetting1));
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/Permissions/AbpDemoPermissions.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Czar.AbpDemo.Permissions
4 | {
5 | public static class AbpDemoPermissions
6 | {
7 | public const string GroupName = "AbpDemo";
8 |
9 | //Add your own permission names. Example:
10 | //public const string MyPermission1 = GroupName + ".MyPermission1";
11 |
12 | public static string[] GetAll()
13 | {
14 | //Return an array of all permissions
15 | return Array.Empty();
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/Czar.AbpDemo.Application.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.2
5 | Czar.AbpDemo
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/zh-TW.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-TW",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="請刪掉"+t+"個字元";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="請再輸入"+t+"個字元";return n},loadingMore:function(){return"載入中…"},maximumSelected:function(e){var t="你只能選擇最多"+e.maximum+"項";return t},noResults:function(){return"沒有找到相符的項目"},searching:function(){return"搜尋中…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/Index.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @using Czar.AbpDemo.Pages
3 | @inherits AbpDemoPageBase
4 | @model IndexModel
5 | @section styles {
6 |
7 | }
8 |
9 | @L["Welcome"]
10 |
11 | @L["LongWelcomeMessage"]
12 | @if (!CurrentUser.IsAuthenticated)
13 | {
14 | @L["Login"]
15 | }
16 |
17 | abp.io
18 |
19 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/methods_pt.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Localized default methods for the jQuery validation plugin.
13 | * Locale: PT_BR
14 | */
15 | $.extend( $.validator.methods, {
16 | date: function( value, element ) {
17 | return this.optional( element ) || /^\d\d?\/\d\d?\/\d\d\d?\d?$/.test( value );
18 | }
19 | } );
20 | return $;
21 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/zh-CN.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-CN",[],function(){return{errorLoading:function(){return"无法载入结果。"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="请删除"+t+"个字符";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="请再输入至少"+t+"个字符";return n},loadingMore:function(){return"载入更多结果…"},maximumSelected:function(e){var t="最多只能选择"+e.maximum+"个项目";return t},noResults:function(){return"未找到结果"},searching:function(){return"搜索中…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/az.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/az",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return t+" simvol silin"},inputTooShort:function(e){var t=e.minimum-e.input.length;return t+" simvol daxil edin"},loadingMore:function(){return"Daha çox nəticə yüklənir…"},maximumSelected:function(e){return"Sadəcə "+e.maximum+" element seçə bilərsiniz"},noResults:function(){return"Nəticə tapılmadı"},searching:function(){return"Axtarılır…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ja.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ja",[],function(){return{errorLoading:function(){return"結果が読み込まれませんでした"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" 文字を削除してください";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="少なくとも "+t+" 文字を入力してください";return n},loadingMore:function(){return"読み込み中…"},maximumSelected:function(e){var t=e.maximum+" 件しか選択できません";return t},noResults:function(){return"対象が見つかりません"},searching:function(){return"検索しています…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/Books/EditModal.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @inherits Czar.AbpDemo.Pages.AbpDemoPageBase
3 | @using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal
4 | @model Czar.AbpDemo.Web.Pages.Books.EditModalModel
5 |
6 | @{
7 | Layout = null;
8 | }
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/Books/CreateModal.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @inherits Czar.AbpDemo.Pages.AbpDemoPageBase
3 | @using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal
4 | @model Czar.AbpDemo.Web.Pages.Books.CreateModalModel
5 | @{
6 | Layout = null;
7 | ViewData["Title"] = "CreateModal";
8 | }
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ko.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ko",[],function(){return{errorLoading:function(){return"결과를 불러올 수 없습니다."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="너무 깁니다. "+t+" 글자 지워주세요.";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="너무 짧습니다. "+t+" 글자 더 입력해주세요.";return n},loadingMore:function(){return"불러오는 중…"},maximumSelected:function(e){var t="최대 "+e.maximum+"개까지만 선택 가능합니다.";return t},noResults:function(){return"결과가 없습니다."},searching:function(){return"검색 중…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/JobSchedule/EditModal.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @inherits Czar.AbpDemo.Pages.AbpDemoPageBase
3 | @using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal
4 | @model Czar.AbpDemo.Web.Pages.JobSchedule.EditModalModel
5 |
6 | @{
7 | Layout = null;
8 | }
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/test/Czar.AbpDemo.Web.Tests/Samples/SampleWebTest.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using Shouldly;
3 | using Xunit;
4 |
5 | namespace Czar.AbpDemo.Samples
6 | {
7 | public class SampleWebTest : AbpDemoWebTestBase
8 | {
9 | [Fact(Skip = "This is disabled since not working")]
10 | public async Task Welcome_Page()
11 | {
12 | var response = await GetResponseAsStringAsync("/");
13 | response.ShouldNotBeNull();
14 | }
15 |
16 | [Fact(Skip = "This is disabled since not working")]
17 | public async Task Login_Page()
18 | {
19 | var response = await GetResponseAsStringAsync("/Account/Login/");
20 | response.ShouldNotBeNull();
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/JobSchedule/CreateModal.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @inherits Czar.AbpDemo.Pages.AbpDemoPageBase
3 | @using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Modal
4 | @model Czar.AbpDemo.Web.Pages.JobSchedule.CreateModalModel
5 | @{
6 | Layout = null;
7 | ViewData["Title"] = "CreateModal";
8 | }
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ar.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ar",[],function(){return{errorLoading:function(){return"لا يمكن تحميل النتائج"},inputTooLong:function(e){var t=e.input.length-e.maximum;return"الرجاء حذف "+t+" عناصر"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"الرجاء إضافة "+t+" عناصر"},loadingMore:function(){return"جاري تحميل نتائج إضافية..."},maximumSelected:function(e){return"تستطيع إختيار "+e.maximum+" بنود فقط"},noResults:function(){return"لم يتم العثور على أي نتائج"},searching:function(){return"جاري البحث…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/id.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/id",[],function(){return{errorLoading:function(){return"Data tidak boleh diambil."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Hapuskan "+t+" huruf"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Masukkan "+t+" huruf lagi"},loadingMore:function(){return"Mengambil data…"},maximumSelected:function(e){return"Anda hanya dapat memilih "+e.maximum+" pilihan"},noResults:function(){return"Tidak ada data yang sesuai"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/vi.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/vi",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vui lòng nhập ít hơn "+t+" ký tự";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vui lòng nhập nhiều hơn "+t+" ký tự";return n},loadingMore:function(){return"Đang lấy thêm kết quả…"},maximumSelected:function(e){var t="Chỉ có thể chọn được "+e.maximum+" lựa chọn";return t},noResults:function(){return"Không tìm thấy kết quả"},searching:function(){return"Đang tìm…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/is.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/is",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vinsamlegast styttið texta um "+t+" staf";return t<=1?n:n+"i"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vinsamlegast skrifið "+t+" staf";return t>1&&(n+="i"),n+=" í viðbót",n},loadingMore:function(){return"Sæki fleiri niðurstöður…"},maximumSelected:function(e){return"Þú getur aðeins valið "+e.maximum+" atriði"},noResults:function(){return"Ekkert fannst"},searching:function(){return"Leita…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/tr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/tr",[],function(){return{errorLoading:function(){return"Sonuç yüklenemedi"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" karakter daha girmelisiniz";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="En az "+t+" karakter daha girmelisiniz";return n},loadingMore:function(){return"Daha fazla…"},maximumSelected:function(e){var t="Sadece "+e.maximum+" seçim yapabilirsiniz";return t},noResults:function(){return"Sonuç bulunamadı"},searching:function(){return"Aranıyor…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.tr.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Turkish
11 | jQuery.timeago.settings.strings = {
12 | suffixAgo: 'önce',
13 | suffixFromNow: null,
14 | seconds: 'birkaç saniye',
15 | minute: '1 dakika',
16 | minutes: '%d dakika',
17 | hour: '1 saat',
18 | hours: '%d saat',
19 | day: '1 gün',
20 | days: '%d gün',
21 | month: '1 ay',
22 | months: '%d ay',
23 | year: '1 yıl',
24 | years: '%d yıl'
25 | };
26 | }));
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/et.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/et",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" vähem",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" rohkem",n},loadingMore:function(){return"Laen tulemusi…"},maximumSelected:function(e){var t="Saad vaid "+e.maximum+" tulemus";return e.maximum==1?t+="e":t+="t",t+=" valida",t},noResults:function(){return"Tulemused puuduvad"},searching:function(){return"Otsin…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/fi.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fi",[],function(){return{errorLoading:function(){return"Tuloksia ei saatu ladattua."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Ole hyvä ja anna "+t+" merkkiä vähemmän"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Ole hyvä ja anna "+t+" merkkiä lisää"},loadingMore:function(){return"Ladataan lisää tuloksia…"},maximumSelected:function(e){return"Voit valita ainoastaan "+e.maximum+" kpl"},noResults:function(){return"Ei tuloksia"},searching:function(){return"Haetaan…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/nb.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nb",[],function(){return{errorLoading:function(){return"Kunne ikke hente resultater."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Vennligst fjern "+t+" tegn"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vennligst skriv inn "+t+" tegn til";return n+" tegn til"},loadingMore:function(){return"Laster flere resultater…"},maximumSelected:function(e){return"Du kan velge maks "+e.maximum+" elementer"},noResults:function(){return"Ingen treff"},searching:function(){return"Søker…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/th.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/th",[],function(){return{errorLoading:function(){return"ไม่สามารถค้นข้อมูลได้"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="โปรดลบออก "+t+" ตัวอักษร";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="โปรดพิมพ์เพิ่มอีก "+t+" ตัวอักษร";return n},loadingMore:function(){return"กำลังค้นข้อมูลเพิ่ม…"},maximumSelected:function(e){var t="คุณสามารถเลือกได้ไม่เกิน "+e.maximum+" รายการ";return t},noResults:function(){return"ไม่พบข้อมูล"},searching:function(){return"กำลังค้นข้อมูล…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/sv.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sv",[],function(){return{errorLoading:function(){return"Resultat kunde inte laddas."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vänligen sudda ut "+t+" tecken";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vänligen skriv in "+t+" eller fler tecken";return n},loadingMore:function(){return"Laddar fler resultat…"},maximumSelected:function(e){var t="Du kan max välja "+e.maximum+" element";return t},noResults:function(){return"Inga träffar"},searching:function(){return"Söker…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/bg.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/bg",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Моля въведете с "+t+" по-малко символ";return t>1&&(n+="a"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Моля въведете още "+t+" символ";return t>1&&(n+="a"),n},loadingMore:function(){return"Зареждат се още…"},maximumSelected:function(e){var t="Можете да направите до "+e.maximum+" ";return e.maximum>1?t+="избора":t+="избор",t},noResults:function(){return"Няма намерени съвпадения"},searching:function(){return"Търсене…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/hu.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hu",[],function(){return{errorLoading:function(){return"Az eredmények betöltése nem sikerült."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Túl hosszú. "+t+" karakterrel több, mint kellene."},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Túl rövid. Még "+t+" karakter hiányzik."},loadingMore:function(){return"Töltés…"},maximumSelected:function(e){return"Csak "+e.maximum+" elemet lehet kiválasztani."},noResults:function(){return"Nincs találat."},searching:function(){return"Keresés…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/km.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/km",[],function(){return{errorLoading:function(){return"មិនអាចទាញយកទិន្នន័យ"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="សូមលុបចេញ "+t+" អក្សរ";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="សូមបញ្ចូល"+t+" អក្សរ រឺ ច្រើនជាងនេះ";return n},loadingMore:function(){return"កំពុងទាញយកទិន្នន័យបន្ថែម..."},maximumSelected:function(e){var t="អ្នកអាចជ្រើសរើសបានតែ "+e.maximum+" ជម្រើសប៉ុណ្ណោះ";return t},noResults:function(){return"មិនមានលទ្ធផល"},searching:function(){return"កំពុងស្វែងរក..."}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ms.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ms",[],function(){return{errorLoading:function(){return"Keputusan tidak berjaya dimuatkan."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Sila hapuskan "+t+" aksara"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Sila masukkan "+t+" atau lebih aksara"},loadingMore:function(){return"Sedang memuatkan keputusan…"},maximumSelected:function(e){return"Anda hanya boleh memilih "+e.maximum+" pilihan"},noResults:function(){return"Tiada padanan yang ditemui"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/test/Czar.AbpDemo.Web.Tests/AbpDemoWebTestStartup.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Microsoft.AspNetCore.Builder;
3 | using Microsoft.Extensions.DependencyInjection;
4 | using Microsoft.Extensions.Logging;
5 | using Volo.Abp;
6 |
7 | namespace Czar.AbpDemo
8 | {
9 | public class AbpDemoWebTestStartup
10 | {
11 | public IServiceProvider ConfigureServices(IServiceCollection services)
12 | {
13 | services.AddApplication(options =>
14 | {
15 | options.UseAutofac();
16 | });
17 |
18 | return services.BuildServiceProviderFromFactory();
19 | }
20 |
21 | public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory)
22 | {
23 | app.InitializeApplication();
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/methods_fi.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Localized default methods for the jQuery validation plugin.
13 | * Locale: FI
14 | */
15 | $.extend( $.validator.methods, {
16 | date: function( value, element ) {
17 | return this.optional( element ) || /^\d{1,2}\.\d{1,2}\.\d{4}$/.test( value );
18 | },
19 | number: function( value, element ) {
20 | return this.optional( element ) || /^-?(?:\d+)(?:,\d+)?$/.test( value );
21 | }
22 | } );
23 | return $;
24 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/da.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/da",[],function(){return{errorLoading:function(){return"Resultaterne kunne ikke indlæses."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Angiv venligst "+t+" tegn mindre"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Angiv venligst "+t+" tegn mere"},loadingMore:function(){return"Indlæser flere resultater…"},maximumSelected:function(e){var t="Du kan kun vælge "+e.maximum+" emne";return e.maximum!=1&&(t+="r"),t},noResults:function(){return"Ingen resultater fundet"},searching:function(){return"Søger…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.it.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Italian
11 | jQuery.timeago.settings.strings = {
12 | suffixAgo: "fa",
13 | suffixFromNow: "da ora",
14 | seconds: "meno di un minuto",
15 | minute: "circa un minuto",
16 | minutes: "%d minuti",
17 | hour: "circa un'ora",
18 | hours: "circa %d ore",
19 | day: "un giorno",
20 | days: "%d giorni",
21 | month: "circa un mese",
22 | months: "%d mesi",
23 | year: "circa un anno",
24 | years: "%d anni"
25 | };
26 | }));
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/methods_de.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Localized default methods for the jQuery validation plugin.
13 | * Locale: DE
14 | */
15 | $.extend( $.validator.methods, {
16 | date: function( value, element ) {
17 | return this.optional( element ) || /^\d\d?\.\d\d?\.\d\d\d?\d?$/.test( value );
18 | },
19 | number: function( value, element ) {
20 | return this.optional( element ) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test( value );
21 | }
22 | } );
23 | return $;
24 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.fr-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // French shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "il y a",
13 | prefixFromNow: "d'ici",
14 | seconds: "moins d'une minute",
15 | minute: "une minute",
16 | minutes: "%d minutes",
17 | hour: "une heure",
18 | hours: "%d heures",
19 | day: "un jour",
20 | days: "%d jours",
21 | month: "un mois",
22 | months: "%d mois",
23 | year: "un an",
24 | years: "%d ans"
25 | };
26 | }));
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/methods_es_CL.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Localized default methods for the jQuery validation plugin.
13 | * Locale: ES_CL
14 | */
15 | $.extend( $.validator.methods, {
16 | date: function( value, element ) {
17 | return this.optional( element ) || /^\d\d?\-\d\d?\-\d\d\d?\d?$/.test( value );
18 | },
19 | number: function( value, element ) {
20 | return this.optional( element ) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test( value );
21 | }
22 | } );
23 | return $;
24 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/en.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Please delete "+t+" character";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Please enter "+t+" or more characters";return n},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var t="You can only select "+e.maximum+" item";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/hy.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hy",[],function(){return{errorLoading:function(){return"Արդյունքները հնարավոր չէ բեռնել։"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Խնդրում ենք հեռացնել "+t+" նշան";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Խնդրում ենք մուտքագրել "+t+" կամ ավել նշաններ";return n},loadingMore:function(){return"Բեռնվում են նոր արդյունքներ․․․"},maximumSelected:function(e){var t="Դուք կարող եք ընտրել առավելագույնը "+e.maximum+" կետ";return t},noResults:function(){return"Արդյունքներ չեն գտնվել"},searching:function(){return"Որոնում․․․"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.sq.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Albanian SQ
11 | jQuery.timeago.settings.strings = {
12 | suffixAgo: "më parë",
13 | suffixFromNow: "tani",
14 | seconds: "më pak se një minutë",
15 | minute: "rreth një minutë",
16 | minutes: "%d minuta",
17 | hour: "rreth një orë",
18 | hours: "rreth %d orë",
19 | day: "një ditë",
20 | days: "%d ditë",
21 | month: "rreth një muaj",
22 | months: "%d muaj",
23 | year: "rreth një vit",
24 | years: "%d vjet"
25 | };
26 | }));
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/he.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/he",[],function(){return{errorLoading:function(){return"שגיאה בטעינת התוצאות"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="נא למחוק ";return t===1?n+="תו אחד":n+=t+" תווים",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="נא להכניס ";return t===1?n+="תו אחד":n+=t+" תווים",n+=" או יותר",n},loadingMore:function(){return"טוען תוצאות נוספות…"},maximumSelected:function(e){var t="באפשרותך לבחור עד ";return e.maximum===1?t+="פריט אחד":t+=e.maximum+" פריטים",t},noResults:function(){return"לא נמצאו תוצאות"},searching:function(){return"מחפש…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/hi.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hi",[],function(){return{errorLoading:function(){return"परिणामों को लोड नहीं किया जा सका।"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" अक्षर को हटा दें";return t>1&&(n=t+" अक्षरों को हटा दें "),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="कृपया "+t+" या अधिक अक्षर दर्ज करें";return n},loadingMore:function(){return"अधिक परिणाम लोड हो रहे है..."},maximumSelected:function(e){var t="आप केवल "+e.maximum+" आइटम का चयन कर सकते हैं";return t},noResults:function(){return"कोई परिणाम नहीं मिला"},searching:function(){return"खोज रहा है..."}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.hy.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Armenian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "առաջ",
15 | suffixFromNow: "հետո",
16 | seconds: "վայրկյաններ",
17 | minute: "մեկ րոպե",
18 | minutes: "%d րոպե",
19 | hour: "մեկ ժամ",
20 | hours: "%d ժամ",
21 | day: "մեկ օր",
22 | days: "%d օր",
23 | month: "մեկ ամիս",
24 | months: "%d ամիս",
25 | year: "մեկ տարի",
26 | years: "%d տարի"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/methods_nl.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Localized default methods for the jQuery validation plugin.
13 | * Locale: NL
14 | */
15 | $.extend( $.validator.methods, {
16 | date: function( value, element ) {
17 | return this.optional( element ) || /^\d\d?[\.\/\-]\d\d?[\.\/\-]\d\d\d?\d?$/.test( value );
18 | },
19 | number: function( value, element ) {
20 | return this.optional( element ) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test( value );
21 | }
22 | } );
23 | return $;
24 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/fa.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fa",[],function(){return{errorLoading:function(){return"امکان بارگذاری نتایج وجود ندارد."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="لطفاً "+t+" کاراکتر را حذف نمایید";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="لطفاً تعداد "+t+" کاراکتر یا بیشتر وارد نمایید";return n},loadingMore:function(){return"در حال بارگذاری نتایج بیشتر..."},maximumSelected:function(e){var t="شما تنها میتوانید "+e.maximum+" آیتم را انتخاب نمایید";return t},noResults:function(){return"هیچ نتیجهای یافت نشد"},searching:function(){return"در حال جستجو..."}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/hr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hr",[],function(){function e(e){var t=" "+e+" znak";return e%10<5&&e%10>0&&(e%100<5||e%100>19)?e%10>1&&(t+="a"):t+="ova",t}return{errorLoading:function(){return"Preuzimanje nije uspjelo."},inputTooLong:function(t){var n=t.input.length-t.maximum;return"Unesite "+e(n)},inputTooShort:function(t){var n=t.minimum-t.input.length;return"Unesite još "+e(n)},loadingMore:function(){return"Učitavanje rezultata…"},maximumSelected:function(e){return"Maksimalan broj odabranih stavki je "+e.maximum},noResults:function(){return"Nema rezultata"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.ja.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Japanese
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "",
13 | prefixFromNow: "今から",
14 | suffixAgo: "前",
15 | suffixFromNow: "後",
16 | seconds: "1 分未満",
17 | minute: "約 1 分",
18 | minutes: "%d 分",
19 | hour: "約 1 時間",
20 | hours: "約 %d 時間",
21 | day: "約 1 日",
22 | days: "約 %d 日",
23 | month: "約 1 ヶ月",
24 | months: "約 %d ヶ月",
25 | year: "約 1 年",
26 | years: "約 %d 年",
27 | wordSeparator: ""
28 | };
29 | }));
30 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/eu.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/eu",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gutxiago",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gehiago",n},loadingMore:function(){return"Emaitza gehiago kargatzen…"},maximumSelected:function(e){return e.maximum===1?"Elementu bakarra hauta dezakezu":e.maximum+" elementu hauta ditzakezu soilik"},noResults:function(){return"Ez da bat datorrenik aurkitu"},searching:function(){return"Bilatzen…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/mk.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/mk",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Ве молиме внесете "+e.maximum+" помалку карактер";return e.maximum!==1&&(n+="и"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Ве молиме внесете уште "+e.maximum+" карактер";return e.maximum!==1&&(n+="и"),n},loadingMore:function(){return"Вчитување резултати…"},maximumSelected:function(e){var t="Можете да изберете само "+e.maximum+" ставк";return e.maximum===1?t+="а":t+="и",t},noResults:function(){return"Нема пронајдено совпаѓања"},searching:function(){return"Пребарување…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.de-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // German shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "s",
17 | minute: "1m",
18 | minutes: "%dm",
19 | hour: "1h",
20 | hours: "%dh",
21 | day: "1T.",
22 | days: "%dT.",
23 | month: "1Mt.",
24 | months: "%dMt.",
25 | year: "1J.",
26 | years: "%dJ.",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.en-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // English shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "1m",
17 | minute: "1m",
18 | minutes: "%dm",
19 | hour: "1h",
20 | hours: "%dh",
21 | day: "1d",
22 | days: "%dd",
23 | month: "1mo",
24 | months: "%dmo",
25 | year: "1yr",
26 | years: "%dyr",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.it-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Italian shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "1m",
17 | minute: "1m",
18 | minutes: "%dm",
19 | hour: "1h",
20 | hours: "%dh",
21 | day: "1g",
22 | days: "%dg",
23 | month: "1me",
24 | months: "%dme",
25 | year: "1a",
26 | years: "%da",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.ko.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Korean
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "전",
15 | suffixFromNow: "후",
16 | seconds: "1분",
17 | minute: "약 1분",
18 | minutes: "%d분",
19 | hour: "약 1시간",
20 | hours: "약 %d시간",
21 | day: "하루",
22 | days: "%d일",
23 | month: "약 1개월",
24 | months: "%d개월",
25 | year: "약 1년",
26 | years: "%d년",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
32 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.pt-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Portuguese shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "1m",
17 | minute: "1m",
18 | minutes: "%dm",
19 | hour: "1h",
20 | hours: "%dh",
21 | day: "1d",
22 | days: "%dd",
23 | month: "1M",
24 | months: "%dM",
25 | year: "1a",
26 | years: "%da",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.tr-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Turkish shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "1dk",
17 | minute: "1dk",
18 | minutes: "%ddk",
19 | hour: "1s",
20 | hours: "%ds",
21 | day: "1g",
22 | days: "%dg",
23 | month: "1ay",
24 | months: "%day",
25 | year: "1y",
26 | years: "%dy",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/af.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/af",[],function(){return{errorLoading:function(){return"Die resultate kon nie gelaai word nie."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Verwyders asseblief "+t+" character";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Voer asseblief "+t+" of meer karakters";return n},loadingMore:function(){return"Meer resultate word gelaai…"},maximumSelected:function(e){var t="Kies asseblief net "+e.maximum+" item";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"Geen resultate gevind"},searching:function(){return"Besig…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/de.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/de",[],function(){return{errorLoading:function(){return"Die Ergebnisse konnten nicht geladen werden."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Bitte "+t+" Zeichen weniger eingeben"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Bitte "+t+" Zeichen mehr eingeben"},loadingMore:function(){return"Lade mehr Ergebnisse…"},maximumSelected:function(e){var t="Sie können nur "+e.maximum+" Eintr";return e.maximum===1?t+="ag":t+="äge",t+=" auswählen",t},noResults:function(){return"Keine Übereinstimmungen gefunden"},searching:function(){return"Suche…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.es-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Spanish shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "1m",
17 | minute: "1m",
18 | minutes: "%dm",
19 | hour: "1h",
20 | hours: "%dh",
21 | day: "1d",
22 | days: "%dd",
23 | month: "1me",
24 | months: "%dme",
25 | year: "1a",
26 | years: "%da",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
32 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.ro.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Romanian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "acum",
13 | prefixFromNow: "in timp de",
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "mai putin de un minut",
17 | minute: "un minut",
18 | minutes: "%d minute",
19 | hour: "o ora",
20 | hours: "%d ore",
21 | day: "o zi",
22 | days: "%d zile",
23 | month: "o luna",
24 | months: "%d luni",
25 | year: "un an",
26 | years: "%d ani"
27 | };
28 | }));
29 |
30 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/Permissions/AbpDemoPermissionDefinitionProvider.cs:
--------------------------------------------------------------------------------
1 | using Czar.AbpDemo.Localization.AbpDemo;
2 | using Volo.Abp.Authorization.Permissions;
3 | using Volo.Abp.Localization;
4 |
5 | namespace Czar.AbpDemo.Permissions
6 | {
7 | public class AbpDemoPermissionDefinitionProvider : PermissionDefinitionProvider
8 | {
9 | public override void Define(IPermissionDefinitionContext context)
10 | {
11 | var myGroup = context.AddGroup(AbpDemoPermissions.GroupName);
12 |
13 | //Define your own permissions here. Examaple:
14 | //myGroup.AddPermission(AbpDemoPermissions.MyPermission1, L("Permission:MyPermission1"));
15 | }
16 |
17 | private static LocalizableString L(string name)
18 | {
19 | return LocalizableString.Create(name);
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/pt-BR.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt-BR",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Apague "+t+" caracter";return t!=1&&(n+="es"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Digite "+t+" ou mais caracteres";return n},loadingMore:function(){return"Carregando mais resultados…"},maximumSelected:function(e){var t="Você só pode selecionar "+e.maximum+" ite";return e.maximum==1?t+="m":t+="ns",t},noResults:function(){return"Nenhum resultado encontrado"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.pt-br-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Portuguese Brasil shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "1m",
17 | minute: "1m",
18 | minutes: "%dm",
19 | hour: "1h",
20 | hours: "%dh",
21 | day: "1d",
22 | days: "%dd",
23 | month: "1M",
24 | months: "%dM",
25 | year: "1a",
26 | years: "%da",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/lv.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lv",[],function(){function e(e,t,n,r){return e===11?t:e%10===1?n:r}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Lūdzu ievadiet par "+n;return r+=" simbol"+e(n,"iem","u","iem"),r+" mazāk"},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Lūdzu ievadiet vēl "+n;return r+=" simbol"+e(n,"us","u","us"),r},loadingMore:function(){return"Datu ielāde…"},maximumSelected:function(t){var n="Jūs varat izvēlēties ne vairāk kā "+t.maximum;return n+=" element"+e(t.maximum,"us","u","us"),n},noResults:function(){return"Sakritību nav"},searching:function(){return"Meklēšana…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/pt.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor apague "+t+" ";return n+=t!=1?"caracteres":"caractere",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Introduza "+t+" ou mais caracteres";return n},loadingMore:function(){return"A carregar mais resultados…"},maximumSelected:function(e){var t="Apenas pode seleccionar "+e.maximum+" ";return t+=e.maximum!=1?"itens":"item",t},noResults:function(){return"Sem resultados"},searching:function(){return"A procurar…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.bg.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Bulgarian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "преди",
13 | prefixFromNow: "след",
14 | suffixAgo: null,
15 | suffixFromNow: null,
16 | seconds: "по-малко от минута",
17 | minute: "една минута",
18 | minutes: "%d минути",
19 | hour: "един час",
20 | hours: "%d часа",
21 | day: "един ден",
22 | days: "%d дни",
23 | month: "един месец",
24 | months: "%d месеца",
25 | year: "една година",
26 | years: "%d години"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.da.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Danish
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "for",
13 | prefixFromNow: "om",
14 | suffixAgo: "siden",
15 | suffixFromNow: "",
16 | seconds: "mindre end et minut",
17 | minute: "ca. et minut",
18 | minutes: "%d minutter",
19 | hour: "ca. en time",
20 | hours: "ca. %d timer",
21 | day: "en dag",
22 | days: "%d dage",
23 | month: "ca. en måned",
24 | months: "%d måneder",
25 | year: "ca. et år",
26 | years: "%d år"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.gl.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Galician
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "hai",
13 | prefixFromNow: "dentro de",
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "menos dun minuto",
17 | minute: "un minuto",
18 | minutes: "uns %d minutos",
19 | hour: "unha hora",
20 | hours: "%d horas",
21 | day: "un día",
22 | days: "%d días",
23 | month: "un mes",
24 | months: "%d meses",
25 | year: "un ano",
26 | years: "%d anos"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.pt.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Portuguese
11 | jQuery.timeago.settings.strings = {
12 | suffixAgo: "atrás",
13 | suffixFromNow: "a partir de agora",
14 | seconds: "menos de um minuto",
15 | minute: "cerca de um minuto",
16 | minutes: "%d minutos",
17 | hour: "cerca de uma hora",
18 | hours: "cerca de %d horas",
19 | day: "um dia",
20 | days: "%d dias",
21 | month: "cerca de um mês",
22 | months: "%d meses",
23 | year: "cerca de um ano",
24 | years: "%d anos"
25 | };
26 | }));
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ca.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ca",[],function(){return{errorLoading:function(){return"La càrrega ha fallat"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Si us plau, elimina "+t+" car";return t==1?n+="àcter":n+="àcters",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Si us plau, introdueix "+t+" car";return t==1?n+="àcter":n+="àcters",n},loadingMore:function(){return"Carregant més resultats…"},maximumSelected:function(e){var t="Només es pot seleccionar "+e.maximum+" element";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No s'han trobat resultats"},searching:function(){return"Cercant…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.no.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Norwegian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "for",
13 | prefixFromNow: "om",
14 | suffixAgo: "siden",
15 | suffixFromNow: "",
16 | seconds: "mindre enn et minutt",
17 | minute: "ca. et minutt",
18 | minutes: "%d minutter",
19 | hour: "ca. en time",
20 | hours: "ca. %d timer",
21 | day: "en dag",
22 | days: "%d dager",
23 | month: "ca. en måned",
24 | months: "%d måneder",
25 | year: "ca. et år",
26 | years: "%d år"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.zh-CN.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Simplified Chinese
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: "从现在开始",
14 | suffixAgo: "之前",
15 | suffixFromNow: null,
16 | seconds: "不到1分钟",
17 | minute: "大约1分钟",
18 | minutes: "%d分钟",
19 | hour: "大约1小时",
20 | hours: "大约%d小时",
21 | day: "1天",
22 | days: "%d天",
23 | month: "大约1个月",
24 | months: "%d月",
25 | year: "大约1年",
26 | years: "%d年",
27 | numbers: [],
28 | wordSeparator: ""
29 | };
30 | }));
31 |
32 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.zh-TW.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Traditional Chinese, zh-tw
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: "從現在開始",
14 | suffixAgo: "之前",
15 | suffixFromNow: null,
16 | seconds: "不到1分鐘",
17 | minute: "大約1分鐘",
18 | minutes: "%d分鐘",
19 | hour: "大約1小時",
20 | hours: "%d小時",
21 | day: "大約1天",
22 | days: "%d天",
23 | month: "大約1個月",
24 | months: "%d個月",
25 | year: "大約1年",
26 | years: "%d年",
27 | numbers: [],
28 | wordSeparator: ""
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/fr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fr",[],function(){return{errorLoading:function(){return"Les résultats ne peuvent pas être chargés."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Supprimez "+t+" caractère"+(t>1)?"s":""},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Saisissez au moins "+t+" caractère"+(t>1)?"s":""},loadingMore:function(){return"Chargement de résultats supplémentaires…"},maximumSelected:function(e){return"Vous pouvez seulement sélectionner "+e.maximum+" élément"+(e.maximum>1)?"s":""},noResults:function(){return"Aucun résultat trouvé"},searching:function(){return"Recherche en cours…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/it.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/it",[],function(){return{errorLoading:function(){return"I risultati non possono essere caricati."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Per favore cancella "+t+" caratter";return t!==1?n+="i":n+="e",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Per favore inserisci "+t+" o più caratteri";return n},loadingMore:function(){return"Caricando più risultati…"},maximumSelected:function(e){var t="Puoi selezionare solo "+e.maximum+" element";return e.maximum!==1?t+="i":t+="o",t},noResults:function(){return"Nessun risultato trovato"},searching:function(){return"Sto cercando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.az-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Azerbaijani shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: '1 dəq',
17 | minute: '1 dəq',
18 | minutes: '%d dəq',
19 | hour: '1 saat',
20 | hours: '%d saat',
21 | day: '1 gün',
22 | days: '%d gün',
23 | month: '1 ay',
24 | months: '%d ay',
25 | year: '1 il',
26 | years: '%d il',
27 | wordSeparator: '',
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.es.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Spanish
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "hace",
13 | prefixFromNow: "dentro de",
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "menos de un minuto",
17 | minute: "un minuto",
18 | minutes: "unos %d minutos",
19 | hour: "una hora",
20 | hours: "%d horas",
21 | day: "un día",
22 | days: "%d días",
23 | month: "un mes",
24 | months: "%d meses",
25 | year: "un año",
26 | years: "%d años"
27 | };
28 | }));
29 |
30 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.pt-br.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Brazilian Portuguese
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "há",
13 | prefixFromNow: "em",
14 | suffixAgo: null,
15 | suffixFromNow: null,
16 | seconds: "alguns segundos",
17 | minute: "um minuto",
18 | minutes: "%d minutos",
19 | hour: "uma hora",
20 | hours: "%d horas",
21 | day: "um dia",
22 | days: "%d dias",
23 | month: "um mês",
24 | months: "%d meses",
25 | year: "um ano",
26 | years: "%d anos"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ps.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ps",[],function(){return{errorLoading:function(){return"پايلي نه سي ترلاسه کېدای"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="د مهربانۍ لمخي "+t+" توری ړنګ کړئ";return t!=1&&(n=n.replace("توری","توري")),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="لږ تر لږه "+t+" يا ډېر توري وليکئ";return n},loadingMore:function(){return"نوري پايلي ترلاسه کيږي..."},maximumSelected:function(e){var t="تاسو يوازي "+e.maximum+" قلم په نښه کولای سی";return e.maximum!=1&&(t=t.replace("قلم","قلمونه")),t},noResults:function(){return"پايلي و نه موندل سوې"},searching:function(){return"لټول کيږي..."}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.az.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Azerbaijani
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: 'əvvəl',
15 | suffixFromNow: 'sonra',
16 | seconds: 'saniyələr',
17 | minute: '1 dəqiqə',
18 | minutes: '%d dəqiqə',
19 | hour: '1 saat',
20 | hours: '%d saat',
21 | day: '1 gün',
22 | days: '%d gün',
23 | month: '1 ay',
24 | months: '%d ay',
25 | year: '1 il',
26 | years: '%d il',
27 | wordSeparator: '',
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.lt.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | //Lithuanian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "prieš",
13 | prefixFromNow: null,
14 | suffixAgo: null,
15 | suffixFromNow: "nuo dabar",
16 | seconds: "%d sek.",
17 | minute: "min.",
18 | minutes: "%d min.",
19 | hour: "val.",
20 | hours: "%d val.",
21 | day: "1 d.",
22 | days: "%d d.",
23 | month: "mėn.",
24 | months: "%d mėn.",
25 | year: "metus",
26 | years: "%d metus",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.lv.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | //Latvian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "pirms",
13 | prefixFromNow: null,
14 | suffixAgo: null,
15 | suffixFromNow: "no šī brīža",
16 | seconds: "%d sek.",
17 | minute: "min.",
18 | minutes: "%d min.",
19 | hour: "st.",
20 | hours: "%d st.",
21 | day: "1 d.",
22 | days: "%d d.",
23 | month: "mēnesis.",
24 | months: "%d mēnesis.",
25 | year: "gads",
26 | years: "%d gads",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Quartz/Czar.AbpDemo.Quartz.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.2
5 | Czar.AbpDemo
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/gl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/gl",[],function(){return{errorLoading:function(){return"Non foi posíbel cargar os resultados."},inputTooLong:function(e){var t=e.input.length-e.maximum;return t===1?"Elimine un carácter":"Elimine "+t+" caracteres"},inputTooShort:function(e){var t=e.minimum-e.input.length;return t===1?"Engada un carácter":"Engada "+t+" caracteres"},loadingMore:function(){return"Cargando máis resultados…"},maximumSelected:function(e){return e.maximum===1?"Só pode seleccionar un elemento":"Só pode seleccionar "+e.maximum+" elementos"},noResults:function(){return"Non se atoparon resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/sl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sl",[],function(){return{errorLoading:function(){return"Zadetkov iskanja ni bilo mogoče naložiti."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Prosim zbrišite "+t+" znak";return t==2?n+="a":t!=1&&(n+="e"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Prosim vpišite še "+t+" znak";return t==2?n+="a":t!=1&&(n+="e"),n},loadingMore:function(){return"Nalagam več zadetkov…"},maximumSelected:function(e){var t="Označite lahko največ "+e.maximum+" predmet";return e.maximum==2?t+="a":e.maximum!=1&&(t+="e"),t},noResults:function(){return"Ni zadetkov."},searching:function(){return"Iščem…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.eu.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | jQuery.timeago.settings.strings = {
11 | prefixAgo: "duela",
12 | prefixFromNow: "hemendik",
13 | suffixAgo: "",
14 | suffixFromNow: "barru",
15 | seconds: "minutu bat bainu gutxiago",
16 | minute: "minutu bat",
17 | minutes: "%d minutu inguru",
18 | hour: "ordu bat",
19 | hours: "%d ordu",
20 | day: "egun bat",
21 | days: "%d egun",
22 | month: "hilabete bat",
23 | months: "%d hilabete",
24 | year: "urte bat",
25 | years: "%d urte"
26 | };
27 | }));
28 |
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/es.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/es",[],function(){return{errorLoading:function(){return"No se pudieron cargar los resultados"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor, elimine "+t+" car";return t==1?n+="ácter":n+="acteres",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Por favor, introduzca "+t+" car";return t==1?n+="ácter":n+="acteres",n},loadingMore:function(){return"Cargando más resultados…"},maximumSelected:function(e){var t="Sólo puede seleccionar "+e.maximum+" elemento";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No se encontraron resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.de.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // German
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "vor",
13 | prefixFromNow: "in",
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "wenigen Sekunden",
17 | minute: "etwa einer Minute",
18 | minutes: "%d Minuten",
19 | hour: "etwa einer Stunde",
20 | hours: "%d Stunden",
21 | day: "etwa einem Tag",
22 | days: "%d Tagen",
23 | month: "etwa einem Monat",
24 | months: "%d Monaten",
25 | year: "etwa einem Jahr",
26 | years: "%d Jahren"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.el.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Greek
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "πριν",
13 | prefixFromNow: "σε",
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "λιγότερο από ένα λεπτό",
17 | minute: "περίπου ένα λεπτό",
18 | minutes: "%d λεπτά",
19 | hour: "περίπου μία ώρα",
20 | hours: "περίπου %d ώρες",
21 | day: "μία μέρα",
22 | days: "%d μέρες",
23 | month: "περίπου ένα μήνα",
24 | months: "%d μήνες",
25 | year: "περίπου ένα χρόνο",
26 | years: "%d χρόνια"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.is.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | jQuery.timeago.settings.strings = {
11 | prefixAgo: "fyrir",
12 | prefixFromNow: "eftir",
13 | suffixAgo: "síðan",
14 | suffixFromNow: null,
15 | seconds: "minna en mínútu",
16 | minute: "mínútu",
17 | minutes: "%d mínútum",
18 | hour: "klukkutíma",
19 | hours: "um %d klukkutímum",
20 | day: "degi",
21 | days: "%d dögum",
22 | month: "mánuði",
23 | months: "%d mánuðum",
24 | year: "ári",
25 | years: "%d árum",
26 | wordSeparator: " ",
27 | numbers: []
28 | };
29 | }));
30 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.si.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Sinhalese (SI)
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "පෙර",
15 | suffixFromNow: "පසුව",
16 | seconds: "තත්පර කිහිපයකට",
17 | minute: "මිනිත්තුවකට පමණ",
18 | minutes: "මිනිත්තු %d කට",
19 | hour: "පැයක් පමණ ",
20 | hours: "පැය %d කට පමණ",
21 | day: "දවසක ට",
22 | days: "දවස් %d කට ",
23 | month: "මාසයක් පමණ",
24 | months: "මාස %d කට",
25 | year: "වසරක් පමණ",
26 | years: "වසරක් %d කට පමණ"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.sv.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Swedish
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "för",
13 | prefixFromNow: "om",
14 | suffixAgo: "sedan",
15 | suffixFromNow: "",
16 | seconds: "mindre än en minut",
17 | minute: "ungefär en minut",
18 | minutes: "%d minuter",
19 | hour: "ungefär en timme",
20 | hours: "ungefär %d timmar",
21 | day: "en dag",
22 | days: "%d dagar",
23 | month: "ungefär en månad",
24 | months: "%d månader",
25 | year: "ungefär ett år",
26 | years: "%d år"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/test/Czar.AbpDemo.Application.Tests/Samples/SampleTest.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using Microsoft.Extensions.DependencyInjection;
3 | using Shouldly;
4 | using Volo.Abp.Identity;
5 | using Xunit;
6 |
7 | namespace Czar.AbpDemo.Samples
8 | {
9 | public class SampleTest : AbpDemoApplicationTestBase
10 | {
11 | private readonly IIdentityUserAppService _userAppService;
12 |
13 | public SampleTest()
14 | {
15 | _userAppService = ServiceProvider.GetRequiredService();
16 | }
17 |
18 | [Fact]
19 | public async Task Initial_Data_Should_Contain_Admin_User()
20 | {
21 | var result = await _userAppService.GetListAsync(new GetIdentityUsersInput());
22 | result.TotalCount.ShouldBeGreaterThan(0);
23 | result.Items.ShouldContain(u => u.UserName == "admin");
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/nl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nl",[],function(){return{errorLoading:function(){return"De resultaten konden niet worden geladen."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Gelieve "+t+" karakters te verwijderen";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Gelieve "+t+" of meer karakters in te voeren";return n},loadingMore:function(){return"Meer resultaten laden…"},maximumSelected:function(e){var t=e.maximum==1?"kan":"kunnen",n="Er "+t+" maar "+e.maximum+" item";return e.maximum!=1&&(n+="s"),n+=" worden geselecteerd",n},noResults:function(){return"Geen resultaten gevonden…"},searching:function(){return"Zoeken…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ro.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ro",[],function(){return{errorLoading:function(){return"Rezultatele nu au putut fi incărcate."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vă rugăm să ștergeți"+t+" caracter";return t!==1&&(n+="e"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vă rugăm să introduceți "+t+" sau mai multe caractere";return n},loadingMore:function(){return"Se încarcă mai multe rezultate…"},maximumSelected:function(e){var t="Aveți voie să selectați cel mult "+e.maximum;return t+=" element",e.maximum!==1&&(t+="e"),t},noResults:function(){return"Nu au fost găsite rezultate"},searching:function(){return"Căutare…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.af.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Afrikaans
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "gelede",
15 | suffixFromNow: "van nou af",
16 | seconds: "%d sekondes",
17 | minute: "1 minuut",
18 | minutes: "%d minute",
19 | hour: "1 uur",
20 | hours: "%d ure",
21 | day: "1 dag",
22 | days: "%d dae",
23 | month: "1 maand",
24 | months: "%d maande",
25 | year: "1 jaar",
26 | years: "%d jaar",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.ca.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Catalan
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "fa",
13 | prefixFromNow: "d'aquí",
14 | suffixAgo: null,
15 | suffixFromNow: null,
16 | seconds: "menys d'un minut",
17 | minute: "un minut",
18 | minutes: "%d minuts",
19 | hour: "una hora",
20 | hours: "%d hores",
21 | day: "un dia",
22 | days: "%d dies",
23 | month: "un mes",
24 | months: "%d mesos",
25 | year: "un any",
26 | years: "%d anys",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/lt.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lt",[],function(){function e(e,t,n,r){return e%10===1&&(e%100<11||e%100>19)?t:e%10>=2&&e%10<=9&&(e%100<11||e%100>19)?n:r}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Pašalinkite "+n+" simbol";return r+=e(n,"į","ius","ių"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Įrašykite dar "+n+" simbol";return r+=e(n,"į","ius","ių"),r},loadingMore:function(){return"Kraunama daugiau rezultatų…"},maximumSelected:function(t){var n="Jūs galite pasirinkti tik "+t.maximum+" element";return n+=e(t.maximum,"ą","us","ų"),n},noResults:function(){return"Atitikmenų nerasta"},searching:function(){return"Ieškoma…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.am.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Amharic
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "በፊት",
15 | suffixFromNow: "በኋላ",
16 | seconds: "ከአንድ ደቂቃ በታች",
17 | minute: "ከአንድ ደቂቃ ገደማ",
18 | minutes: "ከ%d ደቂቃ",
19 | hour: "ከአንድ ሰዓት ገደማ",
20 | hours: "ከ%d ሰዓት ገደማ",
21 | day: "ከአንድ ቀን",
22 | days: "ከ%d ቀን",
23 | month: "ከአንድ ወር ገደማ",
24 | months: "ከ%d ወር",
25 | year: "ከአንድ ዓመት ገደማ",
26 | years: "ከ%d ዓመት",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.cy.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Welsh
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "yn ôl",
15 | suffixFromNow: "o hyn",
16 | seconds: "llai na munud",
17 | minute: "am funud",
18 | minutes: "%d munud",
19 | hour: "tua awr",
20 | hours: "am %d awr",
21 | day: "y dydd",
22 | days: "%d diwrnod",
23 | month: "tua mis",
24 | months: "%d mis",
25 | year: "am y flwyddyn",
26 | years: "%d blynedd",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.rw.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Kinyarwanda
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "hashize",
13 | prefixFromNow: "mu",
14 | suffixAgo: null,
15 | suffixFromNow: null,
16 | seconds: "amasegonda macye",
17 | minute: "umunota",
18 | minutes: "iminota %d",
19 | hour: "isaha",
20 | hours: "amasaha %d",
21 | day: "umunsi",
22 | days: "iminsi %d",
23 | month: "ukwezi",
24 | months: "amezi %d",
25 | year: "umwaka",
26 | years: "imyaka %d",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/Czar.AbpDemo.Domain.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.2
5 | Czar.AbpDemo
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.id.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Indonesian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "yang lalu",
15 | suffixFromNow: "dari sekarang",
16 | seconds: "kurang dari semenit",
17 | minute: "sekitar satu menit",
18 | minutes: "%d menit",
19 | hour: "sekitar sejam",
20 | hours: "sekitar %d jam",
21 | day: "sehari",
22 | days: "%d hari",
23 | month: "sekitar sebulan",
24 | months: "%d bulan",
25 | year: "sekitar setahun",
26 | years: "%d tahun"
27 | };
28 | }));
29 |
30 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.mk.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Macedonian
11 | (function() {
12 | jQuery.timeago.settings.strings={
13 | prefixAgo: "пред",
14 | prefixFromNow: "за",
15 | suffixAgo: null,
16 | suffixFromNow: null,
17 | seconds: "%d секунди",
18 | minute: "%d минута",
19 | minutes: "%d минути",
20 | hour: "%d час",
21 | hours: "%d часа",
22 | day: "%d ден",
23 | days: "%d денови" ,
24 | month: "%d месец",
25 | months: "%d месеци",
26 | year: "%d година",
27 | years: "%d години"
28 | };
29 | })();
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Quartz/Job/LogTestJob.cs:
--------------------------------------------------------------------------------
1 |
2 | using Quartz;
3 | using Serilog;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Threading;
8 | using System.Threading.Tasks;
9 |
10 | namespace Czar.AbpDemo.Job
11 | {
12 | public class LogTestJob : IJob
13 | {
14 | public async Task Execute(IJobExecutionContext context)
15 | {
16 | JobDataMap dataMap = context.JobDetail.JobDataMap;
17 | string serverName = dataMap.GetString("ServerName");
18 | if (string.IsNullOrEmpty(serverName))
19 | {
20 | serverName = "kong";
21 | }
22 | Log.Information(serverName);
23 | await Task.CompletedTask;
24 | }
25 |
26 | public async Task Test()
27 | {
28 | Thread.Sleep(10000);
29 | await Task.CompletedTask;
30 |
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/pl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pl",[],function(){var e=["znak","znaki","znaków"],t=["element","elementy","elementów"],n=function(t,n){if(t===1)return n[0];if(t>1&&t<=4)return n[1];if(t>=5)return n[2]};return{errorLoading:function(){return"Nie można załadować wyników."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Usuń "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Podaj przynajmniej "+r+" "+n(r,e)},loadingMore:function(){return"Trwa ładowanie…"},maximumSelected:function(e){return"Możesz zaznaczyć tylko "+e.maximum+" "+n(e.maximum,t)},noResults:function(){return"Brak wyników"},searching:function(){return"Trwa wyszukiwanie…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.fa-short.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // persion shortened
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "",
15 | suffixFromNow: "",
16 | seconds: "1دقیقه",
17 | minute: "1دقیقه",
18 | minutes: "%dدقیقه",
19 | hour: "1ساعت",
20 | hours: "%dساعت",
21 | day: "1روز",
22 | days: "%dروز",
23 | month: "1ماه",
24 | months: "%dماه",
25 | year: "1سال",
26 | years: "%dسال",
27 | wordSeparator: " ",
28 | numbers: ['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹']
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.fr.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // French
11 | jQuery.timeago.settings.strings = {
12 | // environ ~= about, it's optional
13 | prefixAgo: "il y a",
14 | prefixFromNow: "d'ici",
15 | seconds: "moins d'une minute",
16 | minute: "environ une minute",
17 | minutes: "environ %d minutes",
18 | hour: "environ une heure",
19 | hours: "environ %d heures",
20 | day: "environ un jour",
21 | days: "environ %d jours",
22 | month: "environ un mois",
23 | months: "environ %d mois",
24 | year: "un an",
25 | years: "%d ans"
26 | };
27 | }));
28 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.hu.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Hungarian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: null,
15 | suffixFromNow: null,
16 | seconds: "kevesebb mint egy perce",
17 | minute: "körülbelül egy perce",
18 | minutes: "%d perce",
19 | hour: "körülbelül egy órája",
20 | hours: "körülbelül %d órája",
21 | day: "körülbelül egy napja",
22 | days: "%d napja",
23 | month: "körülbelül egy hónapja",
24 | months: "%d hónapja",
25 | year: "körülbelül egy éve",
26 | years: "%d éve"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.ur.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Urdu
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "پہلے",
15 | suffixFromNow: "اب سے",
16 | seconds: "کچھ سیکنڈز",
17 | minute: "تقریباً ایک منٹ",
18 | minutes: "%d منٹ",
19 | hour: "تقریباً ایک گھنٹہ",
20 | hours: "تقریباً %d گھنٹے",
21 | day: "ایک دن",
22 | days: "%d دن",
23 | month: "تقریباً ایک مہینہ",
24 | months: "%d مہینے",
25 | year: "تقریباً ایک سال",
26 | years: "%d سال",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/el.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/el",[],function(){return{errorLoading:function(){return"Τα αποτελέσματα δεν μπόρεσαν να φορτώσουν."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Παρακαλώ διαγράψτε "+t+" χαρακτήρ";return t==1&&(n+="α"),t!=1&&(n+="ες"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Παρακαλώ συμπληρώστε "+t+" ή περισσότερους χαρακτήρες";return n},loadingMore:function(){return"Φόρτωση περισσότερων αποτελεσμάτων…"},maximumSelected:function(e){var t="Μπορείτε να επιλέξετε μόνο "+e.maximum+" επιλογ";return e.maximum==1&&(t+="ή"),e.maximum!=1&&(t+="ές"),t},noResults:function(){return"Δεν βρέθηκαν αποτελέσματα"},searching:function(){return"Αναζήτηση…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/bs.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/bs",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Preuzimanje nije uspijelo."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Obrišite "+n+" simbol";return r+=e(n,"","a","a"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Ukucajte bar još "+n+" simbol";return r+=e(n,"","a","a"),r},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(t){var n="Možete izabrati samo "+t.maximum+" stavk";return n+=e(t.maximum,"u","e","i"),n},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/sr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sr",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Preuzimanje nije uspelo."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Obrišite "+n+" simbol";return r+=e(n,"","a","a"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Ukucajte bar još "+n+" simbol";return r+=e(n,"","a","a"),r},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(t){var n="Možete izabrati samo "+t.maximum+" stavk";return n+=e(t.maximum,"u","e","i"),n},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.jv.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Javanesse (Boso Jowo)
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "kepungkur",
15 | suffixFromNow: "seko saiki",
16 | seconds: "kurang seko sakmenit",
17 | minute: "kurang luwih sakmenit",
18 | minutes: "%d menit",
19 | hour: "kurang luwih sakjam",
20 | hours: "kurang luwih %d jam",
21 | day: "sedina",
22 | days: "%d dina",
23 | month: "kurang luwih sewulan",
24 | months: "%d wulan",
25 | year: "kurang luwih setahun",
26 | years: "%d tahun"
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/uk.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/uk",[],function(){function e(e,t,n,r){return e%100>10&&e%100<15?r:e%10===1?t:e%10>1&&e%10<5?n:r}return{errorLoading:function(){return"Неможливо завантажити результати"},inputTooLong:function(t){var n=t.input.length-t.maximum;return"Будь ласка, видаліть "+n+" "+e(t.maximum,"літеру","літери","літер")},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Будь ласка, введіть "+t+" або більше літер"},loadingMore:function(){return"Завантаження інших результатів…"},maximumSelected:function(t){return"Ви можете вибрати лише "+t.maximum+" "+e(t.maximum,"пункт","пункти","пунктів")},noResults:function(){return"Нічого не знайдено"},searching:function(){return"Пошук…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.th.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Thai
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "ที่แล้ว",
15 | suffixFromNow: "จากตอนนี้",
16 | seconds: "น้อยกว่าหนึ่งนาที",
17 | minute: "ประมาณหนึ่งนาที",
18 | minutes: "%d นาที",
19 | hour: "ประมาณหนึ่งชั่วโมง",
20 | hours: "ประมาณ %d ชั่วโมง",
21 | day: "หนึ่งวัน",
22 | days: "%d วัน",
23 | month: "ประมาณหนึ่งเดือน",
24 | months: "%d เดือน",
25 | year: "ประมาณหนึ่งปี",
26 | years: "%d ปี",
27 | wordSeparator: "",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/sr-Cyrl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sr-Cyrl",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Преузимање није успело."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Обришите "+n+" симбол";return r+=e(n,"","а","а"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Укуцајте бар још "+n+" симбол";return r+=e(n,"","а","а"),r},loadingMore:function(){return"Преузимање још резултата…"},maximumSelected:function(t){var n="Можете изабрати само "+t.maximum+" ставк";return n+=e(t.maximum,"у","е","и"),n},noResults:function(){return"Ништа није пронађено"},searching:function(){return"Претрага…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.en.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // English (Template)
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "ago",
15 | suffixFromNow: "from now",
16 | seconds: "less than a minute",
17 | minute: "about a minute",
18 | minutes: "%d minutes",
19 | hour: "about an hour",
20 | hours: "about %d hours",
21 | day: "a day",
22 | days: "%d days",
23 | month: "about a month",
24 | months: "%d months",
25 | year: "about a year",
26 | years: "%d years",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.vi.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Vietnamese
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: 'cách đây',
13 | prefixFromNow: null,
14 | suffixAgo: null,
15 | suffixFromNow: "trước",
16 | seconds: "chưa đến một phút",
17 | minute: "khoảng một phút",
18 | minutes: "%d phút",
19 | hour: "khoảng một tiếng",
20 | hours: "khoảng %d tiếng",
21 | day: "một ngày",
22 | days: "%d ngày",
23 | month: "khoảng một tháng",
24 | months: "%d tháng",
25 | year: "khoảng một năm",
26 | years: "%d năm",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.nl.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Dutch
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: "over",
14 | suffixAgo: "geleden",
15 | suffixFromNow: null,
16 | seconds: "minder dan een minuut",
17 | minute: "ongeveer een minuut",
18 | minutes: "%d minuten",
19 | hour: "ongeveer een uur",
20 | hours: "ongeveer %d uur",
21 | day: "een dag",
22 | days: "%d dagen",
23 | month: "ongeveer een maand",
24 | months: "%d maanden",
25 | year: "ongeveer een jaar",
26 | years: "%d jaar",
27 | wordSeparator: " ",
28 | numbers: []
29 | };
30 | }));
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/ru.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ru",[],function(){function e(e,t,n,r){return e%10<5&&e%10>0&&e%100<5||e%100>20?e%10>1?n:t:r}return{errorLoading:function(){return"Невозможно загрузить результаты"},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Пожалуйста, введите на "+n+" символ";return r+=e(n,"","a","ов"),r+=" меньше",r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Пожалуйста, введите еще хотя бы "+n+" символ";return r+=e(n,"","a","ов"),r},loadingMore:function(){return"Загрузка данных…"},maximumSelected:function(t){var n="Вы можете выбрать не более "+t.maximum+" элемент";return n+=e(t.maximum,"","a","ов"),n},noResults:function(){return"Совпадений не найдено"},searching:function(){return"Поиск…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.he.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Hebrew
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: "לפני",
13 | prefixFromNow: "עוד",
14 | seconds: "פחות מדקה",
15 | minute: "דקה",
16 | minutes: "%d דקות",
17 | hour: "שעה",
18 | hours: function(number){return (number===2) ? "שעתיים" : "%d שעות";},
19 | day: "יום",
20 | days: function(number){return (number===2) ? "יומיים" : "%d ימים";},
21 | month: "חודש",
22 | months: function(number){return (number===2) ? "חודשיים" : "%d חודשים";},
23 | year: "שנה",
24 | years: function(number){return (number===2) ? "שנתיים" : "%d שנים";}
25 | };
26 | }));
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/dsb.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/dsb",[],function(){var e=["znamuško","znamušce","znamuška","znamuškow"],t=["zapisk","zapiska","zapiski","zapiskow"],n=function(t,n){if(t===1)return n[0];if(t===2)return n[1];if(t>2&&t<=4)return n[2];if(t>=5)return n[3]};return{errorLoading:function(){return"Wuslědki njejsu se dali zacytaś."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Pšosym lašuj "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Pšosym zapódaj nanejmjenjej "+r+" "+n(r,e)},loadingMore:function(){return"Dalšne wuslědki se zacytaju…"},maximumSelected:function(e){return"Móžoš jano "+e.maximum+" "+n(e.maximum,t)+"wubraś."},noResults:function(){return"Žedne wuslědki namakane"},searching:function(){return"Pyta se…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/hsb.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hsb",[],function(){var e=["znamješko","znamješce","znamješka","znamješkow"],t=["zapisk","zapiskaj","zapiski","zapiskow"],n=function(t,n){if(t===1)return n[0];if(t===2)return n[1];if(t>2&&t<=4)return n[2];if(t>=5)return n[3]};return{errorLoading:function(){return"Wuslědki njedachu so začitać."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Prošu zhašej "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Prošu zapodaj znajmjeńša "+r+" "+n(r,e)},loadingMore:function(){return"Dalše wuslědki so začitaja…"},maximumSelected:function(e){return"Móžeš jenož "+e.maximum+" "+n(e.maximum,t)+"wubrać"},noResults:function(){return"Žane wuslědki namakane"},searching:function(){return"Pyta so…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.uz.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | //Uzbek
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: "keyin",
14 | suffixAgo: "avval",
15 | suffixFromNow: null,
16 | seconds: "bir necha soniya",
17 | minute: "1 daqiqa",
18 | minutes: function(value) { return "%d daqiqa"; },
19 | hour: "1 soat",
20 | hours: function(value) { return "%d soat"; },
21 | day: "1 kun",
22 | days: function(value) { return "%d kun"; },
23 | month: "1 oy",
24 | months: function(value) { return "%d oy"; },
25 | year: "1 yil",
26 | years: function(value) { return "%d yil"; },
27 | wordSeparator: " "
28 | };
29 | }));
30 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.dv.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | /**
11 | * Dhivehi time in Thaana for timeago.js
12 | **/
13 | jQuery.timeago.settings.strings = {
14 | prefixAgo: null,
15 | prefixFromNow: null,
16 | suffixAgo: "ކުރިން",
17 | suffixFromNow: "ފަހުން",
18 | seconds: "ސިކުންތުކޮޅެއް",
19 | minute: "މިނިޓެއްވަރު",
20 | minutes: "%d މިނިޓު",
21 | hour: "ގަޑިއެއްވަރު",
22 | hours: "ގާތްގަނޑަކަށް %d ގަޑިއިރު",
23 | day: "އެއް ދުވަސް",
24 | days: "މީގެ %d ދުވަސް",
25 | month: "މަހެއްވަރު",
26 | months: "މީގެ %d މަސް",
27 | year: "އަހަރެއްވަރު",
28 | years: "މީގެ %d އަހަރު",
29 | wordSeparator: " ",
30 | numbers: []
31 | };
32 | }));
33 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/AbpDemoApplicationModule.cs:
--------------------------------------------------------------------------------
1 | using Czar.AbpDemo.Permissions;
2 | using Volo.Abp.Authorization.Permissions;
3 | using Volo.Abp.AutoMapper;
4 | using Volo.Abp.Identity;
5 | using Volo.Abp.Modularity;
6 | using Volo.Abp.PermissionManagement;
7 |
8 | namespace Czar.AbpDemo
9 | {
10 | [DependsOn(
11 | typeof(AbpDemoDomainModule),
12 | typeof(AbpIdentityApplicationModule),
13 | typeof(AbpPermissionManagementApplicationModule)
14 | )]
15 | public class AbpDemoApplicationModule : AbpModule
16 | {
17 | public override void ConfigureServices(ServiceConfigurationContext context)
18 | {
19 | Configure(options =>
20 | {
21 | options.DefinitionProviders.Add();
22 | });
23 |
24 | Configure(options =>
25 | {
26 | options.AddProfile();
27 | });
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.fa.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Persian
11 | // Use DIR attribute for RTL text in Persian Language for ABBR tag .
12 | // By MB.seifollahi@gmail.com
13 | jQuery.timeago.settings.strings = {
14 | prefixAgo: null,
15 | prefixFromNow: null,
16 | suffixAgo: "پیش",
17 | suffixFromNow: "از حال",
18 | seconds: "کمتر از یک دقیقه",
19 | minute: "حدود یک دقیقه",
20 | minutes: "%d دقیقه",
21 | hour: "حدود یک ساعت",
22 | hours: "حدود %d ساعت",
23 | day: "یک روز",
24 | days: "%d روز",
25 | month: "حدود یک ماه",
26 | months: "%d ماه",
27 | year: "حدود یک سال",
28 | years: "%d سال",
29 | wordSeparator: " ",
30 | numbers: ['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹']
31 | };
32 | }));
33 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/README.md:
--------------------------------------------------------------------------------
1 | # Locale override examples for timeago
2 |
3 | You can represent time statements in most western languages where
4 | a prefix and/or suffix is used.
5 |
6 | The default case is to use suffix only (as in English), which you
7 | do by providing the `suffixAgo` and `suffixFromNow` settings in
8 | the strings hash (earlier versions of timeago used the deprecated
9 | `ago` and `fromNow` options). If present, they are used.
10 |
11 | 2 minutes [suffixAgo]
12 | 2 minutes [suffixFromNow]
13 |
14 | In case you want to use prefix only instead of
15 | suffix (e.g. Greek), you provide the `prefixAgo` and
16 | `prefixFromNow` options in the strings hash and leave `suffixAgo`
17 | and `suffixFromNow` empty or null.
18 |
19 | [prefixAgo] 2 minutes
20 | [prefixFromNow] 2 minutes
21 |
22 | For languages where you want to use a prefix only for future
23 | tense and prefix/suffix for past tense (for example swedish), you
24 | can combine the prefix and suffixes as needed.
25 |
26 | [prefixAgo] 2 minutes [suffixAgo]
27 | [prefixFromNow] 2 minutes
28 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/BookStore/BookType.cs:
--------------------------------------------------------------------------------
1 | /**
2 | *┌──────────────────────────────────────────────────────────────┐
3 | *│ 描 述:
4 | *│ 作 者:yilezhu
5 | *│ 版 本:1.0
6 | *│ 创建时间:2019/2/19 14:09:16
7 | *└──────────────────────────────────────────────────────────────┘
8 | *┌──────────────────────────────────────────────────────────────┐
9 | *│ 命名空间: Czar.AbpDemo.BookStore
10 | *│ 类 名: BookType
11 | *└──────────────────────────────────────────────────────────────┘
12 | */
13 | using System;
14 | using System.Collections.Generic;
15 | using System.Text;
16 |
17 | namespace Czar.AbpDemo.BookStore
18 | {
19 | public enum BookType:byte
20 | {
21 | Undefined,
22 | Advanture,
23 | Biography,
24 | Dystopia,
25 | Fantastic,
26 | Horror,
27 | Science,
28 | ScienceFiction,
29 | Poetry
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Czar.AbpDemo.sln.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | True
3 | D:\github\abp\common.DotSettings
4 | ..\..\..\common.DotSettings
5 | True
6 | 1
7 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 依乐祝
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.EntityFrameworkCore/EntityFrameworkCore/AbpDemoDbContextFactory.cs:
--------------------------------------------------------------------------------
1 | using System.IO;
2 | using Microsoft.EntityFrameworkCore;
3 | using Microsoft.EntityFrameworkCore.Design;
4 | using Microsoft.Extensions.Configuration;
5 |
6 | namespace Czar.AbpDemo.EntityFrameworkCore
7 | {
8 | public class AbpDemoDbContextFactory : IDesignTimeDbContextFactory
9 | {
10 | public AbpDemoDbContext CreateDbContext(string[] args)
11 | {
12 | var configuration = BuildConfiguration();
13 |
14 | var builder = new DbContextOptionsBuilder()
15 | .UseSqlServer(configuration.GetConnectionString("Default"));
16 |
17 | return new AbpDemoDbContext(builder.Options);
18 | }
19 |
20 | private static IConfigurationRoot BuildConfiguration()
21 | {
22 | var builder = new ConfigurationBuilder()
23 | .SetBasePath(Path.Combine(Directory.GetCurrentDirectory(), "../Czar.AbpDemo.Web/"))
24 | .AddJsonFile("appsettings.json", optional: false);
25 |
26 | return builder.Build();
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/Localization/AbpDemo/zh-Hans.json:
--------------------------------------------------------------------------------
1 | {
2 | "culture": "zh-Hans",
3 | "texts": {
4 | "Menu:Home": "首页",
5 | "Menu:BookStore": "图书馆",
6 | "Menu:Books": "图书管理",
7 | "Menu:JobSchedule": "任务调度",
8 | "Menu:JobInfo": "任务管理",
9 | "Welcome": "欢迎",
10 | "LongWelcomeMessage": "欢迎来到该应用程序. 这是一个基于ABP框架的启动项目. 有关更多信息, 请访问 cn.abp.io.",
11 | "New": "新增",
12 | "Update": "更新",
13 | "Actions": "操作",
14 | "ActionsEdit": "编辑",
15 | "ActionsDelete": "删除",
16 | "ActionsDeletionConfirmationMessage": "确定删除{0}吗?",
17 | "ActionsSuccessfullyDeleted": "删除成功!",
18 | "Books:Name": "书籍名称",
19 | "Books:Type": "书籍类型",
20 | "Books:PublishDate": "出版日期",
21 | "Books:Price": "书籍价格",
22 | "Books:CreationTime": "创建时间",
23 | "Books:Book": "书籍",
24 | "JobSchedule:JobInfo": "任务调度",
25 | "JobSchedule:JobGroup": "工作组",
26 | "JobSchedule:JobName": "任务名称",
27 | "JobSchedule:JobDescription": "任务描述",
28 | "JobSchedule:JobStatus": "任务状态",
29 | "JobSchedule:CronExpress": "Cron表达式",
30 | "JobSchedule:StarTime": "开始时间",
31 | "JobSchedule:EndTime": "结束时间",
32 | "JobSchedule:NextTime": "下次执行时间"
33 | }
34 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/compilerconfig.json.defaults:
--------------------------------------------------------------------------------
1 | {
2 | "compilers": {
3 | "less": {
4 | "autoPrefix": "",
5 | "cssComb": "none",
6 | "ieCompat": true,
7 | "strictMath": false,
8 | "strictUnits": false,
9 | "relativeUrls": true,
10 | "rootPath": "",
11 | "sourceMapRoot": "",
12 | "sourceMapBasePath": "",
13 | "sourceMap": false
14 | },
15 | "sass": {
16 | "includePath": "",
17 | "indentType": "space",
18 | "indentWidth": 2,
19 | "outputStyle": "nested",
20 | "Precision": 5,
21 | "relativeUrls": true,
22 | "sourceMapRoot": "",
23 | "sourceMap": false
24 | },
25 | "stylus": {
26 | "sourceMap": false
27 | },
28 | "babel": {
29 | "sourceMap": false
30 | },
31 | "coffeescript": {
32 | "bare": false,
33 | "runtimeMode": "node",
34 | "sourceMap": false
35 | }
36 | },
37 | "minifiers": {
38 | "css": {
39 | "enabled": true,
40 | "termSemicolons": true,
41 | "gzip": false
42 | },
43 | "javascript": {
44 | "enabled": true,
45 | "termSemicolons": true,
46 | "gzip": false
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/Books/Index.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @inherits Czar.AbpDemo.Pages.AbpDemoPageBase
3 | @model Czar.AbpDemo.Web.Pages.Books.IndexModel
4 | @section scripts{
5 |
6 | }
7 |
8 |
9 |
10 |
11 | @L["Books:Book"]
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | | @L["Actions"] |
24 | @L["Books:Name"] |
25 | @L["Books:Type"] |
26 | @L["Books:PublishDate"] |
27 | @L["Books:Price"] |
28 | @L["Books:CreationTime"] |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/cs.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/cs",[],function(){function e(e,t){switch(e){case 2:return t?"dva":"dvě";case 3:return"tři";case 4:return"čtyři"}return""}return{errorLoading:function(){return"Výsledky nemohly být načteny."},inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím, zadejte o jeden znak méně.":n<=4?"Prosím, zadejte o "+e(n,!0)+" znaky méně.":"Prosím, zadejte o "+n+" znaků méně."},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím, zadejte ještě jeden znak.":n<=4?"Prosím, zadejte ještě další "+e(n,!0)+" znaky.":"Prosím, zadejte ještě dalších "+n+" znaků."},loadingMore:function(){return"Načítají se další výsledky…"},maximumSelected:function(t){var n=t.maximum;return n==1?"Můžete zvolit jen jednu položku.":n<=4?"Můžete zvolit maximálně "+e(n,!1)+" položky.":"Můžete zvolit maximálně "+n+" položek."},noResults:function(){return"Nenalezeny žádné položky."},searching:function(){return"Vyhledávání…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/JobSchedule/JobStatu.cs:
--------------------------------------------------------------------------------
1 | /**
2 | *┌──────────────────────────────────────────────────────────────┐
3 | *│ 描 述:
4 | *│ 作 者:yilezhu
5 | *│ 版 本:1.0
6 | *│ 创建时间:2019/2/25 17:26:48
7 | *└──────────────────────────────────────────────────────────────┘
8 | *┌──────────────────────────────────────────────────────────────┐
9 | *│ 命名空间: Czar.AbpDemo.JobSchedule
10 | *│ 类 名: JobStatus
11 | *└──────────────────────────────────────────────────────────────┘
12 | */
13 | using System;
14 | using System.Collections.Generic;
15 | using System.ComponentModel;
16 | using System.Text;
17 |
18 | namespace Czar.AbpDemo.JobSchedule
19 | {
20 | public enum JobStatu: byte
21 | {
22 | [Description("执行中")]
23 | Running,
24 | [Description("已完成")]
25 | Completed,
26 | [Description("已停止")]
27 | Stopped,
28 | [Description("系统停止")]
29 | SystemStopped,
30 | [Description("已删除")]
31 | Deleted,
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_zh.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: ZH (Chinese, 中文 (Zhōngwén), 汉语, 漢語)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "这是必填字段",
17 | remote: "请修正此字段",
18 | email: "请输入有效的电子邮件地址",
19 | url: "请输入有效的网址",
20 | date: "请输入有效的日期",
21 | dateISO: "请输入有效的日期 (YYYY-MM-DD)",
22 | number: "请输入有效的数字",
23 | digits: "只能输入数字",
24 | creditcard: "请输入有效的信用卡号码",
25 | equalTo: "你的输入不相同",
26 | extension: "请输入有效的后缀",
27 | maxlength: $.validator.format( "最多可以输入 {0} 个字符" ),
28 | minlength: $.validator.format( "最少要输入 {0} 个字符" ),
29 | rangelength: $.validator.format( "请输入长度在 {0} 到 {1} 之间的字符串" ),
30 | range: $.validator.format( "请输入范围在 {0} 到 {1} 之间的数值" ),
31 | max: $.validator.format( "请输入不大于 {0} 的数值" ),
32 | min: $.validator.format( "请输入不小于 {0} 的数值" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/select2/js/i18n/sk.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.5 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sk",[],function(){var e={2:function(e){return e?"dva":"dve"},3:function(){return"tri"},4:function(){return"štyri"}};return{errorLoading:function(){return"Výsledky sa nepodarilo načítať."},inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím, zadajte o jeden znak menej":n>=2&&n<=4?"Prosím, zadajte o "+e[n](!0)+" znaky menej":"Prosím, zadajte o "+n+" znakov menej"},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím, zadajte ešte jeden znak":n<=4?"Prosím, zadajte ešte ďalšie "+e[n](!0)+" znaky":"Prosím, zadajte ešte ďalších "+n+" znakov"},loadingMore:function(){return"Načítanie ďalších výsledkov…"},maximumSelected:function(t){return t.maximum==1?"Môžete zvoliť len jednu položku":t.maximum>=2&&t.maximum<=4?"Môžete zvoliť najviac "+e[t.maximum](!1)+" položky":"Môžete zvoliť najviac "+t.maximum+" položiek"},noResults:function(){return"Nenašli sa žiadne položky"},searching:function(){return"Vyhľadávanie…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_zh_TW.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: ZH (Chinese; 中文 (Zhōngwén), 汉语, 漢語)
14 | * Region: TW (Taiwan)
15 | */
16 | $.extend( $.validator.messages, {
17 | required: "必須填寫",
18 | remote: "請修正此欄位",
19 | email: "請輸入有效的電子郵件",
20 | url: "請輸入有效的網址",
21 | date: "請輸入有效的日期",
22 | dateISO: "請輸入有效的日期 (YYYY-MM-DD)",
23 | number: "請輸入正確的數值",
24 | digits: "只可輸入數字",
25 | creditcard: "請輸入有效的信用卡號碼",
26 | equalTo: "請重複輸入一次",
27 | extension: "請輸入有效的後綴",
28 | maxlength: $.validator.format( "最多 {0} 個字" ),
29 | minlength: $.validator.format( "最少 {0} 個字" ),
30 | rangelength: $.validator.format( "請輸入長度為 {0} 至 {1} 之間的字串" ),
31 | range: $.validator.format( "請輸入 {0} 至 {1} 之間的數值" ),
32 | max: $.validator.format( "請輸入不大於 {0} 的數值" ),
33 | min: $.validator.format( "請輸入不小於 {0} 的數值" )
34 | } );
35 | return $;
36 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/BookStore/BookDto.cs:
--------------------------------------------------------------------------------
1 | /**
2 | *┌──────────────────────────────────────────────────────────────┐
3 | *│ 描 述:在 基础设施层 和 应用层 传递数据
4 | *│ 作 者:yilezhu
5 | *│ 版 本:1.0
6 | *│ 创建时间:2019/2/19 14:21:27
7 | *└──────────────────────────────────────────────────────────────┘
8 | *┌──────────────────────────────────────────────────────────────┐
9 | *│ 命名空间: Czar.AbpDemo.BookStore
10 | *│ 类 名: BookDto
11 | *└──────────────────────────────────────────────────────────────┘
12 | */
13 | using System;
14 | using System.Collections.Generic;
15 | using System.Text;
16 | using Volo.Abp.Application.Dtos;
17 | using Volo.Abp.AutoMapper;
18 |
19 | namespace Czar.AbpDemo.BookStore
20 | {
21 | [AutoMapFrom(typeof(Book))]
22 | public class BookDto:AuditedEntityDto
23 | {
24 | public string Name { get; set; }
25 |
26 | public BookType Type { get; set; }
27 |
28 | public DateTime PublishDate { get; set; }
29 |
30 | public float Price { get; set; }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_ko.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: KO (Korean; 한국어)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "필수 항목입니다.",
17 | remote: "항목을 수정하세요.",
18 | email: "유효하지 않은 E-Mail주소입니다.",
19 | url: "유효하지 않은 URL입니다.",
20 | date: "올바른 날짜를 입력하세요.",
21 | dateISO: "올바른 날짜(ISO)를 입력하세요.",
22 | number: "유효한 숫자가 아닙니다.",
23 | digits: "숫자만 입력 가능합니다.",
24 | creditcard: "신용카드 번호가 바르지 않습니다.",
25 | equalTo: "같은 값을 다시 입력하세요.",
26 | extension: "올바른 확장자가 아닙니다.",
27 | maxlength: $.validator.format( "{0}자를 넘을 수 없습니다. " ),
28 | minlength: $.validator.format( "{0}자 이상 입력하세요." ),
29 | rangelength: $.validator.format( "문자 길이가 {0} 에서 {1} 사이의 값을 입력하세요." ),
30 | range: $.validator.format( "{0} 에서 {1} 사이의 값을 입력하세요." ),
31 | max: $.validator.format( "{0} 이하의 값을 입력하세요." ),
32 | min: $.validator.format( "{0} 이상의 값을 입력하세요." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_sk.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: SK (Slovak; slovenčina, slovenský jazyk)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Povinné zadať.",
17 | maxlength: $.validator.format( "Maximálne {0} znakov." ),
18 | minlength: $.validator.format( "Minimálne {0} znakov." ),
19 | rangelength: $.validator.format( "Minimálne {0} a maximálne {1} znakov." ),
20 | email: "E-mailová adresa musí byť platná.",
21 | url: "URL musí byť platná.",
22 | date: "Musí byť dátum.",
23 | number: "Musí byť číslo.",
24 | digits: "Môže obsahovať iba číslice.",
25 | equalTo: "Dve hodnoty sa musia rovnať.",
26 | range: $.validator.format( "Musí byť medzi {0} a {1}." ),
27 | max: $.validator.format( "Nemôže byť viac ako {0}." ),
28 | min: $.validator.format( "Nemôže byť menej ako {0}." ),
29 | creditcard: "Číslo platobnej karty musí byť platné."
30 | } );
31 | return $;
32 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_da.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: DA (Danish; dansk)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Dette felt er påkrævet.",
17 | maxlength: $.validator.format( "Indtast højst {0} tegn." ),
18 | minlength: $.validator.format( "Indtast mindst {0} tegn." ),
19 | rangelength: $.validator.format( "Indtast mindst {0} og højst {1} tegn." ),
20 | email: "Indtast en gyldig email-adresse.",
21 | url: "Indtast en gyldig URL.",
22 | date: "Indtast en gyldig dato.",
23 | number: "Indtast et tal.",
24 | digits: "Indtast kun cifre.",
25 | equalTo: "Indtast den samme værdi igen.",
26 | range: $.validator.format( "Angiv en værdi mellem {0} og {1}." ),
27 | max: $.validator.format( "Angiv en værdi der højst er {0}." ),
28 | min: $.validator.format( "Angiv en værdi der mindst er {0}." ),
29 | creditcard: "Indtast et gyldigt kreditkortnummer."
30 | } );
31 | return $;
32 | }));
--------------------------------------------------------------------------------
/test/Czar.AbpDemo.Application.Tests/Czar.AbpDemo.Application.Tests.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.2
5 | Czar.AbpDemo
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/BookStore/Book.cs:
--------------------------------------------------------------------------------
1 | /**
2 | *┌──────────────────────────────────────────────────────────────┐
3 | *│ 描 述:书籍信息
4 | *│ 作 者:yilezhu
5 | *│ 版 本:1.0
6 | *│ 创建时间:2019/2/19 14:03:52
7 | *└──────────────────────────────────────────────────────────────┘
8 | *┌──────────────────────────────────────────────────────────────┐
9 | *│ 命名空间: Czar.AbpDemo.BookStore
10 | *│ 类 名: Book
11 | *└──────────────────────────────────────────────────────────────┘
12 | */
13 | using System;
14 | using System.Collections.Generic;
15 | using System.Text;
16 | using System.ComponentModel.DataAnnotations;
17 | using System.ComponentModel.DataAnnotations.Schema;
18 | using Volo.Abp.Domain.Entities.Auditing;
19 |
20 | namespace Czar.AbpDemo.BookStore
21 | {
22 | [Table("Books")]
23 | public class Book:AuditedAggregateRoot
24 | {
25 | [Required,StringLength(128)]
26 | public string Name { get; set; }
27 |
28 | public BookType Type { get; set; }
29 |
30 | public DateTime PublishDate{ get; set; }
31 |
32 | public float Price { get; set; }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.pl.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Polish
11 | function numpf(n, s, t) {
12 | // s - 2-4, 22-24, 32-34 ...
13 | // t - 5-21, 25-31, ...
14 | var n10 = n % 10;
15 | if ( (n10 > 1) && (n10 < 5) && ( (n > 20) || (n < 10) ) ) {
16 | return s;
17 | } else {
18 | return t;
19 | }
20 | }
21 |
22 | jQuery.timeago.settings.strings = {
23 | prefixAgo: null,
24 | prefixFromNow: "za",
25 | suffixAgo: "temu",
26 | suffixFromNow: null,
27 | seconds: "mniej niż minutę",
28 | minute: "minutę",
29 | minutes: function(value) { return numpf(value, "%d minuty", "%d minut"); },
30 | hour: "godzinę",
31 | hours: function(value) { return numpf(value, "%d godziny", "%d godzin"); },
32 | day: "dzień",
33 | days: "%d dni",
34 | month: "miesiąc",
35 | months: function(value) { return numpf(value, "%d miesiące", "%d miesięcy"); },
36 | year: "rok",
37 | years: function(value) { return numpf(value, "%d lata", "%d lat"); }
38 | };
39 | }));
40 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Domain/Localization/AbpDemo/en.json:
--------------------------------------------------------------------------------
1 | {
2 | "culture": "en",
3 | "texts": {
4 | "Menu:Home": "Home",
5 | "Menu:BookStore": "Book Store",
6 | "Menu:Books": "Books",
7 | "Menu:JobSchedule": "JobSchedule",
8 | "Menu:JobInfo": "Job",
9 | "Welcome": "Welcome",
10 | "LongWelcomeMessage": "Welcome to the application. This is a startup project based on the ABP framework. For more information, visit abp.io.",
11 | "New": "New",
12 | "Update": "Update",
13 | "Actions": "Actions",
14 | "ActionsEdit": "Edit",
15 | "ActionsDelete": "Delete",
16 | "ActionsBookDeletionConfirmationMessage": "Are you sure to delete this book: {0}",
17 | "ActionsSuccessfullyDeleted": "Deleted Sucessful!",
18 | "Books:Name": "Name",
19 | "Books:Type": "Type",
20 | "Books:PublishDate": "PublishDate",
21 | "Books:Price": "Price",
22 | "Books:CreationTime": "CreationTime",
23 | "Books:Book": "Book",
24 | "JobSchedule:JobInfo": "JobSchedule",
25 | "JobSchedule:JobGroup": "Group",
26 | "JobSchedule:JobName": "Name",
27 | "JobSchedule:JobDescription": "Description",
28 | "JobSchedule:JobStatus": "Status",
29 | "JobSchedule:CronExpress": "CronExpress",
30 | "JobSchedule:StarTime": "StarTime",
31 | "JobSchedule:EndTime": "EndTime",
32 | "JobSchedule:NextTime": "NextTime"
33 | }
34 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_vi.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: VI (Vietnamese; Tiếng Việt)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Hãy nhập.",
17 | remote: "Hãy sửa cho đúng.",
18 | email: "Hãy nhập email.",
19 | url: "Hãy nhập URL.",
20 | date: "Hãy nhập ngày.",
21 | dateISO: "Hãy nhập ngày (ISO).",
22 | number: "Hãy nhập số.",
23 | digits: "Hãy nhập chữ số.",
24 | creditcard: "Hãy nhập số thẻ tín dụng.",
25 | equalTo: "Hãy nhập thêm lần nữa.",
26 | extension: "Phần mở rộng không đúng.",
27 | maxlength: $.validator.format( "Hãy nhập từ {0} kí tự trở xuống." ),
28 | minlength: $.validator.format( "Hãy nhập từ {0} kí tự trở lên." ),
29 | rangelength: $.validator.format( "Hãy nhập từ {0} đến {1} kí tự." ),
30 | range: $.validator.format( "Hãy nhập từ {0} đến {1}." ),
31 | max: $.validator.format( "Hãy nhập từ {0} trở xuống." ),
32 | min: $.validator.format( "Hãy nhập từ {1} trở lên." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.EntityFrameworkCore/EntityFrameworkCore/AbpDemoDbContext.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore;
2 | using Volo.Abp.AuditLogging.EntityFrameworkCore;
3 | using Volo.Abp.BackgroundJobs.EntityFrameworkCore;
4 | using Volo.Abp.Data;
5 | using Volo.Abp.EntityFrameworkCore;
6 | using Volo.Abp.Identity.EntityFrameworkCore;
7 | using Volo.Abp.PermissionManagement.EntityFrameworkCore;
8 | using Volo.Abp.SettingManagement.EntityFrameworkCore;
9 |
10 | namespace Czar.AbpDemo.EntityFrameworkCore
11 | {
12 | [ConnectionStringName("Default")]
13 | public class AbpDemoDbContext : AbpDbContext
14 | {
15 | public AbpDemoDbContext(DbContextOptions options)
16 | : base(options)
17 | {
18 |
19 | }
20 |
21 | public DbSet Books { get; set; }
22 | public DbSet JobInfos { get; set; }
23 |
24 |
25 | protected override void OnModelCreating(ModelBuilder modelBuilder)
26 | {
27 | base.OnModelCreating(modelBuilder);
28 |
29 | modelBuilder.ConfigureIdentity();
30 | modelBuilder.ConfigurePermissionManagement();
31 | modelBuilder.ConfigureSettingManagement();
32 | modelBuilder.ConfigureBackgroundJobs();
33 | modelBuilder.ConfigureAuditLogging();
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_ja.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: JA (Japanese; 日本語)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "このフィールドは必須です。",
17 | remote: "このフィールドを修正してください。",
18 | email: "有効なEメールアドレスを入力してください。",
19 | url: "有効なURLを入力してください。",
20 | date: "有効な日付を入力してください。",
21 | dateISO: "有効な日付(ISO)を入力してください。",
22 | number: "有効な数字を入力してください。",
23 | digits: "数字のみを入力してください。",
24 | creditcard: "有効なクレジットカード番号を入力してください。",
25 | equalTo: "同じ値をもう一度入力してください。",
26 | extension: "有効な拡張子を含む値を入力してください。",
27 | maxlength: $.validator.format( "{0} 文字以内で入力してください。" ),
28 | minlength: $.validator.format( "{0} 文字以上で入力してください。" ),
29 | rangelength: $.validator.format( "{0} 文字から {1} 文字までの値を入力してください。" ),
30 | range: $.validator.format( "{0} から {1} までの値を入力してください。" ),
31 | step: $.validator.format( "{0} の倍数を入力してください。" ),
32 | max: $.validator.format( "{0} 以下の値を入力してください。" ),
33 | min: $.validator.format( "{0} 以上の値を入力してください。" )
34 | } );
35 | return $;
36 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/BookStore/IBookAppService.cs:
--------------------------------------------------------------------------------
1 | /**
2 | *┌──────────────────────────────────────────────────────────────┐
3 | *│ 描 述:继承IAsyncCrudAppService中定义了基础的 CRUD方法:
4 | * GetAsync, GetListAsync, CreateAsync, UpdateAsync 和 DeleteAsync
5 | *│ 作 者:yilezhu
6 | *│ 版 本:1.0
7 | *│ 创建时间:2019/2/19 14:27:44
8 | *└──────────────────────────────────────────────────────────────┘
9 | *┌──────────────────────────────────────────────────────────────┐
10 | *│ 命名空间: Czar.AbpDemo.BookStore
11 | *│ 接口名称: IBookAppService
12 | *└──────────────────────────────────────────────────────────────┘
13 | */
14 | using System;
15 | using System.Collections.Generic;
16 | using System.Text;
17 | using Volo.Abp.Application.Dtos;
18 | using Volo.Abp.Application.Services;
19 |
20 | namespace Czar.AbpDemo.BookStore
21 | {
22 | public interface IBookAppService :
23 | IAsyncCrudAppService< //定义了CRUD方法
24 | BookDto, //用来展示书籍
25 | Int32, //Book实体的主键
26 | PagedAndSortedResultRequestDto, //获取书籍的时候用于分页和排序
27 | CreateUpdateBookDto, //用于创建书籍
28 | CreateUpdateBookDto> //用户更新书籍
29 | {
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_he.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: HE (Hebrew; עברית)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "השדה הזה הינו שדה חובה",
17 | remote: "נא לתקן שדה זה",
18 | email: "נא למלא כתובת דוא\"ל חוקית",
19 | url: "נא למלא כתובת אינטרנט חוקית",
20 | date: "נא למלא תאריך חוקי",
21 | dateISO: "נא למלא תאריך חוקי (ISO)",
22 | number: "נא למלא מספר",
23 | digits: "נא למלא רק מספרים",
24 | creditcard: "נא למלא מספר כרטיס אשראי חוקי",
25 | equalTo: "נא למלא את אותו ערך שוב",
26 | extension: "נא למלא ערך עם סיומת חוקית",
27 | maxlength: $.validator.format( ".נא לא למלא יותר מ- {0} תווים" ),
28 | minlength: $.validator.format( "נא למלא לפחות {0} תווים" ),
29 | rangelength: $.validator.format( "נא למלא ערך בין {0} ל- {1} תווים" ),
30 | range: $.validator.format( "נא למלא ערך בין {0} ל- {1}" ),
31 | max: $.validator.format( "נא למלא ערך קטן או שווה ל- {0}" ),
32 | min: $.validator.format( "נא למלא ערך גדול או שווה ל- {0}" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.et.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Estonian
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "tagasi",
15 | suffixFromNow: "pärast",
16 | seconds: function(n, d) { return d < 0 ? "vähem kui minuti aja" : "vähem kui minut aega"; },
17 | minute: function(n, d) { return d < 0 ? "umbes minuti aja" : "umbes minut aega"; },
18 | minutes: function(n, d) { return d < 0 ? "%d minuti" : "%d minutit"; },
19 | hour: function(n, d) { return d < 0 ? "umbes tunni aja" : "umbes tund aega"; },
20 | hours: function(n, d) { return d < 0 ? "%d tunni" : "%d tundi"; },
21 | day: function(n, d) { return d < 0 ? "umbes päeva" : "umbes päev"; },
22 | days: "%d päeva",
23 | month: function(n, d) { return d < 0 ? "umbes kuu aja" : "umbes kuu aega"; },
24 | months: function(n, d) { return d < 0 ? "%d kuu" : "%d kuud"; },
25 | year: function(n, d) { return d < 0 ? "umbes aasta aja" : "umbes aasta aega"; },
26 | years: function(n, d) { return d < 0 ? "%d aasta" : "%d aastat"; }
27 | };
28 | }));
29 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_is.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: IS (Icelandic; íslenska)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Þessi reitur er nauðsynlegur.",
17 | remote: "Lagaðu þennan reit.",
18 | maxlength: $.validator.format( "Sláðu inn mest {0} stafi." ),
19 | minlength: $.validator.format( "Sláðu inn minnst {0} stafi." ),
20 | rangelength: $.validator.format( "Sláðu inn minnst {0} og mest {1} stafi." ),
21 | email: "Sláðu inn gilt netfang.",
22 | url: "Sláðu inn gilda vefslóð.",
23 | date: "Sláðu inn gilda dagsetningu.",
24 | number: "Sláðu inn tölu.",
25 | digits: "Sláðu inn tölustafi eingöngu.",
26 | equalTo: "Sláðu sama gildi inn aftur.",
27 | range: $.validator.format( "Sláðu inn gildi milli {0} og {1}." ),
28 | max: $.validator.format( "Sláðu inn gildi sem er minna en eða jafnt og {0}." ),
29 | min: $.validator.format( "Sláðu inn gildi sem er stærra en eða jafnt og {0}." ),
30 | creditcard: "Sláðu inn gilt greiðslukortanúmer."
31 | } );
32 | return $;
33 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/BookStore/CreateUpdateBookDto.cs:
--------------------------------------------------------------------------------
1 | /**
2 | *┌──────────────────────────────────────────────────────────────┐
3 | *│ 描 述:创建和更新书籍的时候被使用,用来从页面获取图书信息
4 | *│ 作 者:yilezhu
5 | *│ 版 本:1.0
6 | *│ 创建时间:2019/2/19 14:24:33
7 | *└──────────────────────────────────────────────────────────────┘
8 | *┌──────────────────────────────────────────────────────────────┐
9 | *│ 命名空间: Czar.AbpDemo.BookStore
10 | *│ 类 名: CreateUpdateBookDto
11 | *└──────────────────────────────────────────────────────────────┘
12 | */
13 | using System;
14 | using System.Collections.Generic;
15 | using System.Text;
16 | using Volo.Abp.AutoMapper;
17 | using System.ComponentModel.DataAnnotations;
18 |
19 | namespace Czar.AbpDemo.BookStore
20 | {
21 | [AutoMapTo(typeof(Book))]
22 | [AutoMapFrom(typeof(BookDto))]
23 | public class CreateUpdateBookDto
24 | {
25 | [Required, StringLength(128)]
26 | public string Name { get; set; }
27 | [Required]
28 | public BookType Type { get; set; } = BookType.Undefined;
29 | [Required]
30 | public DateTime PublishDate { get; set; }
31 | [Required]
32 | public float Price { get; set; }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/JobSchedule/Index.cshtml:
--------------------------------------------------------------------------------
1 | @page
2 | @inherits Czar.AbpDemo.Pages.AbpDemoPageBase
3 | @model Czar.AbpDemo.Web.Pages.JobSchedule.IndexModel
4 | @section scripts{
5 |
6 | }
7 |
8 |
9 |
10 |
11 | @L["JobSchedule:JobInfo"]
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | | @L["Actions"] |
22 | @L["JobSchedule:JobGroup"] |
23 | @L["JobSchedule:JobName"] |
24 | @L["JobSchedule:JobDescription"] |
25 | @L["JobSchedule:JobStatus"] |
26 | @L["JobSchedule:CronExpress"] |
27 | @L["JobSchedule:StarTime"] |
28 | @L["JobSchedule:EndTime"] |
29 | @L["JobSchedule:NextTime"] |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.fi.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Finnish
11 | jQuery.timeago.settings.strings = {
12 | prefixAgo: null,
13 | prefixFromNow: null,
14 | suffixAgo: "sitten",
15 | suffixFromNow: "tulevaisuudessa",
16 | seconds: "alle minuutti",
17 | minute: "minuutti",
18 | minutes: "%d minuuttia",
19 | hour: "tunti",
20 | hours: "%d tuntia",
21 | day: "päivä",
22 | days: "%d päivää",
23 | month: "kuukausi",
24 | months: "%d kuukautta",
25 | year: "vuosi",
26 | years: "%d vuotta"
27 | };
28 |
29 | // The above is not a great localization because one would usually
30 | // write "2 days ago" in Finnish as "2 päivää sitten", however
31 | // one would write "2 days into the future" as "2:n päivän päästä"
32 | // which cannot be achieved with localization support this simple.
33 | // This is because Finnish has word suffixes (attached directly
34 | // to the end of the word). The word "day" is "päivä" in Finnish.
35 | // As workaround, the above localizations will say
36 | // "2 päivää tulevaisuudessa" which is understandable but
37 | // not as fluent.
38 | }));
39 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_ar.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: AR (Arabic; العربية)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "هذا الحقل إلزامي",
17 | remote: "يرجى تصحيح هذا الحقل للمتابعة",
18 | email: "رجاء إدخال عنوان بريد إلكتروني صحيح",
19 | url: "رجاء إدخال عنوان موقع إلكتروني صحيح",
20 | date: "رجاء إدخال تاريخ صحيح",
21 | dateISO: "رجاء إدخال تاريخ صحيح (ISO)",
22 | number: "رجاء إدخال عدد بطريقة صحيحة",
23 | digits: "رجاء إدخال أرقام فقط",
24 | creditcard: "رجاء إدخال رقم بطاقة ائتمان صحيح",
25 | equalTo: "رجاء إدخال نفس القيمة",
26 | extension: "رجاء إدخال ملف بامتداد موافق عليه",
27 | maxlength: $.validator.format( "الحد الأقصى لعدد الحروف هو {0}" ),
28 | minlength: $.validator.format( "الحد الأدنى لعدد الحروف هو {0}" ),
29 | rangelength: $.validator.format( "عدد الحروف يجب أن يكون بين {0} و {1}" ),
30 | range: $.validator.format( "رجاء إدخال عدد قيمته بين {0} و {1}" ),
31 | max: $.validator.format( "رجاء إدخال عدد أقل من أو يساوي {0}" ),
32 | min: $.validator.format( "رجاء إدخال عدد أكبر من أو يساوي {0}" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_th.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: TH (Thai; ไทย)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "โปรดระบุ",
17 | remote: "โปรดแก้ไขให้ถูกต้อง",
18 | email: "โปรดระบุที่อยู่อีเมล์ที่ถูกต้อง",
19 | url: "โปรดระบุ URL ที่ถูกต้อง",
20 | date: "โปรดระบุวันที่ ที่ถูกต้อง",
21 | dateISO: "โปรดระบุวันที่ ที่ถูกต้อง (ระบบ ISO).",
22 | number: "โปรดระบุทศนิยมที่ถูกต้อง",
23 | digits: "โปรดระบุจำนวนเต็มที่ถูกต้อง",
24 | creditcard: "โปรดระบุรหัสบัตรเครดิตที่ถูกต้อง",
25 | equalTo: "โปรดระบุค่าเดิมอีกครั้ง",
26 | extension: "โปรดระบุค่าที่มีส่วนขยายที่ถูกต้อง",
27 | maxlength: $.validator.format( "โปรดอย่าระบุค่าที่ยาวกว่า {0} อักขระ" ),
28 | minlength: $.validator.format( "โปรดอย่าระบุค่าที่สั้นกว่า {0} อักขระ" ),
29 | rangelength: $.validator.format( "โปรดอย่าระบุค่าความยาวระหว่าง {0} ถึง {1} อักขระ" ),
30 | range: $.validator.format( "โปรดระบุค่าระหว่าง {0} และ {1}" ),
31 | max: $.validator.format( "โปรดระบุค่าน้อยกว่าหรือเท่ากับ {0}" ),
32 | min: $.validator.format( "โปรดระบุค่ามากกว่าหรือเท่ากับ {0}" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_sv.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: SV (Swedish; Svenska)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Detta fält är obligatoriskt.",
17 | maxlength: $.validator.format( "Du får ange högst {0} tecken." ),
18 | minlength: $.validator.format( "Du måste ange minst {0} tecken." ),
19 | rangelength: $.validator.format( "Ange minst {0} och max {1} tecken." ),
20 | email: "Ange en korrekt e-postadress.",
21 | url: "Ange en korrekt URL.",
22 | date: "Ange ett korrekt datum.",
23 | dateISO: "Ange ett korrekt datum (ÅÅÅÅ-MM-DD).",
24 | number: "Ange ett korrekt nummer.",
25 | digits: "Ange endast siffror.",
26 | equalTo: "Ange samma värde igen.",
27 | range: $.validator.format( "Ange ett värde mellan {0} och {1}." ),
28 | max: $.validator.format( "Ange ett värde som är mindre eller lika med {0}." ),
29 | min: $.validator.format( "Ange ett värde som är större eller lika med {0}." ),
30 | creditcard: "Ange ett korrekt kreditkortsnummer."
31 | } );
32 | return $;
33 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Menus/AbpDemoMenuContributor.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using Microsoft.Extensions.DependencyInjection;
3 | using Microsoft.Extensions.Localization;
4 | using Czar.AbpDemo.Localization.AbpDemo;
5 | using Volo.Abp.UI.Navigation;
6 |
7 | namespace Czar.AbpDemo.Menus
8 | {
9 | public class AbpDemoMenuContributor : IMenuContributor
10 | {
11 | public async Task ConfigureMenuAsync(MenuConfigurationContext context)
12 | {
13 | if (context.Menu.Name == StandardMenus.Main)
14 | {
15 | await ConfigureMainMenuAsync(context);
16 | }
17 | }
18 |
19 | private async Task ConfigureMainMenuAsync(MenuConfigurationContext context)
20 | {
21 | var l = context.ServiceProvider.GetRequiredService>();
22 | context.Menu.Items.Insert(0, new ApplicationMenuItem("Czar.AbpDemo.Home", l["Menu:Home"].Value, "/"));
23 | context.Menu.AddItem(
24 | new ApplicationMenuItem("BooksStore", l["Menu:BookStore"].Value)
25 | .AddItem(new ApplicationMenuItem("BooksStore.Books", l["Menu:Books"].Value, url: "/Books")));
26 | context.Menu.AddItem(
27 | new ApplicationMenuItem("JobSchedule", l["Menu:JobSchedule"].Value)
28 | .AddItem(new ApplicationMenuItem("JobSchedule.JobInfo", l["Menu:JobInfo"].Value, url: "/JobSchedule")));
29 | await Task.CompletedTask;
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_sd.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: SD (Sindhi; سنڌي)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "هنن جاين جي ضرورت آهي",
17 | remote: "هنن جاين جي ضرورت آهي",
18 | email: "لکيل اي ميل غلط آهي",
19 | url: "لکيل ايڊريس غلط آهي",
20 | date: "لکيل تاريخ غلط آهي",
21 | dateISO: "جي معيار جي مطابق نه آهي (ISO) لکيل تاريخ",
22 | number: "لکيل انگ صحيح ناهي",
23 | digits: "رڳو انگ داخل ڪري سگهجي ٿو",
24 | creditcard: "لکيل ڪارڊ نمبر صحيح نه آهي",
25 | equalTo: "داخل ٿيل ڀيٽ صحيح نه آهي",
26 | extension: "لکيل غلط آهي",
27 | maxlength: $.validator.format( "وڌ کان وڌ {0} جي داخلا ڪري سگهجي ٿي" ),
28 | minlength: $.validator.format( "گهٽ ۾ گهٽ {0} جي داخلا ڪرڻ ضروري آهي" ),
29 | rangelength: $.validator.format( "داخلا جو {0} ۽ {1}جي وچ ۾ هجڻ ضروري آهي" ),
30 | range: $.validator.format( "داخلا جو {0} ۽ {1}جي وچ ۾ هجڻ ضروري آهي" ),
31 | max: $.validator.format( "وڌ کان وڌ {0} جي داخلا ڪري سگهجي ٿي" ),
32 | min: $.validator.format( "گهٽ ۾ گهٽ {0} جي داخلا ڪرڻ ضروري آهي" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Pages/Books/CreateModal.cshtml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using Czar.AbpDemo.Pages;
6 | using Microsoft.AspNetCore.Mvc;
7 | using Microsoft.AspNetCore.Mvc.RazorPages;
8 | using Czar.AbpDemo.BookStore;
9 |
10 | namespace Czar.AbpDemo.Web.Pages.Books
11 | {
12 | ///
13 | /// 继承了 BookStorePageModelBase 而非默认的 PageModel.
14 | /// BookStorePageModelBase 继承了 PageModel 并且添加了一些Razor页面模型通用的属性和方法.
15 | ///
16 | public class CreateModalModel : AbpDemoPageModelBase
17 | {
18 | ///
19 | /// 在 Book 属性上标记的 [BindProperty] 特性绑定了post请求提交上来的数据.
20 | ///
21 | [BindProperty]
22 | public CreateUpdateBookDto Book { get; set; }
23 |
24 | private readonly IBookAppService _bookAppService;
25 |
26 | ///
27 | /// 该类通过构造函数注入了 IBookAppService 应用服务.
28 | ///
29 | ///
30 | public CreateModalModel(IBookAppService bookAppService)
31 | {
32 | _bookAppService = bookAppService;
33 | }
34 |
35 | ///
36 | /// 并且在 OnPostAsync 方法中调用了服务的 CreateAsync 方法
37 | ///
38 | ///
39 | public async Task OnPostAsync()
40 | {
41 | await _bookAppService.CreateAsync(Book);
42 | return NoContent();
43 | }
44 | }
45 | }
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_sr.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: SR (Serbian; српски језик)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Поље је обавезно.",
17 | remote: "Средите ово поље.",
18 | email: "Унесите исправну и-мејл адресу.",
19 | url: "Унесите исправан URL.",
20 | date: "Унесите исправан датум.",
21 | dateISO: "Унесите исправан датум (ISO).",
22 | number: "Унесите исправан број.",
23 | digits: "Унесите само цифе.",
24 | creditcard: "Унесите исправан број кредитне картице.",
25 | equalTo: "Унесите исту вредност поново.",
26 | extension: "Унесите вредност са одговарајућом екстензијом.",
27 | maxlength: $.validator.format( "Унесите мање од {0} карактера." ),
28 | minlength: $.validator.format( "Унесите барем {0} карактера." ),
29 | rangelength: $.validator.format( "Унесите вредност дугачку између {0} и {1} карактера." ),
30 | range: $.validator.format( "Унесите вредност између {0} и {1}." ),
31 | max: $.validator.format( "Унесите вредност мању или једнаку {0}." ),
32 | min: $.validator.format( "Унесите вредност већу или једнаку {0}." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_hy_AM.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: HY_AM (Armenian; հայերեն լեզու)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Պարտադիր լրացման դաշտ",
17 | remote: "Ներմուծեք ճիշտ արժեքը",
18 | email: "Ներմուծեք վավեր էլեկտրոնային փոստի հասցե",
19 | url: "Ներմուծեք վավեր URL",
20 | date: "Ներմուծեք վավեր ամսաթիվ",
21 | dateISO: "Ներմուծեք ISO ֆորմատով վավեր ամսաթիվ։",
22 | number: "Ներմուծեք թիվ",
23 | digits: "Ներմուծեք միայն թվեր",
24 | creditcard: "Ներմուծեք ճիշտ բանկային քարտի համար",
25 | equalTo: "Ներմուծեք միևնուն արժեքը ևս մեկ անգամ",
26 | extension: "Ընտրեք ճիշտ ընդլանումով ֆայլ",
27 | maxlength: $.validator.format( "Ներմուծեք ոչ ավել քան {0} նիշ" ),
28 | minlength: $.validator.format( "Ներմուծեք ոչ պակաս քան {0} նիշ" ),
29 | rangelength: $.validator.format( "Ներմուծեք {0}֊ից {1} երկարությամբ արժեք" ),
30 | range: $.validator.format( "Ներմուծեք թիվ {0}֊ից {1} միջակայքում" ),
31 | max: $.validator.format( "Ներմուծեք թիվ, որը փոքր կամ հավասար է {0}֊ին" ),
32 | min: $.validator.format( "Ներմուծեք թիվ, որը մեծ կամ հավասար է {0}֊ին" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.IO;
3 | using Microsoft.AspNetCore.Hosting;
4 | using Serilog;
5 | using Serilog.Events;
6 |
7 | namespace Czar.AbpDemo
8 | {
9 | public class Program
10 | {
11 | public static int Main(string[] args)
12 | {
13 | Log.Logger = new LoggerConfiguration()
14 | .MinimumLevel.Debug() //TODO: Should be configurable!
15 | .MinimumLevel.Override("Microsoft", LogEventLevel.Information)
16 | .Enrich.FromLogContext()
17 | .WriteTo.File("Logs/logs.txt",rollingInterval:RollingInterval.Day)
18 | .CreateLogger();
19 |
20 | try
21 | {
22 | Log.Information("Starting web host.");
23 | BuildWebHostInternal(args).Run();
24 | return 0;
25 | }
26 | catch (Exception ex)
27 | {
28 | Log.Fatal(ex, "Host terminated unexpectedly!");
29 | return 1;
30 | }
31 | finally
32 | {
33 | Log.CloseAndFlush();
34 | }
35 | }
36 |
37 | public static IWebHost BuildWebHostInternal(string[] args) =>
38 | new WebHostBuilder()
39 | .UseKestrel()
40 | .UseContentRoot(Directory.GetCurrentDirectory())
41 | .UseIISIntegration()
42 | .UseStartup()
43 | .UseSerilog()
44 | .Build();
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.ky.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Russian
11 | function numpf(n, f, s, t) {
12 | // f - 1, 21, 31, ...
13 | // s - 2-4, 22-24, 32-34 ...
14 | // t - 5-20, 25-30, ...
15 | var n10 = n % 10;
16 | if ( (n10 === 1) && ( (n === 1) || (n > 20) ) ) {
17 | return f;
18 | } else if ( (n10 > 1) && (n10 < 5) && ( (n > 20) || (n < 10) ) ) {
19 | return s;
20 | } else {
21 | return t;
22 | }
23 | }
24 |
25 | jQuery.timeago.settings.strings = {
26 | prefixAgo: null,
27 | prefixFromNow: "через",
28 | suffixAgo: "мурун",
29 | suffixFromNow: null,
30 | seconds: "1 минуттан аз",
31 | minute: "минута",
32 | minutes: function(value) { return numpf(value, "%d минута", "%d минута", "%d минут"); },
33 | hour: "саат",
34 | hours: function(value) { return numpf(value, "%d саат", "%d саат", "%d саат"); },
35 | day: "күн",
36 | days: function(value) { return numpf(value, "%d күн", "%d күн", "%d күн"); },
37 | month: "ай",
38 | months: function(value) { return numpf(value, "%d ай", "%d ай", "%d ай"); },
39 | year: "жыл",
40 | years: function(value) { return numpf(value, "%d жыл", "%d жыл", "%d жыл"); }
41 | };
42 | }));
43 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_hr.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: HR (Croatia; hrvatski jezik)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Ovo polje je obavezno.",
17 | remote: "Ovo polje treba popraviti.",
18 | email: "Unesite ispravnu e-mail adresu.",
19 | url: "Unesite ispravan URL.",
20 | date: "Unesite ispravan datum.",
21 | dateISO: "Unesite ispravan datum (ISO).",
22 | number: "Unesite ispravan broj.",
23 | digits: "Unesite samo brojeve.",
24 | creditcard: "Unesite ispravan broj kreditne kartice.",
25 | equalTo: "Unesite ponovo istu vrijednost.",
26 | extension: "Unesite vrijednost sa ispravnom ekstenzijom.",
27 | maxlength: $.validator.format( "Maksimalni broj znakova je {0} ." ),
28 | minlength: $.validator.format( "Minimalni broj znakova je {0} ." ),
29 | rangelength: $.validator.format( "Unesite vrijednost između {0} i {1} znakova." ),
30 | range: $.validator.format( "Unesite vrijednost između {0} i {1}." ),
31 | max: $.validator.format( "Unesite vrijednost manju ili jednaku {0}." ),
32 | min: $.validator.format( "Unesite vrijednost veću ili jednaku {0}." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_mk.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: MK (Macedonian; македонски јазик)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Полето е задолжително.",
17 | remote: "Поправете го ова поле",
18 | email: "Внесете правилна e-mail адреса",
19 | url: "Внесете правилен URL.",
20 | date: "Внесете правилен датум",
21 | dateISO: "Внесете правилен датум (ISO).",
22 | number: "Внесете правилен број.",
23 | digits: "Внесете само бројки.",
24 | creditcard: "Внесете правилен број на кредитната картичка.",
25 | equalTo: "Внесете ја истата вредност повторно.",
26 | extension: "Внесете вредност со соодветна екстензија.",
27 | maxlength: $.validator.format( "Внесете максимално {0} знаци." ),
28 | minlength: $.validator.format( "Внесете барем {0} знаци." ),
29 | rangelength: $.validator.format( "Внесете вредност со должина помеѓу {0} и {1} знаци." ),
30 | range: $.validator.format( "Внесете вредност помеѓу {0} и {1}." ),
31 | max: $.validator.format( "Внесете вредност помала или еднаква на {0}." ),
32 | min: $.validator.format( "Внесете вредност поголема или еднаква на {0}" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_no.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: NO (Norwegian; Norsk)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Dette feltet er obligatorisk.",
17 | maxlength: $.validator.format( "Maksimalt {0} tegn." ),
18 | minlength: $.validator.format( "Minimum {0} tegn." ),
19 | rangelength: $.validator.format( "Angi minimum {0} og maksimum {1} tegn." ),
20 | email: "Oppgi en gyldig epostadresse.",
21 | url: "Angi en gyldig URL.",
22 | date: "Angi en gyldig dato.",
23 | dateISO: "Angi en gyldig dato (&ARING;&ARING;&ARING;&ARING;-MM-DD).",
24 | dateSE: "Angi en gyldig dato.",
25 | number: "Angi et gyldig nummer.",
26 | numberSE: "Angi et gyldig nummer.",
27 | digits: "Skriv kun tall.",
28 | equalTo: "Skriv samme verdi igjen.",
29 | range: $.validator.format( "Angi en verdi mellom {0} og {1}." ),
30 | max: $.validator.format( "Angi en verdi som er mindre eller lik {0}." ),
31 | min: $.validator.format( "Angi en verdi som er større eller lik {0}." ),
32 | step: $.validator.format( "Angi en verdi ganger {0}." ),
33 | creditcard: "Angi et gyldig kredittkortnummer."
34 | } );
35 | return $;
36 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_de.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: DE (German, Deutsch)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Dieses Feld ist ein Pflichtfeld.",
17 | maxlength: $.validator.format( "Geben Sie bitte maximal {0} Zeichen ein." ),
18 | minlength: $.validator.format( "Geben Sie bitte mindestens {0} Zeichen ein." ),
19 | rangelength: $.validator.format( "Geben Sie bitte mindestens {0} und maximal {1} Zeichen ein." ),
20 | email: "Geben Sie bitte eine gültige E-Mail Adresse ein.",
21 | url: "Geben Sie bitte eine gültige URL ein.",
22 | date: "Bitte geben Sie ein gültiges Datum ein.",
23 | number: "Geben Sie bitte eine Nummer ein.",
24 | digits: "Geben Sie bitte nur Ziffern ein.",
25 | equalTo: "Bitte denselben Wert wiederholen.",
26 | range: $.validator.format( "Geben Sie bitte einen Wert zwischen {0} und {1} ein." ),
27 | max: $.validator.format( "Geben Sie bitte einen Wert kleiner oder gleich {0} ein." ),
28 | min: $.validator.format( "Geben Sie bitte einen Wert größer oder gleich {0} ein." ),
29 | creditcard: "Geben Sie bitte eine gültige Kreditkarten-Nummer ein."
30 | } );
31 | return $;
32 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_hu.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: HU (Hungarian; Magyar)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Kötelező megadni.",
17 | maxlength: $.validator.format( "Legfeljebb {0} karakter hosszú legyen." ),
18 | minlength: $.validator.format( "Legalább {0} karakter hosszú legyen." ),
19 | rangelength: $.validator.format( "Legalább {0} és legfeljebb {1} karakter hosszú legyen." ),
20 | email: "Érvényes e-mail címnek kell lennie.",
21 | url: "Érvényes URL-nek kell lennie.",
22 | date: "Dátumnak kell lennie.",
23 | number: "Számnak kell lennie.",
24 | digits: "Csak számjegyek lehetnek.",
25 | equalTo: "Meg kell egyeznie a két értéknek.",
26 | range: $.validator.format( "{0} és {1} közé kell esnie." ),
27 | max: $.validator.format( "Nem lehet nagyobb, mint {0}." ),
28 | min: $.validator.format( "Nem lehet kisebb, mint {0}." ),
29 | creditcard: "Érvényes hitelkártyaszámnak kell lennie.",
30 | remote: "Kérem javítsa ki ezt a mezőt.",
31 | dateISO: "Kérem írjon be egy érvényes dátumot (ISO).",
32 | step: $.validator.format( "A {0} egyik többszörösét adja meg." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_sr_lat.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: SR (Serbian - Latin alphabet; srpski jezik - latinica)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Polje je obavezno.",
17 | remote: "Sredite ovo polje.",
18 | email: "Unesite ispravnu e-mail adresu",
19 | url: "Unesite ispravan URL.",
20 | date: "Unesite ispravan datum.",
21 | dateISO: "Unesite ispravan datum (ISO).",
22 | number: "Unesite ispravan broj.",
23 | digits: "Unesite samo cifre.",
24 | creditcard: "Unesite ispravan broj kreditne kartice.",
25 | equalTo: "Unesite istu vrednost ponovo.",
26 | extension: "Unesite vrednost sa odgovarajućom ekstenzijom.",
27 | maxlength: $.validator.format( "Unesite manje od {0} karaktera." ),
28 | minlength: $.validator.format( "Unesite barem {0} karaktera." ),
29 | rangelength: $.validator.format( "Unesite vrednost dugačku između {0} i {1} karaktera." ),
30 | range: $.validator.format( "Unesite vrednost između {0} i {1}." ),
31 | max: $.validator.format( "Unesite vrednost manju ili jednaku {0}." ),
32 | min: $.validator.format( "Unesite vrednost veću ili jednaku {0}." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_ur.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: UR (Urdu; اردو)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "ان معلومات کا اندراج ضروری ہے",
17 | remote: "ان معلومات کا اندراج ضروری ہے",
18 | email: "درج کی ہوئی ای میل درست نہیں ہے",
19 | url: "درج کیا گیا پتہ درست نہیں ہے",
20 | date: "درج کی گئی تاریخ درست نہیں ہے",
21 | dateISO: "معیار کے مطابق نہیں ہے (ISO) درج کی گئی تاریخ",
22 | number: "درج کیےگئے ہندسے درست نہیں ہیں",
23 | digits: "صرف ہندسے اندراج کئے جاسکتے ہیں",
24 | creditcard: "درج کیا گیا کارڈ نمبر درست نہیں ہے",
25 | equalTo: "اندراج کا موازنہ درست نہیں ہے",
26 | extension: "اندراج درست نہیں ہے",
27 | maxlength: $.validator.format( "زیادہ سے زیادہ {0} کا اندراج کر سکتے ہیں" ),
28 | minlength: $.validator.format( "کم سے کم {0} کا اندراج کرنا ضروری ہے" ),
29 | rangelength: $.validator.format( "اندراج کا {0} اور {1}کے درمیان ہونا ضروری ہے" ),
30 | range: $.validator.format( "اندراج کا {0} اور {1} کے درمیان ہونا ضروری ہے" ),
31 | max: $.validator.format( "زیادہ سے زیادہ {0} کا اندراج کر سکتے ہیں" ),
32 | min: $.validator.format( "کم سے کم {0} کا اندراج کرنا ضروری ہے" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.uk.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Ukrainian
11 | function numpf(n, f, s, t) {
12 | // f - 1, 21, 31, ...
13 | // s - 2-4, 22-24, 32-34 ...
14 | // t - 5-20, 25-30, ...
15 | var n10 = n % 10;
16 | if ( (n10 === 1) && ( (n === 1) || (n > 20) ) ) {
17 | return f;
18 | } else if ( (n10 > 1) && (n10 < 5) && ( (n > 20) || (n < 10) ) ) {
19 | return s;
20 | } else {
21 | return t;
22 | }
23 | }
24 |
25 | jQuery.timeago.settings.strings = {
26 | prefixAgo: null,
27 | prefixFromNow: "через",
28 | suffixAgo: "тому",
29 | suffixFromNow: null,
30 | seconds: "менше хвилини",
31 | minute: "хвилина",
32 | minutes: function(value) { return numpf(value, "%d хвилина", "%d хвилини", "%d хвилин"); },
33 | hour: "година",
34 | hours: function(value) { return numpf(value, "%d година", "%d години", "%d годин"); },
35 | day: "день",
36 | days: function(value) { return numpf(value, "%d день", "%d дні", "%d днів"); },
37 | month: "місяць",
38 | months: function(value) { return numpf(value, "%d місяць", "%d місяці", "%d місяців"); },
39 | year: "рік",
40 | years: function(value) { return numpf(value, "%d рік", "%d роки", "%d років"); }
41 | };
42 | }));
43 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.ru.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Russian
11 | function numpf(n, f, s, t) {
12 | // f - 1, 21, 31, ...
13 | // s - 2-4, 22-24, 32-34 ...
14 | // t - 5-20, 25-30, ...
15 | n = n % 100;
16 | var n10 = n % 10;
17 | if ( (n10 === 1) && ( (n === 1) || (n > 20) ) ) {
18 | return f;
19 | } else if ( (n10 > 1) && (n10 < 5) && ( (n > 20) || (n < 10) ) ) {
20 | return s;
21 | } else {
22 | return t;
23 | }
24 | }
25 |
26 | jQuery.timeago.settings.strings = {
27 | prefixAgo: null,
28 | prefixFromNow: "через",
29 | suffixAgo: "назад",
30 | suffixFromNow: null,
31 | seconds: "меньше минуты",
32 | minute: "минуту",
33 | minutes: function(value) { return numpf(value, "%d минуту", "%d минуты", "%d минут"); },
34 | hour: "час",
35 | hours: function(value) { return numpf(value, "%d час", "%d часа", "%d часов"); },
36 | day: "день",
37 | days: function(value) { return numpf(value, "%d день", "%d дня", "%d дней"); },
38 | month: "месяц",
39 | months: function(value) { return numpf(value, "%d месяц", "%d месяца", "%d месяцев"); },
40 | year: "год",
41 | years: function(value) { return numpf(value, "%d год", "%d года", "%d лет"); }
42 | };
43 | }));
44 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_bn_BD.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: bn_BD (Bengali, Bangladesh)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "এই তথ্যটি আবশ্যক।",
17 | remote: "এই তথ্যটি ঠিক করুন।",
18 | email: "অনুগ্রহ করে একটি সঠিক মেইল ঠিকানা লিখুন।",
19 | url: "অনুগ্রহ করে একটি সঠিক লিঙ্ক দিন।",
20 | date: "তারিখ সঠিক নয়।",
21 | dateISO: "অনুগ্রহ করে একটি সঠিক (ISO) তারিখ লিখুন।",
22 | number: "অনুগ্রহ করে একটি সঠিক নম্বর লিখুন।",
23 | digits: "এখানে শুধু সংখ্যা ব্যবহার করা যাবে।",
24 | creditcard: "অনুগ্রহ করে একটি ক্রেডিট কার্ডের সঠিক নম্বর লিখুন।",
25 | equalTo: "একই মান আবার লিখুন।",
26 | extension: "সঠিক ধরনের ফাইল আপলোড করুন।",
27 | maxlength: $.validator.format( "{0}টির বেশি অক্ষর লেখা যাবে না।" ),
28 | minlength: $.validator.format( "{0}টির কম অক্ষর লেখা যাবে না।" ),
29 | rangelength: $.validator.format( "{0} থেকে {1} টি অক্ষর সম্বলিত মান লিখুন।" ),
30 | range: $.validator.format( "{0} থেকে {1} এর মধ্যে একটি মান ব্যবহার করুন।" ),
31 | max: $.validator.format( "অনুগ্রহ করে {0} বা তার চাইতে কম মান ব্যবহার করুন।" ),
32 | min: $.validator.format( "অনুগ্রহ করে {0} বা তার চাইতে বেশি মান ব্যবহার করুন।" )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_cs.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: CS (Czech; čeština, český jazyk)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "Tento údaj je povinný.",
17 | remote: "Prosím, opravte tento údaj.",
18 | email: "Prosím, zadejte platný e-mail.",
19 | url: "Prosím, zadejte platné URL.",
20 | date: "Prosím, zadejte platné datum.",
21 | dateISO: "Prosím, zadejte platné datum (ISO).",
22 | number: "Prosím, zadejte číslo.",
23 | digits: "Prosím, zadávejte pouze číslice.",
24 | creditcard: "Prosím, zadejte číslo kreditní karty.",
25 | equalTo: "Prosím, zadejte znovu stejnou hodnotu.",
26 | extension: "Prosím, zadejte soubor se správnou příponou.",
27 | maxlength: $.validator.format( "Prosím, zadejte nejvíce {0} znaků." ),
28 | minlength: $.validator.format( "Prosím, zadejte nejméně {0} znaků." ),
29 | rangelength: $.validator.format( "Prosím, zadejte od {0} do {1} znaků." ),
30 | range: $.validator.format( "Prosím, zadejte hodnotu od {0} do {1}." ),
31 | max: $.validator.format( "Prosím, zadejte hodnotu menší nebo rovnu {0}." ),
32 | min: $.validator.format( "Prosím, zadejte hodnotu větší nebo rovnu {0}." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_ge.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /**
12 | * @author @tatocaster
13 | * Translated default messages for the jQuery validation plugin.
14 | * Locale: GE (Georgian; ქართული)
15 | */
16 | $.extend( $.validator.messages, {
17 | required: "ეს ველი სავალდებულოა",
18 | remote: "გთხოვთ შეასწოროთ.",
19 | email: "გთხოვთ შეიყვანოთ სწორი ფორმატით.",
20 | url: "გთხოვთ შეიყვანოთ სწორი ფორმატით.",
21 | date: "გთხოვთ შეიყვანოთ სწორი თარიღი.",
22 | dateISO: "გთხოვთ შეიყვანოთ სწორი ფორმატით (ISO).",
23 | number: "გთხოვთ შეიყვანოთ რიცხვი.",
24 | digits: "დაშვებულია მხოლოდ ციფრები.",
25 | creditcard: "გთხოვთ შეიყვანოთ სწორი ფორმატის ბარათის კოდი.",
26 | equalTo: "გთხოვთ შეიყვანოთ იგივე მნიშვნელობა.",
27 | maxlength: $.validator.format( "გთხოვთ შეიყვანოთ არა უმეტეს {0} სიმბოლოსი." ),
28 | minlength: $.validator.format( "შეიყვანეთ მინიმუმ {0} სიმბოლო." ),
29 | rangelength: $.validator.format( "გთხოვთ შეიყვანოთ {0} -დან {1} -მდე რაოდენობის სიმბოლოები." ),
30 | range: $.validator.format( "შეიყვანეთ {0} -სა {1} -ს შორის." ),
31 | max: $.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა ნაკლები ან ტოლი {0} -ს." ),
32 | min: $.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა მეტი ან ტოლი {0} -ს." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.cs.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Czech
11 | (function() {
12 | function f(n, d, a) {
13 | return a[d>=0 ? 0 : a.length===2 || n<5 ? 1 : 2];
14 | }
15 |
16 | jQuery.timeago.settings.strings = {
17 | prefixAgo: 'před',
18 | prefixFromNow: 'za',
19 | suffixAgo: null,
20 | suffixFromNow: null,
21 | seconds: function(n, d) {return f(n, d, ['méně než minutou', 'méně než minutu']);},
22 | minute: function(n, d) {return f(n, d, ['minutou', 'minutu']);},
23 | minutes: function(n, d) {return f(n, d, ['%d minutami', '%d minuty', '%d minut']);},
24 | hour: function(n, d) {return f(n, d, ['hodinou', 'hodinu']);},
25 | hours: function(n, d) {return f(n, d, ['%d hodinami', '%d hodiny', '%d hodin']);},
26 | day: function(n, d) {return f(n, d, ['%d dnem', '%d den']);},
27 | days: function(n, d) {return f(n, d, ['%d dny', '%d dny', '%d dní']);},
28 | month: function(n, d) {return f(n, d, ['%d měsícem', '%d měsíc']);},
29 | months: function(n, d) {return f(n, d, ['%d měsíci', '%d měsíce', '%d měsíců']);},
30 | year: function(n, d) {return f(n, d, ['%d rokem', '%d rok']);},
31 | years: function(n, d) {return f(n, d, ['%d lety', '%d roky', '%d let']);}
32 | };
33 | })();
34 | }));
35 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Application/BookStore/BookAppService.cs:
--------------------------------------------------------------------------------
1 | /**
2 | *┌──────────────────────────────────────────────────────────────┐
3 | *│ 描 述:继承了AsyncCrudAppService<...>实现了接口定义的CRUD方法
4 | *│ 作 者:yilezhu
5 | *│ 版 本:1.0
6 | *│ 创建时间:2019/2/19 14:33:32
7 | *└──────────────────────────────────────────────────────────────┘
8 | *┌──────────────────────────────────────────────────────────────┐
9 | *│ 命名空间: Czar.AbpDemo.BookStore
10 | *│ 类 名: BookAppService
11 | *└──────────────────────────────────────────────────────────────┘
12 | */
13 | using System;
14 | using System.Collections.Generic;
15 | using System.Text;
16 | using Volo.Abp.Application.Dtos;
17 | using Volo.Abp.Application.Services;
18 | using Volo.Abp.Domain.Repositories;
19 |
20 | namespace Czar.AbpDemo.BookStore
21 | {
22 | public class BookAppService:
23 | AsyncCrudAppService/实现了CRUD方法
24 | Book,//Book实体
25 | BookDto,//用来展示书籍
26 | Int32,//Book实体的主键
27 | PagedAndSortedResultRequestDto,//获取书籍的时候用于分页和排序
28 | CreateUpdateBookDto,//用于创建书籍
29 | CreateUpdateBookDto>,//用户更新书籍
30 | IBookAppService
31 | {
32 | //注入了IRepository是默认为Book创建的仓储.ABP会自动为每一个聚合根(或实体)创建仓储
33 | public BookAppService(IRepository repository) : base(repository)
34 | {
35 |
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.EntityFrameworkCore/EntityFrameworkCore/AbpDemoEntityFrameworkCoreModule.cs:
--------------------------------------------------------------------------------
1 | using Czar.AbpDemo.JobSchedule;
2 | using Microsoft.Extensions.DependencyInjection;
3 | using Volo.Abp.AuditLogging.EntityFrameworkCore;
4 | using Volo.Abp.BackgroundJobs.EntityFrameworkCore;
5 | using Volo.Abp.EntityFrameworkCore.SqlServer;
6 | using Volo.Abp.Identity.EntityFrameworkCore;
7 | using Volo.Abp.Modularity;
8 | using Volo.Abp.PermissionManagement.EntityFrameworkCore;
9 | using Volo.Abp.SettingManagement.EntityFrameworkCore;
10 |
11 | namespace Czar.AbpDemo.EntityFrameworkCore
12 | {
13 | [DependsOn(
14 | typeof(AbpDemoDomainModule),
15 | typeof(AbpIdentityEntityFrameworkCoreModule),
16 | typeof(AbpPermissionManagementEntityFrameworkCoreModule),
17 | typeof(AbpSettingManagementEntityFrameworkCoreModule),
18 | typeof(AbpEntityFrameworkCoreSqlServerModule),
19 | typeof(BackgroundJobsEntityFrameworkCoreModule),
20 | typeof(AbpAuditLoggingEntityFrameworkCoreModule)
21 | )]
22 | public class AbpDemoEntityFrameworkCoreModule : AbpModule
23 | {
24 | public override void ConfigureServices(ServiceConfigurationContext context)
25 | {
26 | context.Services.AddAbpDbContext(options =>
27 | {
28 | //Remove "includeAllEntities: true" to create default repositories only for aggregate roots
29 | options.AddDefaultRepositories(includeAllEntities: true);
30 | options.AddRepository();
31 | });
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_et.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: ET (Estonian; eesti, eesti keel)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "See väli peab olema täidetud.",
17 | maxlength: $.validator.format( "Palun sisestage vähem kui {0} tähemärki." ),
18 | minlength: $.validator.format( "Palun sisestage vähemalt {0} tähemärki." ),
19 | rangelength: $.validator.format( "Palun sisestage väärtus vahemikus {0} kuni {1} tähemärki." ),
20 | email: "Palun sisestage korrektne e-maili aadress.",
21 | url: "Palun sisestage korrektne URL.",
22 | date: "Palun sisestage korrektne kuupäev.",
23 | dateISO: "Palun sisestage korrektne kuupäev (YYYY-MM-DD).",
24 | number: "Palun sisestage korrektne number.",
25 | digits: "Palun sisestage ainult numbreid.",
26 | equalTo: "Palun sisestage sama väärtus uuesti.",
27 | range: $.validator.format( "Palun sisestage väärtus vahemikus {0} kuni {1}." ),
28 | max: $.validator.format( "Palun sisestage väärtus, mis on väiksem või võrdne arvuga {0}." ),
29 | min: $.validator.format( "Palun sisestage väärtus, mis on suurem või võrdne arvuga {0}." ),
30 | creditcard: "Palun sisestage korrektne krediitkaardi number."
31 | } );
32 | return $;
33 | }));
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/timeago/locales/jquery.timeago.sk.js:
--------------------------------------------------------------------------------
1 | (function (factory) {
2 | if (typeof define === 'function' && define.amd) {
3 | define(['jquery'], factory);
4 | } else if (typeof module === 'object' && typeof module.exports === 'object') {
5 | factory(require('jquery'));
6 | } else {
7 | factory(jQuery);
8 | }
9 | }(function (jQuery) {
10 | // Slovak
11 | (function() {
12 | function f(n, d, a) {
13 | return a[d>=0 ? 0 : a.length===2 || n<5 ? 1 : 2];
14 | }
15 |
16 | jQuery.timeago.settings.strings = {
17 | prefixAgo: 'pred',
18 | prefixFromNow: 'o',
19 | suffixAgo: null,
20 | suffixFromNow: null,
21 | seconds: function(n, d) {return f(n, d, ['menej ako minútou', 'menej ako minútu']);},
22 | minute: function(n, d) {return f(n, d, ['minútou', 'minútu']);},
23 | minutes: function(n, d) {return f(n, d, ['%d minútami', '%d minúty', '%d minút']);},
24 | hour: function(n, d) {return f(n, d, ['hodinou', 'hodinu']);},
25 | hours: function(n, d) {return f(n, d, ['%d hodinami', '%d hodiny', '%d hodín']);},
26 | day: function(n, d) {return f(n, d, ['%d dňom', '%d deň']);},
27 | days: function(n, d) {return f(n, d, ['%d dňami', '%d dni', '%d dní']);},
28 | month: function(n, d) {return f(n, d, ['%d mesiacom', '%d mesiac']);},
29 | months: function(n, d) {return f(n, d, ['%d mesiacmi', '%d mesiace', '%d mesiacov']);},
30 | year: function(n, d) {return f(n, d, ['%d rokom', '%d rok']);},
31 | years: function(n, d) {return f(n, d, ['%d rokmi', '%d roky', '%d rokov']);}
32 | };
33 | })();
34 | }));
35 |
--------------------------------------------------------------------------------
/src/Czar.AbpDemo.Web/wwwroot/libs/jquery-validation/localization/messages_si.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | define( ["jquery", "../jquery.validate"], factory );
4 | } else if (typeof module === "object" && module.exports) {
5 | module.exports = factory( require( "jquery" ) );
6 | } else {
7 | factory( jQuery );
8 | }
9 | }(function( $ ) {
10 |
11 | /*
12 | * Translated default messages for the jQuery validation plugin.
13 | * Locale: SI (Slovenian)
14 | */
15 | $.extend( $.validator.messages, {
16 | required: "To polje je obvezno.",
17 | remote: "Vpis v tem polju ni v pravi obliki.",
18 | email: "Prosimo, vnesite pravi email naslov.",
19 | url: "Prosimo, vnesite pravi URL.",
20 | date: "Prosimo, vnesite pravi datum.",
21 | dateISO: "Prosimo, vnesite pravi datum (ISO).",
22 | number: "Prosimo, vnesite pravo številko.",
23 | digits: "Prosimo, vnesite samo številke.",
24 | creditcard: "Prosimo, vnesite pravo številko kreditne kartice.",
25 | equalTo: "Prosimo, ponovno vnesite enako vsebino.",
26 | extension: "Prosimo, vnesite vsebino z pravo končnico.",
27 | maxlength: $.validator.format( "Prosimo, da ne vnašate več kot {0} znakov." ),
28 | minlength: $.validator.format( "Prosimo, vnesite vsaj {0} znakov." ),
29 | rangelength: $.validator.format( "Prosimo, vnesite od {0} do {1} znakov." ),
30 | range: $.validator.format( "Prosimo, vnesite vrednost med {0} in {1}." ),
31 | max: $.validator.format( "Prosimo, vnesite vrednost manjšo ali enako {0}." ),
32 | min: $.validator.format( "Prosimo, vnesite vrednost večjo ali enako {0}." )
33 | } );
34 | return $;
35 | }));
--------------------------------------------------------------------------------