Merge pull request #3215 from millmanorama/CVT-prevent-invalid-date-ranges

CVT prevent invalid date ranges
This commit is contained in:
Richard Cordovano 2017-11-17 19:01:07 -05:00 committed by GitHub
commit d1f112c3f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 42 additions and 33 deletions

View File

@ -333,7 +333,7 @@
</DimensionLayout> </DimensionLayout>
</Layout> </Layout>
<SubComponents> <SubComponents>
<Component class="com.github.lgooddatepicker.datepicker.DatePicker" name="startDatePicker"> <Component class="com.github.lgooddatepicker.components.DatePicker" name="startDatePicker">
<Properties> <Properties>
<Property name="enabled" type="boolean" value="false"/> <Property name="enabled" type="boolean" value="false"/>
</Properties> </Properties>
@ -368,7 +368,7 @@
<EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="endCheckBoxStateChanged"/> <EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="endCheckBoxStateChanged"/>
</Events> </Events>
</Component> </Component>
<Component class="com.github.lgooddatepicker.datepicker.DatePicker" name="endDatePicker"> <Component class="com.github.lgooddatepicker.components.DatePicker" name="endDatePicker">
<Properties> <Properties>
<Property name="enabled" type="boolean" value="false"/> <Property name="enabled" type="boolean" value="false"/>
</Properties> </Properties>

View File

