in app/src/main/java/org/apache/roller/weblogger/business/jpa/JPAWeblogManagerImpl.java [273:349]
private void addWeblogContents(Weblog newWeblog)
throws WebloggerException {
// grant weblog creator ADMIN permission
List<String> actions = new ArrayList<>();
actions.add(WeblogPermission.ADMIN);
roller.getUserManager().grantWeblogPermission(
newWeblog, newWeblog.getCreator(), actions);
String cats = WebloggerConfig.getProperty("newuser.categories");
WeblogCategory firstCat = null;
if (cats != null) {
String[] splitcats = cats.split(",");
for (String split : splitcats) {
if (split.isBlank()) {
continue;
}
WeblogCategory c = new WeblogCategory(
newWeblog,
split,
null,
null );
if (firstCat == null) {
firstCat = c;
}
this.strategy.store(c);
}
}
// Use first category as default for Blogger API
if (firstCat != null) {
newWeblog.setBloggerCategory(firstCat);
}
this.strategy.store(newWeblog);
// add default bookmarks
WeblogBookmarkFolder defaultFolder = new WeblogBookmarkFolder(
"default", newWeblog);
this.strategy.store(defaultFolder);
String blogroll = WebloggerConfig.getProperty("newuser.blogroll");
if (blogroll != null) {
String[] splitroll = blogroll.split(",");
for (String splitItem : splitroll) {
String[] rollitems = splitItem.split("\\|");
if (rollitems.length > 1) {
WeblogBookmark b = new WeblogBookmark(
defaultFolder,
rollitems[0],
"",
rollitems[1].trim(),
null,
null);
this.strategy.store(b);
}
}
}
roller.getMediaFileManager().createDefaultMediaFileDirectory(newWeblog);
// flush so that all data up to this point can be available in db
this.strategy.flush();
// add any auto enabled ping targets
PingTargetManager pingTargetMgr = roller.getPingTargetManager();
AutoPingManager autoPingMgr = roller.getAutopingManager();
for (PingTarget pingTarget : pingTargetMgr.getCommonPingTargets()) {
if(pingTarget.isAutoEnabled()) {
AutoPing autoPing = new AutoPing(
null, pingTarget, newWeblog);
autoPingMgr.saveAutoPing(autoPing);
}
}
}