diff --git a/src/main/java/cc/ryanc/halo/config/properties/HaloProperties.java b/src/main/java/cc/ryanc/halo/config/properties/HaloProperties.java index 6a7a6dd2d..1f9212a84 100644 --- a/src/main/java/cc/ryanc/halo/config/properties/HaloProperties.java +++ b/src/main/java/cc/ryanc/halo/config/properties/HaloProperties.java @@ -1,5 +1,6 @@ package cc.ryanc.halo.config.properties; +import cc.ryanc.halo.model.support.HaloConst; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; @@ -12,8 +13,6 @@ import org.springframework.boot.context.properties.ConfigurationProperties; @ConfigurationProperties("halo") public class HaloProperties { - private final static String USER_HOME = System.getProperty("user.home"); - /** * Doc api disabled. (Default is true) */ @@ -32,5 +31,5 @@ public class HaloProperties { /** * Work directory. */ - private String workDir = USER_HOME + "/halo/"; + private String workDir = HaloConst.USER_HOME + "/halo/"; } diff --git a/src/main/java/cc/ryanc/halo/model/support/HaloConst.java b/src/main/java/cc/ryanc/halo/model/support/HaloConst.java index 05a2e05dd..718d88b8e 100644 --- a/src/main/java/cc/ryanc/halo/model/support/HaloConst.java +++ b/src/main/java/cc/ryanc/halo/model/support/HaloConst.java @@ -14,6 +14,10 @@ import java.util.Map; */ public class HaloConst { + /** + * User home directory. + */ + public final static String USER_HOME = System.getProperties().getProperty("user.home"); /** * Default theme name. diff --git a/src/main/java/cc/ryanc/halo/model/support/ThemeFile.java b/src/main/java/cc/ryanc/halo/model/support/ThemeFile.java index c0fd0b2f5..2d75b44d2 100644 --- a/src/main/java/cc/ryanc/halo/model/support/ThemeFile.java +++ b/src/main/java/cc/ryanc/halo/model/support/ThemeFile.java @@ -6,6 +6,8 @@ import lombok.ToString; import java.util.List; /** + * Theme file. + * * @author RYAN0UP * @date 2019/04/02 */ diff --git a/src/main/java/cc/ryanc/halo/model/vo/ArchiveMonthVO.java b/src/main/java/cc/ryanc/halo/model/vo/ArchiveMonthVO.java index 1c671b7cc..e9fd404eb 100644 --- a/src/main/java/cc/ryanc/halo/model/vo/ArchiveMonthVO.java +++ b/src/main/java/cc/ryanc/halo/model/vo/ArchiveMonthVO.java @@ -7,7 +7,7 @@ import lombok.ToString; import java.util.Comparator; /** - * Archive vo. + * Month archive vo. * * @author johnniang * @date 4/2/19 diff --git a/src/main/java/cc/ryanc/halo/model/vo/ArchiveYearVO.java b/src/main/java/cc/ryanc/halo/model/vo/ArchiveYearVO.java index 7dde75e0f..262c6bffd 100644 --- a/src/main/java/cc/ryanc/halo/model/vo/ArchiveYearVO.java +++ b/src/main/java/cc/ryanc/halo/model/vo/ArchiveYearVO.java @@ -9,7 +9,7 @@ import java.util.Comparator; import java.util.List; /** - * Archive vo. + * Year archive vo. * * @author johnniang * @date 4/2/19 diff --git a/src/main/java/cc/ryanc/halo/service/impl/ThemeServiceImpl.java b/src/main/java/cc/ryanc/halo/service/impl/ThemeServiceImpl.java index ced557b9f..507a184be 100644 --- a/src/main/java/cc/ryanc/halo/service/impl/ThemeServiceImpl.java +++ b/src/main/java/cc/ryanc/halo/service/impl/ThemeServiceImpl.java @@ -1,5 +1,6 @@ package cc.ryanc.halo.service.impl; +import cc.ryanc.halo.config.properties.HaloProperties; import cc.ryanc.halo.model.support.HaloConst; import cc.ryanc.halo.model.support.Theme; import cc.ryanc.halo.model.support.ThemeFile; @@ -24,6 +25,12 @@ import java.util.List; @Service public class ThemeServiceImpl implements ThemeService { + private final HaloProperties haloProperties; + + public ThemeServiceImpl(HaloProperties haloProperties) { + this.haloProperties = haloProperties; + } + private static String[] CAN_EDIT_SUFFIX = {"ftl", "css", "js"}; /** @@ -99,7 +106,6 @@ public class ThemeServiceImpl implements ThemeService { } catch (Exception e) { throw new RuntimeException("Failed to get theme template", e); } - templates.sort(Comparator.comparing(ThemeFile::getIsFile)); return templates; } @@ -171,7 +177,7 @@ public class ThemeServiceImpl implements ThemeService { */ @Override public File getThemeBasePath() { - return new File(System.getProperties().getProperty("user.home"), "halo/templates/themes"); + return new File(haloProperties.getWorkDir(), "templates/themes"); } /** diff --git a/src/main/java/cc/ryanc/halo/utils/HaloUtils.java b/src/main/java/cc/ryanc/halo/utils/HaloUtils.java index c8c2a500a..e974c2d68 100755 --- a/src/main/java/cc/ryanc/halo/utils/HaloUtils.java +++ b/src/main/java/cc/ryanc/halo/utils/HaloUtils.java @@ -33,7 +33,6 @@ import java.util.UUID; @Slf4j public class HaloUtils { - @NonNull public static String timeFormat(long totalSeconds) { if (totalSeconds <= 0) { diff --git a/src/main/java/cc/ryanc/halo/web/controller/admin/api/ThemeController.java b/src/main/java/cc/ryanc/halo/web/controller/admin/api/ThemeController.java index 558450f1e..a694a69ce 100644 --- a/src/main/java/cc/ryanc/halo/web/controller/admin/api/ThemeController.java +++ b/src/main/java/cc/ryanc/halo/web/controller/admin/api/ThemeController.java @@ -60,7 +60,7 @@ public class ThemeController { * * @return List */ - @GetMapping(value = "/files") + @GetMapping("files") public List listFiles() { return themeService.listThemeFolderBy(BaseContentController.THEME); } diff --git a/src/main/java/cc/ryanc/halo/web/controller/content/base/BaseContentController.java b/src/main/java/cc/ryanc/halo/web/controller/content/base/BaseContentController.java index 5644f6556..92e9dde5b 100644 --- a/src/main/java/cc/ryanc/halo/web/controller/content/base/BaseContentController.java +++ b/src/main/java/cc/ryanc/halo/web/controller/content/base/BaseContentController.java @@ -15,6 +15,7 @@ public abstract class BaseContentController { /** * Default theme */ + @Deprecated public static String THEME = DEFAULT_THEME_NAME; /**