release 0.8.0 #12
| @ -161,6 +161,7 @@ public class DBController { | ||||
| 				String path = source.asObject().getString("path", ""); | ||||
| 				String mode = source.asObject().getString("mode", ""); | ||||
| 				mainWindowController.addSourceToTable(path, mode); // add source to source-table | ||||
| 				 | ||||
| 				if (mode.equals("local")) { | ||||
| 					for (File file : new File(path).listFiles()) { | ||||
| 						if (file.isFile() && isVideoFile(file.getPath())) { | ||||
| @ -350,11 +351,11 @@ public class DBController { | ||||
| 						int sn = 1; | ||||
| 						for (File season : file.listFiles()) { | ||||
| 							if (season.isDirectory()) { | ||||
| 								int ep = 1; | ||||
| 								int ep = getLastEpisode(cutOffEnd(file.getName()), Integer.toString(sn)) + 1; | ||||
| 								for (File episode : season.listFiles()) { | ||||
| 									if (!filmsdbStreamURL.contains(episode.getPath())) {		 | ||||
| 										ps.setString(1, episode.getPath().replace("'", "''")); | ||||
| 										ps.setString(2, cutOffEnd(file.getName())); | ||||
| 										ps.setString(2, cutOffEnd(file.getName())); // the title is the series root folder's name | ||||
| 										ps.setString(3, Integer.toString(sn)); | ||||
| 										ps.setString(4, Integer.toString(ep)); | ||||
| 										ps.setInt(5, 0); | ||||
| @ -406,6 +407,34 @@ public class DBController { | ||||
| 		} | ||||
| 	} | ||||
| 	 | ||||
| 	/** | ||||
| 	 * gets the last episode of a season of a given series | ||||
| 	 * @param seriesTitle the actual series | ||||
| 	 * @param season      the actual season | ||||
| 	 * @return the last episode number | ||||
| 	 */ | ||||
| 	private int getLastEpisode(String seriesTitle, String season) { | ||||
| 		int lastEpisode = 0; | ||||
| 		try { | ||||
| 			Statement stmt = connection.createStatement(); | ||||
| 			PreparedStatement ps = connection.prepareStatement("SELECT * FROM films WHERE title = ? AND season = ?"); | ||||
| 			ps.setString(1, seriesTitle); | ||||
| 			ps.setString(2, season); | ||||
| 			ResultSet rs = ps.executeQuery(); | ||||
|  | ||||
| 			while (rs.next()) { | ||||
| 				if (Integer.parseInt(rs.getString("episode")) > lastEpisode) | ||||
| 					lastEpisode = Integer.parseInt(rs.getString("episode")); | ||||
| 			} | ||||
| 			stmt.close(); | ||||
| 			rs.close(); | ||||
| 		} catch (SQLException e) { | ||||
| 			LOGGER.error("An error occured, while printing all entries", e); | ||||
| 		} | ||||
|  | ||||
| 		return lastEpisode; | ||||
| 	} | ||||
| 	 | ||||
| 	/** | ||||
| 	 * DEBUG | ||||
| 	 * prints all entries from the database to the console | ||||
|  | ||||
		Reference in New Issue
	
	Block a user