Skip to content

Commit 481349f

Browse files
Merge pull request #4559 from getkirby/release/3.7.3
3.7.3
2 parents 368264f + 8124505 commit 481349f

File tree

17 files changed

+490
-184
lines changed

17 files changed

+490
-184
lines changed

.gitattributes

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ panel/README.md export-ignore
2323
panel/src export-ignore
2424
panel/vite.config.js export-ignore
2525
panel/vitest.setup.js export-ignore
26+
panel/jsconfig.json export-ignore
2627

2728
# other
2829
.tx export-ignore

.github/stale.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# https://github.com/probot/stale
44

55
# Number of days of inactivity before an issue becomes stale
6-
daysUntilStale: 365
6+
daysUntilStale: 180
77

88
# Number of days of inactivity before a stale issue is closed
99
daysUntilClose: 14

composer.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"description": "The Kirby 3 core",
44
"license": "proprietary",
55
"type": "kirby-cms",
6-
"version": "3.7.2.1",
6+
"version": "3.7.3",
77
"keywords": [
88
"kirby",
99
"cms",

composer.lock

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

config/sections/mixins/layout.php

+10-6
Original file line numberDiff line numberDiff line change
@@ -96,22 +96,26 @@
9696
'methods' => [
9797
'columnsValues' => function (array $item, $model) {
9898
$item['title'] = [
99-
'text' => $item['text'],
99+
// override toSafeString() coming from `$item`
100+
// because the table cells don't use v-html
101+
'text' => $model->toString($this->text),
100102
'href' => $model->panel()->url(true)
101103
];
102104

105+
if ($this->info) {
106+
// override toSafeString() coming from `$item`
107+
// because the table cells don't use v-html
108+
$item['info'] = $model->toString($this->info);
109+
}
110+
103111
foreach ($this->columns as $columnName => $column) {
104112
// don't overwrite essential columns
105113
if (isset($item[$columnName]) === true) {
106114
continue;
107115
}
108116

109117
if (empty($column['value']) === false) {
110-
if ($column['type'] ?? false === 'html') {
111-
$value = $model->toString($column['value']);
112-
} else {
113-
$value = $model->toSafeString($column['value']);
114-
}
118+
$value = $model->toString($column['value']);
115119
} else {
116120
$value = $model->content()->get($column['id'] ?? $columnName)->value();
117121
}

i18n/translations/ko.json

+19-19
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
"days.tue": "\ud654",
3030
"days.wed": "\uc218",
3131

32-
"debugging": "디버깅",
32+
"debugging": "디버그",
3333

3434
"delete": "\uc0ad\uc81c",
3535
"delete.all": "모두 삭제",
@@ -49,8 +49,8 @@
4949
"email": "\uc774\uba54\uc77c \uc8fc\uc18c",
5050
"email.placeholder": "[email protected]",
5151

52-
"entries": "Entries",
53-
"entry": "Entry",
52+
"entries": "항목",
53+
"entry": "항목",
5454

5555
"environment": "구동 환경",
5656

@@ -297,7 +297,7 @@
297297
"hide": "숨기기",
298298
"hour": "",
299299
"import": "가져오기",
300-
"info": "Info",
300+
"info": "정보",
301301
"insert": "\uc0bd\uc785",
302302
"insert.after": "뒤에 삽입",
303303
"insert.before": "앞에 삽입",
@@ -306,15 +306,15 @@
306306
"installation": "설치",
307307
"installation.completed": "패널을 설치했습니다.",
308308
"installation.disabled": "패널 설치 관리자는 로컬 서버에서 실행하거나 <code>panel.install</code> 옵션을 설정하세요.",
309-
"installation.issues.accounts": "폴더(<code>/site/accounts</code>)에 쓰기 권한이 없습니다.",
310-
"installation.issues.content": "폴더(<code>/content</code>)에 쓰기 권한이 없습니다.",
309+
"installation.issues.accounts": "<code>/site/accounts</code> 폴더의 쓰기 권한을 확인하세요.",
310+
"installation.issues.content": "<code>/content</code> 폴더의 쓰기 권한을 확인하세요.",
311311
"installation.issues.curl": "<code>cURL</code> 확장 모듈이 필요합니다.",
312312
"installation.issues.headline": "패널을 설치할 수 없습니다.",
313313
"installation.issues.mbstring": "<code>MB String</code> 확장 모듈이 필요합니다.",
314-
"installation.issues.media": "폴더(<code>/media</code>)에 쓰기 권한이 없습니다.",
314+
"installation.issues.media": "<code>/media</code> 폴더의 쓰기 권한을 확인하세요.",
315315
"installation.issues.php": "<code>PHP</code> 버전이 7 이상인지 확인하세요.",
316316
"installation.issues.server": "Kirby를 실행하려면 <code>Apache</code>, <code>Nginx</code>, 또는 <code>Caddy</code>가 필요합니다.",
317-
"installation.issues.sessions": "폴더(<code>/site/sessions</code>)에 쓰기 권한이 없습니다.",
317+
"installation.issues.sessions": "<code>/site/sessions</code> 폴더의 쓰기 권한을 확인하세요.",
318318

319319
"language": "\uc5b8\uc5b4",
320320
"language.code": "언어 코드",
@@ -327,7 +327,7 @@
327327
"language.direction.ltr": "왼쪽에서 오른쪽",
328328
"language.direction.rtl": "오른쪽에서 왼쪽",
329329
"language.locale": "PHP 로캘 문자열",
330-
"language.locale.warning": "사용자 지정 로캘을 사용 중입니다. 폴더(<code>/site/languages</code>)의 언어 파일을 수정하세요.",
330+
"language.locale.warning": "사용자 지정 로캘을 사용 중입니다. <code>/site/languages</code> 폴더의 언어 파일을 수정하세요.",
331331
"language.name": "언어명",
332332
"language.updated": "언어를 변경했습니다.",
333333

@@ -340,12 +340,12 @@
340340
"license": "라이선스",
341341
"license.buy": "라이선스 구매",
342342
"license.register": "등록",
343-
"license.manage": "Manage your licenses",
343+
"license.manage": "라이선스 관리",
344344
"license.register.help": "Kirby를 등록하려면 이메일로 전송받은 라이선스 코드와 이메일 주소를 입력하세요.",
345345
"license.register.label": "라이선스 코드를 입력하세요.",
346346
"license.register.success": "Kirby와 함께해주셔서 감사합니다.",
347347
"license.unregistered": "Kirby가 등록되지 않았습니다.",
348-
"license.unregistered.label": "Unregistered",
348+
"license.unregistered.label": "Kirby가 등록되지 않았습니다.",
349349

350350
"link": "\uc77c\ubc18 \ub9c1\ud06c",
351351
"link.text": "\ubb38\uc790",
@@ -475,7 +475,7 @@
475475

476476
"section.required": "섹션이 필요합니다.",
477477

478-
"security": "Security",
478+
"security": "보안",
479479
"select": "선택",
480480
"server": "서버",
481481
"settings": "설정",
@@ -485,13 +485,13 @@
485485
"slug": "고유 주소",
486486
"sort": "정렬",
487487

488-
"stats.empty": "No reports",
489-
"system.issues.content": "The content folder seems to be exposed",
490-
"system.issues.debug": "최종 결과물에서는 디버깅 모드를 해제하세요.",
491-
"system.issues.git": "The .git folder seems to be exposed",
492-
"system.issues.https": "모든 사이트에 HTTPS를 권장합니다.",
493-
"system.issues.kirby": "The kirby folder seems to be exposed",
494-
"system.issues.site": "The site folder seems to be exposed",
488+
"stats.empty": "관련 기록이 없습니다.",
489+
"system.issues.content": "<code>/content</code> 폴더의 권한을 확인하세요.",
490+
"system.issues.debug": "공개 서버상에서는 디버그 모드를 해제하세요.",
491+
"system.issues.git": "<code>/.git</code> 폴더의 권한을 확인하세요.",
492+
"system.issues.https": "HTTPS를 권장합니다.",
493+
"system.issues.kirby": "<code>/kirby</code> 폴더의 권한을 확인하세요.",
494+
"system.issues.site": "<code>/site</code> 폴더의 권한을 확인하세요.",
495495

496496
"title": "제목",
497497
"template": "\ud15c\ud50c\ub9bf",

panel/dist/css/style.css

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

panel/dist/js/index.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

panel/jsconfig.json

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"compilerOptions": {
3+
"baseUrl": ".",
4+
"paths": {
5+
"@/*": [
6+
"./src/*"
7+
]
8+
}
9+
}
10+
}

panel/src/components/Dialogs/PagesDialog.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
<template #options="{ item: page }">
3535
<k-button v-bind="toggleBtn(page)" @click="toggle(page)" />
3636
<k-button
37-
v-if="page"
37+
v-if="model"
3838
:disabled="!page.hasChildren"
3939
:tooltip="$t('open')"
4040
icon="angle-right"

panel/src/components/Layout/Panel.vue

+17-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
:data-role="role"
88
:data-translation="$translation.code"
99
:data-user="user"
10-
:dir="$translation.direction"
10+
:dir="dir"
1111
class="k-panel"
1212
>
1313
<slot />
@@ -37,6 +37,9 @@ export default {
3737
dialog() {
3838
return this.$helper.clone(this.$store.state.dialog);
3939
},
40+
dir() {
41+
return this.$translation.direction;
42+
},
4043
language() {
4144
return this.$language ? this.$language.code : null;
4245
},
@@ -47,6 +50,19 @@ export default {
4750
return this.$user ? this.$user.id : null;
4851
}
4952
},
53+
watch: {
54+
dir: {
55+
handler() {
56+
/**
57+
* Some elements – i.e. drag ghosts -
58+
* are injected into the body and not the panel div.
59+
* They need the dir to be displayed correctly
60+
*/
61+
document.body.dir = this.dir;
62+
},
63+
immediate: true
64+
}
65+
},
5066
created() {
5167
this.$events.$on("drop", this.drop);
5268
},

panel/src/components/Navigation/Breadcrumb.vue

+3
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,9 @@ export default {
126126
.k-breadcrumb-icon {
127127
margin-inline-end: 0.5rem;
128128
}
129+
.k-breadcrumb-icon.k-loader {
130+
opacity: 0.5;
131+
}
129132
.k-breadcrumb-link-text {
130133
white-space: nowrap;
131134
overflow: hidden;

src/Cms/HasChildren.php

+15-3
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,25 @@ trait HasChildren
1919
/**
2020
* The list of available published children
2121
*
22-
* @var \Kirby\Cms\Pages
22+
* @var \Kirby\Cms\Pages|null
2323
*/
2424
public $children;
2525

2626
/**
2727
* The list of available draft children
2828
*
29-
* @var \Kirby\Cms\Pages
29+
* @var \Kirby\Cms\Pages|null
3030
*/
3131
public $drafts;
3232

33+
/**
34+
* The combined list of available published
35+
* and draft children
36+
*
37+
* @var \Kirby\Cms\Pages|null
38+
*/
39+
public $childrenAndDrafts;
40+
3341
/**
3442
* Returns all published children
3543
*
@@ -51,7 +59,11 @@ public function children()
5159
*/
5260
public function childrenAndDrafts()
5361
{
54-
return $this->children()->merge($this->drafts());
62+
if (is_a($this->childrenAndDrafts, 'Kirby\Cms\Pages') === true) {
63+
return $this->childrenAndDrafts;
64+
}
65+
66+
return $this->childrenAndDrafts = $this->children()->merge($this->drafts());
5567
}
5668

5769
/**

0 commit comments

Comments
 (0)