@ -62,6 +62,17 @@ final public class FiltersPanel extends javax.swing.JPanel {
initComponents(); initComponents();
startDatePicker.setDate(LocalDate.now().minusWeeks(3)); startDatePicker.setDate(LocalDate.now().minusWeeks(3));
endDatePicker.setDateToToday(); endDatePicker.setDateToToday();
startDatePicker.getSettings().setVetoPolicy(
//no end date, or start is before end
startDate -> endCheckBox.isSelected() == false
|| startDate.compareTo(endDatePicker.getDate()) <= 0
);
endDatePicker.getSettings().setVetoPolicy(
//no start date, or end is after start
endDate -> startCheckBox.isSelected() == false
|| endDate.compareTo(startDatePicker.getDate()) >= 0
);
updateAndApplyFilters(); updateAndApplyFilters();
} }
@ -98,8 +109,7 @@ final public class FiltersPanel extends javax.swing.JPanel {
//final CommunicationsManager communicationsManager = Case.getCurrentCase().getSleuthkitCase().getCommunicationsManager(); //final CommunicationsManager communicationsManager = Case.getCurrentCase().getSleuthkitCase().getCommunicationsManager();
//List<Account.Type> accountTypesInUse = communicationsManager.getAccountTypesInUse(); //List<Account.Type> accountTypesInUse = communicationsManager.getAccountTypesInUse();
//accountTypesInUSe.forEach(...) //accountTypesInUSe.forEach(...)
Account.Type.PREDEFINED_ACCOUNT_TYPES.forEach( Account.Type.PREDEFINED_ACCOUNT_TYPES.forEach(type -> {
type -> {
if (type.equals(Account.Type.CREDIT_CARD)) { if (type.equals(Account.Type.CREDIT_CARD)) {
//don't show a check box for credit cards //don't show a check box for credit cards
} else if (type.equals(Account.Type.DEVICE)) { } else if (type.equals(Account.Type.DEVICE)) {
@ -489,7 +499,7 @@ final public class FiltersPanel extends javax.swing.JPanel {
private final javax.swing.JLabel devicesLabel = new javax.swing.JLabel(); private final javax.swing.JLabel devicesLabel = new javax.swing.JLabel();
private final javax.swing.JPanel devicesPane = new javax.swing.JPanel(); private final javax.swing.JPanel devicesPane = new javax.swing.JPanel();
private final javax.swing.JCheckBox endCheckBox = new javax.swing.JCheckBox(); private final javax.swing.JCheckBox endCheckBox = new javax.swing.JCheckBox();
private final com.github.lgooddatepicker.datepicker.DatePicker endDatePicker = new com.github.lgooddatepicker.datepicker.DatePicker(); private final com.github.lgooddatepicker.components.DatePicker endDatePicker = new com.github.lgooddatepicker.components.DatePicker();
private final javax.swing.JLabel filtersTitleLabel = new javax.swing.JLabel(); private final javax.swing.JLabel filtersTitleLabel = new javax.swing.JLabel();
private final javax.swing.JList<String> jList1 = new javax.swing.JList<>(); private final javax.swing.JList<String> jList1 = new javax.swing.JList<>();
private final javax.swing.JPanel jPanel2 = new javax.swing.JPanel(); private final javax.swing.JPanel jPanel2 = new javax.swing.JPanel();
@ -497,7 +507,7 @@ final public class FiltersPanel extends javax.swing.JPanel {
private final javax.swing.JPanel jPanel4 = new javax.swing.JPanel(); private final javax.swing.JPanel jPanel4 = new javax.swing.JPanel();
private final javax.swing.JScrollPane jScrollPane1 = new javax.swing.JScrollPane(); private final javax.swing.JScrollPane jScrollPane1 = new javax.swing.JScrollPane();
private final javax.swing.JCheckBox startCheckBox = new javax.swing.JCheckBox(); private final javax.swing.JCheckBox startCheckBox = new javax.swing.JCheckBox();
private final com.github.lgooddatepicker.datepicker.DatePicker startDatePicker = new com.github.lgooddatepicker.datepicker.DatePicker(); private final com.github.lgooddatepicker.components.DatePicker startDatePicker = new com.github.lgooddatepicker.components.DatePicker();
private final javax.swing.JButton unCheckAllAccountTypesButton = new javax.swing.JButton(); private final javax.swing.JButton unCheckAllAccountTypesButton = new javax.swing.JButton();
private final javax.swing.JButton unCheckAllDevicesButton = new javax.swing.JButton(); private final javax.swing.JButton unCheckAllDevicesButton = new javax.swing.JButton();
// End of variables declaration//GEN-END:variables // End of variables declaration//GEN-END:variables

View File

@ -14,7 +14,7 @@
<!-- for file search --> <!-- for file search -->
<dependency conf="autopsy_core->*" org="org.jbundle.thin.base.screen" name="jcalendarbutton" rev="1.4.6"/> <dependency conf="autopsy_core->*" org="org.jbundle.thin.base.screen" name="jcalendarbutton" rev="1.4.6"/>
<dependency conf="autopsy_core->*" org="com.github.lgooddatepicker" name="LGoodDatePicker" rev="4.3.1"/> <dependency conf="autopsy_core->*" org="com.github.lgooddatepicker" name="LGoodDatePicker" rev="10.3.1"/>
<!-- commmon --> <!-- commmon -->
<dependency org="com.google.guava" name="guava" rev="19.0"/> <dependency org="com.google.guava" name="guava" rev="19.0"/>

View File

@ -53,7 +53,7 @@ file.reference.joda-time-2.4-javadoc.jar=release/modules/ext/joda-time-2.4-javad
file.reference.joda-time-2.4-sources.jar=release/modules/ext/joda-time-2.4-sources.jar file.reference.joda-time-2.4-sources.jar=release/modules/ext/joda-time-2.4-sources.jar
file.reference.joda-time-2.4.jar=release/modules/ext/joda-time-2.4.jar file.reference.joda-time-2.4.jar=release/modules/ext/joda-time-2.4.jar
file.reference.jsr305-1.3.9.jar=release/modules/ext/jsr305-1.3.9.jar file.reference.jsr305-1.3.9.jar=release/modules/ext/jsr305-1.3.9.jar
file.reference.LGoodDatePicker-4.3.1.jar=release/modules/ext/LGoodDatePicker-4.3.1.jar file.reference.LGoodDatePicker-4.3.1.jar=release/modules/ext/LGoodDatePicker-10.3.1.jar
file.reference.log4j-1.2.17.jar=release/modules/ext/log4j-1.2.17.jar file.reference.log4j-1.2.17.jar=release/modules/ext/log4j-1.2.17.jar
file.reference.logkit-1.0.1.jar=release/modules/ext/logkit-1.0.1.jar file.reference.logkit-1.0.1.jar=release/modules/ext/logkit-1.0.1.jar
file.reference.mail-1.4.3.jar=release/modules/ext/mail-1.4.3.jar file.reference.mail-1.4.3.jar=release/modules/ext/mail-1.4.3.jar
@ -83,7 +83,7 @@ javadoc.reference.guava-19.0.jar=release/modules/ext/guava-19.0-javadoc.jar
javadoc.reference.jfxtras-common-8.0-r4.jar=release/modules/ext/jfxtras-common-8.0-r4-javadoc.jar javadoc.reference.jfxtras-common-8.0-r4.jar=release/modules/ext/jfxtras-common-8.0-r4-javadoc.jar
javadoc.reference.jfxtras-controls-8.0-r4.jar=release/modules/ext/jfxtras-controls-8.0-r4-javadoc.jar javadoc.reference.jfxtras-controls-8.0-r4.jar=release/modules/ext/jfxtras-controls-8.0-r4-javadoc.jar
javadoc.reference.jfxtras-fxml-8.0-r4.jar=release/modules/ext/jfxtras-fxml-8.0-r4-javadoc.jar javadoc.reference.jfxtras-fxml-8.0-r4.jar=release/modules/ext/jfxtras-fxml-8.0-r4-javadoc.jar
javadoc.reference.LGoodDatePicker-4.3.1.jar=release/modules/ext/LGoodDatePicker-4.3.1-javadoc.jar javadoc.reference.LGoodDatePicker-4.3.1.jar=release/modules/ext/LGoodDatePicker-10.3.1-javadoc.jar
nbm.needs.restart=true nbm.needs.restart=true
source.reference.commons-csv-1.4.jar=release/modules/ext/commons-csv-1.4-sources.jar source.reference.commons-csv-1.4.jar=release/modules/ext/commons-csv-1.4-sources.jar
source.reference.commons-io-2.5.jar=release/modules/ext/commons-io-2.5-sources.jar source.reference.commons-io-2.5.jar=release/modules/ext/commons-io-2.5-sources.jar
@ -93,4 +93,4 @@ source.reference.guava-19.0.jar=release/modules/ext/guava-19.0-sources.jar
source.reference.jfxtras-common-8.0-r4.jar=release/modules/ext/jfxtras-common-8.0-r4-sources.jar source.reference.jfxtras-common-8.0-r4.jar=release/modules/ext/jfxtras-common-8.0-r4-sources.jar
source.reference.jfxtras-controls-8.0-r4.jar=release/modules/ext/jfxtras-controls-8.0-r4-sources.jar source.reference.jfxtras-controls-8.0-r4.jar=release/modules/ext/jfxtras-controls-8.0-r4-sources.jar
source.reference.jfxtras-fxml-8.0-r4.jar=release/modules/ext/jfxtras-fxml-8.0-r4-sources.jar source.reference.jfxtras-fxml-8.0-r4.jar=release/modules/ext/jfxtras-fxml-8.0-r4-sources.jar
source.reference.LGoodDatePicker-4.3.1.jar=release/modules/ext/LGoodDatePicker-4.3.1-sources.jar source.reference.LGoodDatePicker-4.3.1.jar=release/modules/ext/LGoodDatePicker-10.3.1-sources.jar

View File

@ -37,9 +37,8 @@
<package>com.apple.eawt</package> <package>com.apple.eawt</package>
<package>com.apple.eawt.event</package> <package>com.apple.eawt.event</package>
<package>com.apple.eio</package> <package>com.apple.eio</package>
<package>com.github.lgooddatepicker.datepicker</package> <package>com.github.lgooddatepicker.components</package>
<package>com.github.lgooddatepicker.datetimepicker</package> <package>com.github.lgooddatepicker.optionalusertools</package>
<package>com.github.lgooddatepicker.timepicker</package>
<package>com.github.lgooddatepicker.zinternaltools</package> <package>com.github.lgooddatepicker.zinternaltools</package>
<package>com.github.mustachejava</package> <package>com.github.mustachejava</package>
<package>com.github.mustachejava.codes</package> <package>com.github.mustachejava.codes</package>
@ -728,8 +727,8 @@
<binary-origin>release/modules/ext/imgscalr-lib-4.2.jar</binary-origin> <binary-origin>release/modules/ext/imgscalr-lib-4.2.jar</binary-origin>
</class-path-extension> </class-path-extension>
<class-path-extension> <class-path-extension>
<runtime-relative-path>ext/LGoodDatePicker-4.3.1.jar</runtime-relative-path> <runtime-relative-path>ext/LGoodDatePicker-10.3.1.jar</runtime-relative-path>
<binary-origin>release/modules/ext/LGoodDatePicker-4.3.1.jar</binary-origin> <binary-origin>release/modules/ext/LGoodDatePicker-10.3.1.jar</binary-origin>
</class-path-extension> </class-path-extension>
<class-path-extension> <class-path-extension>
<runtime-relative-path>ext/xmlbeans-2.6.0.jar</runtime-relative-path> <runtime-relative-path>ext/xmlbeans-2.6.0.jar</runtime-relative-path>