parent
88ab70117e
commit
cab1ee9b6e
@ -0,0 +1,35 @@ |
|||||||
|
package org.libresonic.player.controller; |
||||||
|
|
||||||
|
import org.apache.commons.lang.ObjectUtils; |
||||||
|
import org.libresonic.player.service.SettingsService; |
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest; |
||||||
|
|
||||||
|
/** |
||||||
|
* This class has been created to refactor code previously present |
||||||
|
* in the MultiController. |
||||||
|
*/ |
||||||
|
public class ControllerUtils { |
||||||
|
|
||||||
|
public static void updatePortAndContextPath(HttpServletRequest request, SettingsService settingsService) { |
||||||
|
|
||||||
|
int port = Integer.parseInt(System.getProperty("libresonic.port", String.valueOf(request.getLocalPort()))); |
||||||
|
int httpsPort = Integer.parseInt(System.getProperty("libresonic.httpsPort", "0")); |
||||||
|
|
||||||
|
String contextPath = request.getContextPath().replace("/", ""); |
||||||
|
|
||||||
|
if (settingsService.getPort() != port) { |
||||||
|
settingsService.setPort(port); |
||||||
|
settingsService.save(); |
||||||
|
} |
||||||
|
if (settingsService.getHttpsPort() != httpsPort) { |
||||||
|
settingsService.setHttpsPort(httpsPort); |
||||||
|
settingsService.save(); |
||||||
|
} |
||||||
|
if (!ObjectUtils.equals(settingsService.getUrlRedirectContextPath(), contextPath)) { |
||||||
|
settingsService.setUrlRedirectContextPath(contextPath); |
||||||
|
settingsService.save(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
@ -0,0 +1,50 @@ |
|||||||
|
package org.libresonic.player.controller; |
||||||
|
|
||||||
|
import org.libresonic.player.Logger; |
||||||
|
import org.libresonic.player.domain.User; |
||||||
|
import org.libresonic.player.domain.UserSettings; |
||||||
|
import org.libresonic.player.service.SecurityService; |
||||||
|
import org.libresonic.player.service.SettingsService; |
||||||
|
import org.libresonic.player.util.StringUtil; |
||||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||||
|
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; |
||||||
|
import org.springframework.stereotype.Controller; |
||||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||||
|
import org.springframework.web.bind.annotation.RequestMethod; |
||||||
|
import org.springframework.web.servlet.ModelAndView; |
||||||
|
import org.springframework.web.servlet.view.RedirectView; |
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest; |
||||||
|
import javax.servlet.http.HttpServletResponse; |
||||||
|
import java.util.HashMap; |
||||||
|
import java.util.Map; |
||||||
|
|
||||||
|
@Controller |
||||||
|
@RequestMapping("/index") |
||||||
|
public class IndexController { |
||||||
|
|
||||||
|
|
||||||
|
private static final Logger LOG = Logger.getLogger(IndexController.class); |
||||||
|
|
||||||
|
@Autowired |
||||||
|
private SecurityService securityService; |
||||||
|
@Autowired |
||||||
|
private SettingsService settingsService; |
||||||
|
|
||||||
|
@RequestMapping(method = { RequestMethod.GET}) |
||||||
|
public ModelAndView index(HttpServletRequest request) { |
||||||
|
ControllerUtils.updatePortAndContextPath(request,settingsService); |
||||||
|
UserSettings userSettings = settingsService.getUserSettings(securityService.getCurrentUsername(request)); |
||||||
|
|
||||||
|
Map<String, Object> map = new HashMap<String, Object>(); |
||||||
|
map.put("showRight", userSettings.isShowNowPlayingEnabled() || userSettings.isShowChatEnabled()); |
||||||
|
map.put("autoHidePlayQueue", userSettings.isAutoHidePlayQueue()); |
||||||
|
map.put("listReloadDelay", userSettings.getListReloadDelay()); |
||||||
|
map.put("keyboardShortcutsEnabled", userSettings.isKeyboardShortcutsEnabled()); |
||||||
|
map.put("showSideBar", userSettings.isShowSideBar()); |
||||||
|
map.put("brand", settingsService.getBrand()); |
||||||
|
return new ModelAndView("index", "model", map); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
} |
Loading…
Reference in new issue