/** * uploads File into currently selected Task. * * @param event * @throws ClassNotFoundException * @throws IOException * @throws SQLException */ @FXML private void uploadFile(ActionEvent event) throws ClassNotFoundException, IOException, SQLException { FileChooser fileChooser = new FileChooser(); fileChooser.setTitle("Open Resource File"); File file = fileChooser.showOpenDialog(mainStage).getAbsoluteFile(); // FileUtils.copyFileToDirectory(file, FileUtils.getFile(super.getPath(file.getName())), true); File selectedDir = new File(super.getPath("files")); FileUtils.copyFileToDirectory(file, new File(selectedDir.getAbsolutePath())); shl.getCurrentTab().addFile("File-" + file.getName(), file); download.setText("Upload done!"); download.setTextFill(Color.GREEN); super.saveShell(); super.saveLog( shl.getCurrentUser().getID() + " - " + shl.getCurrentUser().getName() + " - " + "UPLOADED " + file.getName()); System.out.println("File uploaded as " + file.toString()); }
/** * Creates a new account (User) * * @param event * @throws IOException * @throws ClassNotFoundException * @throws SQLException */ @FXML public void createAccount(ActionEvent event) throws IOException, ClassNotFoundException, SQLException { roles.setTextFill(Color.RED); wrongPass.setTextFill(Color.RED); duplicateID.setTextFill(Color.RED); if (super.loadShell() != null) { Shell loadShell = loadShell(); shl.setEmployees(loadShell.getEmployees()); shl.setManagers(loadShell.getManagers()); shl.setTabs(loadShell.getTabs()); shl.setUsers(loadShell.getUsers()); } loadLog(); if (!user.getText().equals("") && !password.getText().equals("") && !passconf.getText().equals("") && !name.getText().equals("") && !post.getText().equals("")) { if (shl.findUser(user.getText()) != null) { user.getStyleClass().add("error"); duplicateID.setVisible(true); System.out.printf( "[SHELL] User %s exists as %s %s\n ", user.getText(), shl.findUser(user.getText()), shl.findUser(user.getText())); } else if (password.getText().equals(passconf.getText())) { shl.createUser(user.getText(), password.getText(), post.getText(), name.getText()); System.out.printf("Created User %s\n", user.getText()); user.getStyleClass().remove("error"); password.getStyleClass().remove("error"); passconf.getStyleClass().remove("error"); roles.setVisible(false); duplicateID.setVisible(false); wrongPass.setVisible(false); super.saveShell(); super.saveLog("USER " + user.getText() + " - " + name.getText() + " HAS BEEN CREATED"); goToScreen1(event); } else { System.out.println("[SHELL] User creation failed - Passwords don't match"); password.getStyleClass().add("error"); passconf.getStyleClass().add("error"); wrongPass.setVisible(true); } } else System.out.println("[SHELL] User creation failed - Missing fields"); }
/** * It's responsible for refreshing the application's task list when the "Refresh" button is * pressed. * * @throws ClassNotFoundException * @throws SQLException * @throws IOException */ @FXML public void refreshList() throws ClassNotFoundException, SQLException, IOException { super.loadShell(); super.loadLog(); lstView.setItems(FXCollections.observableArrayList(shl.mapToSet())); // lstView.setCellFactory(ComboBoxListCell.forListView(FXCollections.observableArrayList(data))); // lstView.getSelectionModel().setSelectionMode(SelectionMode.SINGLE); lstView.setEditable(true); lstView.setOnMouseClicked( new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent event) { System.out.println("clicked on " + lstView.getSelectionModel().getSelectedItem()); shl.setCurrentTab((Task) lstView.getSelectionModel().getSelectedItem()); whatever(); taskName.setText(shl.getCurrentTab().getName()); description.setText(shl.getCurrentTaskDescription()); name.setText(shl.getCurrentTab().getAssignee()); authorname.setText(shl.getCurrentTab().getAuthor()); comment.setText(shl.getCurrentTab().getComment()); lastEditor.setText(shl.getCurrentTab().getLastEditor().getID()); status.setText(statusCheck()); statusV.setText(statusVCheck()); lastEditDate.setText(shl.getCurrentTab().getLastEditDate()); creationDate.setText(shl.getCurrentTab().getCreationDate()); verificationDate.setText(shl.getCurrentTab().getVerificationDate()); completionDate.setText(shl.getCurrentTab().getCompletionDate()); // authorname.setText(shl.getCurrentTab().getAuthor().getName()); if (shl.getCurrentTab().getFileDemo() != null) { fileLabel.setText(shl.getCurrentTab().getFileDemo().toString()); } else fileLabel.setText("No file uploaded"); if (shl.getCurrentTab().isLOCKED()) { comment.setDisable(true); } else comment.setDisable(false); /*if(shl.getCurrentTab().getStatus()==true && shl.getCurrentTab().getStatusV()==true){ set background color green }*/ } }); }
@FXML protected void statusVReject(ActionEvent event) throws ClassNotFoundException, IOException, SQLException { shl.markAsRejected(); super.saveShell(); super.saveLog( shl.getCurrentUser().getID() + " - " + shl.getCurrentUser().getName() + " - " + "REJECTED TASK " + shl.getCurrentTab().getName()); }
/** * marks the current Task as Verified by a Manager * * @param event * @throws ClassNotFoundException * @throws IOException * @throws SQLException */ @FXML private void markAsVerified(ActionEvent event) throws ClassNotFoundException, IOException, SQLException { shl.markAsVerified(); shl.getCurrentTab().setReject(false); super.saveShell(); super.saveLog( shl.getCurrentUser().getID() + " - " + shl.getCurrentUser().getName() + " - " + "MARKED TASK " + shl.getCurrentTab().getName() + " AS VERIFIED"); }
/** Method implementation of the ControlledScreen interface. @see ControlledScreen */ @Override public void setParentScreen(ScreenController parent) { try { super.loadShell(); refreshList(); } catch (ClassNotFoundException | SQLException | IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } controller = parent; }