Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
solo-1
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
solo-1
Commits
714f52ba
Commit
714f52ba
authored
Apr 25, 2017
by
Liang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
✨
fixed #12276
parent
67f29f9d
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
274 additions
and
71 deletions
+274
-71
src/main/resources/lang_en_US.properties
src/main/resources/lang_en_US.properties
+13
-1
src/main/resources/lang_zh_CN.properties
src/main/resources/lang_zh_CN.properties
+13
-1
src/main/webapp/admin-label.ftl
src/main/webapp/admin-label.ftl
+13
-1
src/main/webapp/css/default-admin.css
src/main/webapp/css/default-admin.css
+169
-1
src/main/webapp/js/admin/editorCodeMirror.js
src/main/webapp/js/admin/editorCodeMirror.js
+3
-7
src/main/webapp/js/lib/CodeMirrorEditor/codemirror.css
src/main/webapp/js/lib/CodeMirrorEditor/codemirror.css
+19
-25
src/main/webapp/js/lib/CodeMirrorEditor/codemirror.min.css
src/main/webapp/js/lib/CodeMirrorEditor/codemirror.min.css
+1
-1
src/main/webapp/js/lib/CodeMirrorEditor/editor.js
src/main/webapp/js/lib/CodeMirrorEditor/editor.js
+27
-18
src/main/webapp/js/lib/compress/admin-lib.min.js
src/main/webapp/js/lib/compress/admin-lib.min.js
+16
-16
No files found.
src/main/resources/lang_en_US.properties
View file @
714f52ba
...
@@ -16,12 +16,24 @@
...
@@ -16,12 +16,24 @@
#
#
# Description: Solo language configurations(en_US).
# Description: Solo language configurations(en_US).
# Version: 2.1
1.4.20, Apr 17
, 2017
# Version: 2.1
2.4.20, Apr 25
, 2017
# Author: Liang Ding
# Author: Liang Ding
# Author: Liyuan Li
# Author: Liyuan Li
# Author: Dongxu Wang
# Author: Dongxu Wang
#
#
addBoldLabel
=
Add bold text
addItalicLabel
=
Add italic text
insertQuoteLabel
=
Insert a quote
addBulletedLabel
=
Add a bulleted list
addNumberedListLabel
=
Add a numbered list
addLinkLabel
=
Add a link
undoLabel
=
Undo
redoLabel
=
Redo
fullscreenLabel
=
Fullscreen
helpLabel
=
Help
previewLabel
=
Preview
uploadFilesLabel
=
Upload File
howConfigLabel
=
How?
howConfigLabel
=
How?
duplicatedCategoryURILabel
=
Duplicated category URI!
duplicatedCategoryURILabel
=
Duplicated category URI!
duplicatedCategoryLabel
=
Duplicated category!
duplicatedCategoryLabel
=
Duplicated category!
...
...
src/main/resources/lang_zh_CN.properties
View file @
714f52ba
...
@@ -16,12 +16,24 @@
...
@@ -16,12 +16,24 @@
#
#
# Description: Solo default language configurations(zh_CN).
# Description: Solo default language configurations(zh_CN).
# Version: 2.1
1.4.20, Apr 17
, 2017
# Version: 2.1
2.4.20, Apr 25
, 2017
# Author: Liang Ding
# Author: Liang Ding
# Author: Liyuan Li
# Author: Liyuan Li
# Author: Dongxu Wang
# Author: Dongxu Wang
#
#
addBoldLabel
=
\u
6DFB
\u
52A0
\u
7C97
\u
4F53
addItalicLabel
=
\u
6DFB
\u
52A0
\u
659C
\u
4F53
insertQuoteLabel
=
\u
63D2
\u5165\u
5F15
\u7528
addBulletedLabel
=
\u
6DFB
\u
52A0
\u
65E0
\u
5E8F
\u5217\u8868
addNumberedListLabel
=
\u
6DFB
\u
52A0
\u6709\u
5E8F
\u5217\u8868
addLink1Label
=
\u
6DFB
\u
52A0
\u
94FE
\u
63A5
undoLabel
=
\u
64A4
\u9500
redoLabel
=
\u6062\u
590D
helpLabel
=
\u
5E2E
\u
52A9
fullscreenLabel
=
\u5168\u
5C4F
previewLabel
=
\u9884\u
89C8
uploadFilesLabel
=
\u
4E0A
\u
4F20
\u6587\u
4EF6
howConfigLabel
=
\u5982\u
4F55
\u
914D
\u
7F6E
\u
FF1F
howConfigLabel
=
\u5982\u
4F55
\u
914D
\u
7F6E
\u
FF1F
duplicatedCategoryURILabel
=
\u5206\u
7C7B URI
\u
91CD
\u
590D
\u
FF01
duplicatedCategoryURILabel
=
\u5206\u
7C7B URI
\u
91CD
\u
590D
\u
FF01
duplicatedCategoryLabel
=
\u5206\u
7C7B
\u
91CD
\u
590D
\u
FF01
duplicatedCategoryLabel
=
\u5206\u
7C7B
\u
91CD
\u
590D
\u
FF01
...
...
src/main/webapp/admin-label.ftl
View file @
714f52ba
...
@@ -123,7 +123,19 @@
...
@@ -123,7 +123,19 @@
"visitorUserLabel": "${visitorUserLabel}",
"visitorUserLabel": "${visitorUserLabel}",
"categoryTooLongLabel": "${categoryTooLongLabel}",
"categoryTooLongLabel": "${categoryTooLongLabel}",
"descriptionLabel": "${descriptionLabel}",
"descriptionLabel": "${descriptionLabel}",
"autoSaveLabel": "${autoSaveLabel}"
"autoSaveLabel": "${autoSaveLabel}",
"addBoldLabel": '${addBoldLabel}',
"addItalicLabel": '${addItalicLabel}',
"insertQuoteLabel": '${insertQuoteLabel}',
"addBulletedLabel": '${addBulletedLabel}',
"addNumberedListLabel": '${addNumberedListLabel}',
"addLinkLabel": '${addLinkLabel}',
"undoLabel": '${undoLabel}',
"redoLabel": '${redoLabel}',
"previewLabel": '${previewLabel}',
"helpLabel": '${helpLabel}',
"fullscreenLabel": '${fullscreenLabel}',
"uploadFilesLabel": '${uploadFilesLabel}'
};
};
admin.init();
admin.init();
...
...
src/main/webapp/css/default-admin.css
View file @
714f52ba
...
@@ -17,7 +17,7 @@
...
@@ -17,7 +17,7 @@
* admin style
* admin style
*
*
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @version 2.
1.7.4, Apr 8
, 2017
* @version 2.
2.7.4, Apr 25
, 2017
*/
*/
/* start resset */
/* start resset */
...
@@ -163,6 +163,174 @@ a:hover {
...
@@ -163,6 +163,174 @@ a:hover {
box-shadow
:
inset
0
-1px
0
#bbb
;
box-shadow
:
inset
0
-1px
0
#bbb
;
}
}
.tooltipped
{
position
:
relative
;
cursor
:
pointer
;
}
.tooltipped
::after
{
position
:
absolute
;
z-index
:
1000000
;
display
:
none
;
padding
:
5px
8px
;
font-size
:
11px
;
font-weight
:
normal
;
-webkit-font-smoothing
:
subpixel-antialiased
;
color
:
#fff
;
text-align
:
center
;
text-decoration
:
none
;
text-shadow
:
none
;
text-transform
:
none
;
letter-spacing
:
normal
;
word-wrap
:
break-word
;
white-space
:
pre
;
pointer-events
:
none
;
content
:
attr
(
aria-label
);
background
:
rgba
(
0
,
0
,
0
,
0.8
);
border-radius
:
3px
;
line-height
:
16px
;
opacity
:
0
}
.tooltipped
::before
{
position
:
absolute
;
z-index
:
1000001
;
display
:
none
;
width
:
0
;
height
:
0
;
color
:
rgba
(
0
,
0
,
0
,
0.8
);
pointer-events
:
none
;
content
:
""
;
border
:
5px
solid
transparent
;
opacity
:
0
}
@-webkit-keyframes
tooltip-appear
{
from
{
opacity
:
0
}
to
{
opacity
:
1
}
}
@keyframes
tooltip-appear
{
from
{
opacity
:
0
}
to
{
opacity
:
1
}
}
.tooltipped-hover
::before
,
.tooltipped-hover
::after
,
.tooltipped
:hover::before
,
.tooltipped
:hover::after
,
.tooltipped
:active::before
,
.tooltipped
:active::after
,
.tooltipped
:focus::before
,
.tooltipped
:focus::after
{
display
:
inline-block
;
text-decoration
:
none
;
-webkit-animation-name
:
tooltip-appear
;
animation-name
:
tooltip-appear
;
-webkit-animation-duration
:
0.1s
;
animation-duration
:
0.1s
;
-webkit-animation-fill-mode
:
forwards
;
animation-fill-mode
:
forwards
;
-webkit-animation-timing-function
:
ease-in
;
animation-timing-function
:
ease-in
;
-webkit-animation-delay
:
0.4s
;
animation-delay
:
0.4s
}
.tooltipped-s
::after
,
.tooltipped-se
::after
,
.tooltipped-sw
::after
{
top
:
100%
;
right
:
50%
;
margin-top
:
5px
}
.tooltipped-s
::before
,
.tooltipped-se
::before
,
.tooltipped-sw
::before
{
top
:
auto
;
right
:
50%
;
bottom
:
-5px
;
margin-right
:
-5px
;
border-bottom-color
:
rgba
(
0
,
0
,
0
,
0.8
)
}
.tooltipped-se
::after
{
right
:
auto
;
left
:
50%
;
margin-left
:
-15px
}
.tooltipped-sw
::after
{
margin-right
:
-15px
}
.tooltipped-n
::after
,
.tooltipped-ne
::after
,
.tooltipped-nw
::after
{
right
:
50%
;
bottom
:
100%
;
margin-bottom
:
5px
}
.tooltipped-n
::before
,
.tooltipped-ne
::before
,
.tooltipped-nw
::before
{
top
:
-5px
;
right
:
50%
;
bottom
:
auto
;
margin-right
:
-5px
;
border-top-color
:
rgba
(
0
,
0
,
0
,
0.8
)
}
.tooltipped-ne
::after
{
right
:
auto
;
left
:
50%
;
margin-left
:
-15px
}
.tooltipped-nw
::after
{
margin-right
:
-15px
}
.tooltipped-s
::after
,
.tooltipped-n
::after
{
-webkit-transform
:
translateX
(
50%
);
transform
:
translateX
(
50%
)
}
.tooltipped-w
::after
{
right
:
100%
;
bottom
:
50%
;
margin-right
:
5px
;
-webkit-transform
:
translateY
(
50%
);
transform
:
translateY
(
50%
);
}
.tooltipped-w
::before
{
top
:
50%
;
bottom
:
50%
;
left
:
-5px
;
margin-top
:
-5px
;
border-left-color
:
rgba
(
0
,
0
,
0
,
0.8
);
}
.tooltipped-e
::after
{
bottom
:
50%
;
left
:
100%
;
margin-left
:
5px
;
-webkit-transform
:
translateY
(
50%
);
transform
:
translateY
(
50%
)
}
.tooltipped-e
::before
{
top
:
50%
;
right
:
-5px
;
bottom
:
50%
;
margin-top
:
-5px
;
border-right-color
:
rgba
(
0
,
0
,
0
,
0.8
)
}
button
,
button
,
.completed-ck
span
{
.completed-ck
span
{
...
...
src/main/webapp/js/admin/editorCodeMirror.js
View file @
714f52ba
...
@@ -18,7 +18,7 @@
...
@@ -18,7 +18,7 @@
*
*
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.4.
1.4, Jan 21
, 2017
* @version 1.4.
2.4, Apr 25
, 2017
*/
*/
Util
.
processClipBoard
=
function
(
text
,
cm
)
{
Util
.
processClipBoard
=
function
(
text
,
cm
)
{
...
@@ -224,17 +224,13 @@ admin.editors.CodeMirror = {
...
@@ -224,17 +224,13 @@ admin.editors.CodeMirror = {
toolbar
:
[
toolbar
:
[
{
name
:
'
bold
'
},
{
name
:
'
bold
'
},
{
name
:
'
italic
'
},
{
name
:
'
italic
'
},
'
|
'
,
{
name
:
'
quote
'
},
{
name
:
'
quote
'
},
{
name
:
'
link
'
},
{
name
:
'
unordered-list
'
},
{
name
:
'
unordered-list
'
},
{
name
:
'
ordered-list
'
},
{
name
:
'
ordered-list
'
},
'
|
'
,
{
name
:
'
image
'
,
html
:
'
<span style="display: inline-block;top:1px" class="tooltipped tooltipped-n" aria-label="
'
+
Label
.
uploadFilesLabel
+
'
" ><form id="
'
+
conf
.
id
+
'
fileUpload" method="POST" enctype="multipart/form-data"><label class="icon-upload"><input type="file"/></label></form></span>
'
},
{
name
:
'
link
'
},
{
name
:
'
image
'
,
html
:
'
<form id="
'
+
conf
.
id
+
'
fileUpload" method="POST" enctype="multipart/form-data"><label class="icon-upload"><input type="file"/></label></form>
'
},
'
|
'
,
{
name
:
'
redo
'
},
{
name
:
'
redo
'
},
{
name
:
'
undo
'
},
{
name
:
'
undo
'
},
'
|
'
,
{
name
:
'
preview
'
},
{
name
:
'
preview
'
},
{
name
:
'
fullscreen
'
}],
{
name
:
'
fullscreen
'
}],
extraKeys
:
{
extraKeys
:
{
...
...
src/main/webapp/js/lib/CodeMirrorEditor/codemirror.css
View file @
714f52ba
...
@@ -516,32 +516,26 @@ span.CodeMirror-selectedtext { background: none; }
...
@@ -516,32 +516,26 @@ span.CodeMirror-selectedtext { background: none; }
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
0.075
)
inset
;
box-shadow
:
0
1px
2px
rgba
(
0
,
0
,
0
,
0.075
)
inset
;
border-bottom-width
:
0
;
border-bottom-width
:
0
;
border-radius
:
3px
3px
0
0
;
border-radius
:
3px
3px
0
0
;
height
:
34px
;
}
}
.editor-toolbar
a
,
.editor-toolbar
a
,
.editor-toolbar
label
{
.editor-toolbar
label
{
display
:
inline-block
;
text-decoration
:
none
!important
;
text-align
:
center
;
text-decoration
:
none
!important
;
font-size
:
16px
;
font-size
:
16px
;
color
:
#666
;
color
:
#666
;
width
:
23px
;
padding
:
5px
10px
;
height
:
23px
;
margin
:
2px
;
border
:
1px
solid
transparent
;
border-radius
:
3px
;
cursor
:
pointer
;
cursor
:
pointer
;
line-height
:
24px
;
display
:
inline-block
;
top
:
-1px
;
}
}
.editor-toolbar
a
:hover
,
.editor-toolbar
a
.active
,
.editor-toolbar
a
:hover
,
.editor-toolbar
a
.active
,
.editor-toolbar
a
.focus
,
.editor-toolbar
label
:hover
,
.editor-toolbar
label
:hover
,
.editor-toolbar
label
.active
{
.editor-toolbar
label
.active
{
background
:
#fcfcfc
;
background
:
#666
;
border-color
:
#95a5a6
;
color
:
#fff
;
color
:
#777
;
}
.editor-toolbar
a
.active
{
color
:
#911
;
border-color
:
#911
;
}
}
.editor-toolbar
a
:before
,
.editor-toolbar
a
:before
,
...
@@ -550,19 +544,19 @@ span.CodeMirror-selectedtext { background: none; }
...
@@ -550,19 +544,19 @@ span.CodeMirror-selectedtext { background: none; }
}
}
.editor-toolbar
label
.icon-upload
{
.editor-toolbar
label
.icon-upload
{
padding
:
0
1px
;
margin
:
0
;
height
:
23px
;
position
:
relative
;
width
:
21px
;
vertical-align
:
bottom
;
float
:
none
;
}
}
.editor-toolbar
input
{
.editor-toolbar
input
{
height
:
1px
;
height
:
1px
;
margin-top
:
8px
;
position
:
absolute
;
left
:
0
;
top
:
0
;
opacity
:
0.001
;
}
}
.editor-toolbar
form
{
.editor-toolbar
form
{
display
:
inline
;
overflow
:
hidden
;
display
:
initial
;
}
}
.editor-toolbar
i
.separator
{
.editor-toolbar
i
.separator
{
display
:
inline-block
;
display
:
inline-block
;
...
...
src/main/webapp/js/lib/CodeMirrorEditor/codemirror.min.css
View file @
714f52ba
This diff is collapsed.
Click to expand it.
src/main/webapp/js/lib/CodeMirrorEditor/editor.js
View file @
714f52ba
...
@@ -1042,24 +1042,35 @@
...
@@ -1042,24 +1042,35 @@
/**
/**
* Create icon element for toolbar.
* Create icon element for toolbar.
*/
*/
function
createIcon
(
name
,
options
)
{
function
createIcon
(
options
)
{
options
=
options
||
{};
if
(
options
.
name
===
'
image
'
)
{
if
(
name
===
'
image
'
)
{
return
$
(
options
.
html
)[
0
];
return
$
(
options
.
html
)[
0
];
}
}
var
ariaLabels
=
{
bold
:
Label
.
addBoldLabel
+
'
<ctrl+b>
'
,
italic
:
Label
.
addItalicLabel
+
'
<ctrl+i>
'
,
quote
:
Label
.
insertQuoteLabel
+
'
<ctrl+e>
'
,
'
unordered-list
'
:
Label
.
addBulletedLabel
+
'
<ctrl+l>
'
,
'
ordered-list
'
:
Label
.
addNumberedListLabel
+
'
<shift+ctrl+l>
'
,
'
link
'
:
Label
.
addLinkLabel
+
'
<ctrl+k>
'
,
redo
:
Label
.
redoLabel
+
'
<shift+ctrl+z>
'
,
undo
:
Label
.
undoLabel
+
'
<ctrl+z>
'
,
preview
:
Label
.
previewLabel
+
'
<ctrl+d>
'
,
question
:
Label
.
helpLabel
,
fullscreen
:
Label
.
fullscreenLabel
+
'
<shift+ctrl+a>
'
}
var
el
=
document
.
createElement
(
'
a
'
);
var
el
=
document
.
createElement
(
'
a
'
);
var
shortcut
=
options
.
shortcut
||
shortcuts
[
name
];
var
label
=
ariaLabels
[
options
.
name
]
if
(
shortcut
)
{
if
(
isMac
)
{
shortcut
=
fixShortcut
(
shortcut
);
label
=
label
.
replace
(
'
cmd
'
,
'
⌘
'
).
replace
(
'
shift
'
,
'
⇧
'
);
el
.
title
=
shortcut
;
el
.
title
=
el
.
title
.
replace
(
'
Cmd
'
,
'
⌘
'
);
if
(
isMac
)
{
el
.
title
=
el
.
title
.
replace
(
'
Alt
'
,
'
⌥
'
);
}
}
}
el
.
className
=
options
.
className
||
'
icon-
'
+
name
;
el
.
className
=
'
tooltipped tooltipped-n
'
;
el
.
setAttribute
(
'
aria-label
'
,
label
)
el
.
innerHTML
=
"
<span class='icon-
"
+
options
.
name
+
"
'></span>
"
return
el
;
return
el
;
}
}
...
@@ -1111,8 +1122,8 @@
...
@@ -1111,8 +1122,8 @@
var
cm
=
editor
.
codemirror
,
var
cm
=
editor
.
codemirror
,
wrap
=
editor
.
codemirror
.
getWrapperElement
();
wrap
=
editor
.
codemirror
.
getWrapperElement
();
if
(
'
icon-fullscreen
'
===
editor
.
toolbar
.
fullscreen
.
className
)
{
if
(
'
icon-fullscreen
'
===
editor
.
toolbar
.
fullscreen
.
c
hildren
[
0
].
c
lassName
)
{
editor
.
toolbar
.
fullscreen
.
className
=
'
icon-contract
'
;
editor
.
toolbar
.
fullscreen
.
c
hildren
[
0
].
c
lassName
=
'
icon-contract
'
;
editor
.
toolbar
.
preview
.
style
.
display
=
'
none
'
;
editor
.
toolbar
.
preview
.
style
.
display
=
'
none
'
;
if
(
editor
.
toolbar
.
preview
.
className
.
indexOf
(
'
active
'
)
>
-
1
)
{
if
(
editor
.
toolbar
.
preview
.
className
.
indexOf
(
'
active
'
)
>
-
1
)
{
editor
.
toolbar
.
preview
.
click
();
editor
.
toolbar
.
preview
.
click
();
...
@@ -1150,7 +1161,7 @@
...
@@ -1150,7 +1161,7 @@
return
false
;
return
false
;
}
}
editor
.
toolbar
.
fullscreen
.
className
=
'
icon-fullscreen
'
;
editor
.
toolbar
.
fullscreen
.
c
hildren
[
0
].
c
lassName
=
'
icon-fullscreen
'
;
editor
.
toolbar
.
preview
.
style
.
display
=
'
inline
'
;
editor
.
toolbar
.
preview
.
style
.
display
=
'
inline
'
;
$
(
editor
.
element
.
parentElement
).
css
({
$
(
editor
.
element
.
parentElement
).
css
({
'
position
'
:
'
inherit
'
'
position
'
:
'
inherit
'
...
@@ -1543,9 +1554,7 @@
...
@@ -1543,9 +1554,7 @@
for
(
var
i
=
0
;
i
<
items
.
length
;
i
++
)
{
for
(
var
i
=
0
;
i
<
items
.
length
;
i
++
)
{
(
function
(
item
)
{
(
function
(
item
)
{
var
el
;
var
el
;
if
(
item
.
name
)
{
if
(
item
===
'
|
'
)
{
el
=
createIcon
(
item
.
name
,
item
);
}
else
if
(
item
===
'
|
'
)
{
el
=
createSep
();
el
=
createSep
();
}
else
{
}
else
{
el
=
createIcon
(
item
);
el
=
createIcon
(
item
);
...
...
src/main/webapp/js/lib/compress/admin-lib.min.js
View file @
714f52ba
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment