package folioxml.export.structure;
import folioxml.core.InvalidMarkupException;
import folioxml.export.FileNode;
import folioxml.xml.XmlRecord;
/**
* Created by nathanael on 6/26/15.
*/
public class DateCollapsingSlugProvider extends SlugProvider {
public DateCollapsingSlugProvider() {
}
public DateCollapsingSlugProvider(String levelRegex) {
this.levelRegex = levelRegex;
}
@Override
protected String getHeading(XmlRecord r, FileNode f) throws InvalidMarkupException {
String heading = r.get("heading");
if (heading == null) heading = "UNTITLED";
if ("Issue".equalsIgnoreCase(r.getLevelType())) {
//then apply regex to months
heading = heading.replaceFirst("\\A\\d\\d?/\\d\\d\\s+", "").trim(); //Drop the d/m prefix
heading = heading.replaceAll("(?i)\\A.*(January|February|March|April|May|June|July|August|September|October|November|December).*\\Z", "$1"); //If present, just use the month.
}
return heading;
}
}