Skip to content

Commit 07d1558

Browse files
author
Mihail Parvanov
committed
Add custom implementation of Editor for uploading images using drag and drop
1 parent fc0ab36 commit 07d1558

File tree

79 files changed

+100693
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+100693
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio 14
4+
VisualStudioVersion = 14.0.25420.1
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UploadImageKendo", "UploadImageKendo\UploadImageKendo.csproj", "{38A5F854-AAE5-4C27-A606-44180856BA77}"
7+
EndProject
8+
Global
9+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
10+
Debug|Any CPU = Debug|Any CPU
11+
Release|Any CPU = Release|Any CPU
12+
EndGlobalSection
13+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
14+
{38A5F854-AAE5-4C27-A606-44180856BA77}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15+
{38A5F854-AAE5-4C27-A606-44180856BA77}.Debug|Any CPU.Build.0 = Debug|Any CPU
16+
{38A5F854-AAE5-4C27-A606-44180856BA77}.Release|Any CPU.ActiveCfg = Release|Any CPU
17+
{38A5F854-AAE5-4C27-A606-44180856BA77}.Release|Any CPU.Build.0 = Release|Any CPU
18+
EndGlobalSection
19+
GlobalSection(SolutionProperties) = preSolution
20+
HideSolutionNode = FALSE
21+
EndGlobalSection
22+
EndGlobal
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using System.Web;
2+
using System.Web.Optimization;
3+
4+
namespace UploadImageKendo
5+
{
6+
public class BundleConfig
7+
{
8+
// For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862
9+
public static void RegisterBundles(BundleCollection bundles)
10+
{
11+
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
12+
"~/Scripts/jquery-{version}.js"));
13+
14+
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
15+
"~/Scripts/jquery.validate*"));
16+
17+
// Use the development version of Modernizr to develop with and learn from. Then, when you're
18+
// ready for production, use the build tool at http://modernizr.com to pick only the tests you need.
19+
bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
20+
"~/Scripts/modernizr-*"));
21+
22+
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
23+
"~/Scripts/bootstrap.js",
24+
"~/Scripts/respond.js"));
25+
}
26+
}
27+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
using System.Web;
2+
using System.Web.Mvc;
3+
4+
namespace UploadImageKendo
5+
{
6+
public class FilterConfig
7+
{
8+
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
9+
{
10+
filters.Add(new HandleErrorAttribute());
11+
}
12+
}
13+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Linq;
4+
using System.Web;
5+
using System.Web.Mvc;
6+
using System.Web.Routing;
7+
8+
namespace UploadImageKendo
9+
{
10+
public class RouteConfig
11+
{
12+
public static void RegisterRoutes(RouteCollection routes)
13+
{
14+
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
15+
16+
routes.MapRoute(
17+
name: "Default",
18+
url: "{controller}/{action}/{id}",
19+
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
20+
);
21+
}
22+
}
23+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,199 @@
1+
/* #region Common styles */
2+
html,
3+
body,
4+
.body-content {
5+
height: 100%;
6+
box-sizing: border-box;
7+
}
8+
9+
html {
10+
position: relative;
11+
}
12+
13+
body {
14+
padding: 50px 0 0;
15+
}
16+
17+
.body-content {
18+
padding: 0 15px 20px;
19+
overflow: auto;
20+
}
21+
22+
/* Override the default bootstrap behavior where horizontal description lists
23+
will truncate terms that are too long to fit in the left column */
24+
.dl-horizontal dt {
25+
white-space: normal;
26+
}
27+
28+
input,
29+
select,
30+
textarea {
31+
max-width: 280px;
32+
}
33+
34+
a.k-link:focus,
35+
a.navbar-brand:focus {
36+
outline: none;
37+
text-decoration: none;
38+
}
39+
40+
.container-fluid .text-muted {
41+
margin: 20px 0;
42+
}
43+
44+
.placeholders {
45+
margin: 30px auto;
46+
}
47+
48+
.placeholder img {
49+
display: inline-block;
50+
}
51+
/* #endregion */
52+
53+
/* #region Header styles */
54+
.k-header h1 {
55+
margin: 0;
56+
padding: 30px 15px;
57+
font-size: 32px;
58+
font-weight: lighter;
59+
}
60+
61+
html .navbar-fixed-top {
62+
border: 0;
63+
}
64+
65+
/* #region Toggle button styles */
66+
html .k-rpanel-toggle {
67+
display: none;
68+
}
69+
70+
html body .btn-toggle,
71+
html body .k-primary.btn-toggle:hover,
72+
html body .btn-toggle:focus:active:not(.k-state-disabled):not([disabled]),
73+
html body .btn-toggle:focus:not(.k-state-disabled):not([disabled]) {
74+
box-shadow: none;
75+
border-radius: 0;
76+
}
77+
/* #endregion */
78+
79+
/* #region Navbar styles */
80+
.navbar-header {
81+
border-bottom: 1px solid rgba(255,255,255, 0.1);
82+
}
83+
84+
html .navbar-header .btn-toggle {
85+
padding: 8px;
86+
line-height: 20px;
87+
background: transparent;
88+
color: #fff;
89+
border: 0;
90+
float: right;
91+
margin: 7px;
92+
padding: 15px;
93+
margin: 0;
94+
}
95+
96+
html .navbar-header .btn-toggle:hover {
97+
background-color: #444;
98+
}
99+
100+
.navbar-header .k-icon.k-i-hbars {
101+
width: 24px;
102+
height: 20px;
103+
line-height: inherit;
104+
vertical-align: top;
105+
font-size: inherit;
106+
background: none;
107+
}
108+
109+
.navbar-header .k-i-hbars:before {
110+
font-size: 24px;
111+
content: "\2630";
112+
display: inline-block;
113+
}
114+
115+
/* #endregion */
116+
117+
/* #region Navbar Menu styles */
118+
.navbar .k-menu {
119+
border: 0;
120+
border-radius: 0;
121+
color: inherit;
122+
background: none;
123+
}
124+
125+
.navbar .k-menu > .k-first,
126+
.navbar .k-menu > .k-last {
127+
border-radius: 0;
128+
}
129+
130+
html .navbar .k-menu .k-item {
131+
border: 0;
132+
}
133+
134+
.navbar .k-item {
135+
color: #999999;
136+
}
137+
138+
.navbar .k-menu .k-state-hover,
139+
.navbar .k-menu .k-state-highlight,
140+
.navbar .k-menu .k-link.k-state-active,
141+
.navbar .k-menu .k-state-hover > .k-link {
142+
color: #fff;
143+
background: transparent;
144+
}
145+
146+
html .navbar .k-link {
147+
color: inherit;
148+
}
149+
150+
html body .navbar .navbar-brand {
151+
box-sizing: border-box;
152+
}
153+
154+
/* #endregion */
155+
156+
/* #endregion */
157+
158+
/* #region Footer styles */
159+
.footer {
160+
position: absolute;
161+
bottom: 0;
162+
width: 100%;
163+
/* Set the fixed height of the footer here */
164+
height: 60px;
165+
background-color: #f5f5f5;
166+
}
167+
/* #endregion */
168+
169+
/* #region custom Kendo UI styles */
170+
html .k-panelbar .k-content {
171+
padding: 1em;
172+
}
173+
174+
p .k-button {
175+
margin: 0 15px 0 0;
176+
}
177+
178+
.k-state-active .label {
179+
font-size: 1em;
180+
color: #000;
181+
}
182+
/* #endregion */
183+
184+
@media (max-width: 767px) {
185+
#responsive-panel .k-item {
186+
float: none;
187+
}
188+
189+
html .k-rpanel-toggle {
190+
display: block;
191+
}
192+
193+
.k-header h1 {
194+
margin: 0;
195+
padding: 16px 15px 14px 60px;
196+
font-size: 18px;
197+
font-weight: lighter;
198+
}
199+
}

0 commit comments

Comments
 (0)