private void setUsersPreferences() {
   UserPreferencesHelper userPrefsHelper = getUserPrefenceHelper();
   showSidePanel =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SHOW_SIDE_PANEL, true);
   invertImage =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_INVERT_IMAGE, false);
   showAnnotations =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SHOW_ANNOTATIONS, true);
   highlightDataFieldsEnabled =
       userPrefsHelper.getBoolean(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_HIGHLIGHT_DATA_FIELDS_ENABLED, true);
   datanameInTargetIncluded =
       userPrefsHelper.getBoolean(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_DATANAME_IN_TARGET_INCLUDED, true);
   magnifyFields =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_MAGNIFY_FIELDS, false);
   boldSelected =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_BOLD_SELECTED, false);
   italicSelected =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_ITALIC_SELECTED, false);
   underlineSelected =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_UNDERLINE_SELECTED, false);
   selectedNoteFontSize =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_NOTE_FONT_SIZE, DEFAULT_NOTE_FONT_SIZE);
   stickyNoteColour =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_STICKY_NOTE_COLOUR, "yellow");
   highlighterColour =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_HIGHLIGHTER_COLOUR, "#FF0000");
   dataFieldHighlightColour =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG,
           F_IMAGE_VIEWER_SELECTED_DATA_FIELD_HIGHLIGHTER_COLOUR,
           "#FF0000");
   dataFieldHighlightOpacity =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_DATA_FIELD_HIGHLIGHTER_OPACITY, "0.5");
   selectedDisplayZoomLevel =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_DISPLAY_ZOOM_LIVEL, "FIT_TO_WINDOW");
   enableExtractPage =
       userPrefsHelper.getBoolean(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_ENABLE_EXTRACT_PAGES, true);
   allowDeleteFromOriginal =
       userPrefsHelper.getBoolean(V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_ENABLE_PAGE_DELETE, true);
   docPriorVersionAction =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG,
           F_IMAGE_VIEWER_SELECTED_DOC_PRIOR_VERSION_ACTION,
           RETAIN_PRIOR_DOCUMENT_VERSIONS);
   spawnProcessType =
       userPrefsHelper.getSingleString(
           V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SPAWN_PROCESS_TYPE, SUB_PROCESS_TYPE);
   ImageViewerStampsBean.getCurrent()
       .setSelectedStampId(
           userPrefsHelper.getSingleString(
               V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_STAMP, ""));
 }
 public String getSelectedStamp() {
   return ImageViewerStampsBean.getCurrent().getSelectedStampId();
 }
 /** @param event */
 public void openStampsDialog(ActionEvent event) {
   ImageViewerStampsBean.getCurrent().openPopup();
 }
 /** @param event */
 public void closeStampsDialog(ActionEvent event) {
   ImageViewerStampsBean.getCurrent().closePopup();
 }
  public void save() {
    UserPreferencesHelper userPrefsHelper = getUserPrefenceHelper();
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SHOW_SIDE_PANEL, String.valueOf(showSidePanel));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_INVERT_IMAGE, String.valueOf(invertImage));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SHOW_ANNOTATIONS, String.valueOf(showAnnotations));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG,
        F_IMAGE_VIEWER_HIGHLIGHT_DATA_FIELDS_ENABLED,
        String.valueOf(highlightDataFieldsEnabled));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG,
        F_IMAGE_VIEWER_DATANAME_IN_TARGET_INCLUDED,
        String.valueOf(datanameInTargetIncluded));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_MAGNIFY_FIELDS, String.valueOf(magnifyFields));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_BOLD_SELECTED, String.valueOf(boldSelected));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_ITALIC_SELECTED, String.valueOf(italicSelected));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG,
        F_IMAGE_VIEWER_UNDERLINE_SELECTED,
        String.valueOf(underlineSelected));
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_NOTE_FONT_SIZE, selectedNoteFontSize);
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_STICKY_NOTE_COLOUR, stickyNoteColour);
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SELECTED_HIGHLIGHTER_COLOUR, highlighterColour);
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG,
        F_IMAGE_VIEWER_SELECTED_DATA_FIELD_HIGHLIGHTER_COLOUR,
        dataFieldHighlightColour);

    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG,
        F_IMAGE_VIEWER_SELECTED_DATA_FIELD_HIGHLIGHTER_OPACITY,
        dataFieldHighlightOpacity);
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG,
        F_IMAGE_VIEWER_SELECTED_DISPLAY_ZOOM_LIVEL,
        selectedDisplayZoomLevel);
    userPrefsHelper.setString(
        V_IMAGE_VIEWER_CONFIG,
        F_IMAGE_VIEWER_SELECTED_STAMP,
        ImageViewerStampsBean.getCurrent().getSelectedStampId());

    // non-admin user can't change values
    if (SessionContext.findSessionContext().getUser().isAdministrator()) {
      userPrefsHelper.setString(
          V_IMAGE_VIEWER_CONFIG,
          F_IMAGE_VIEWER_ENABLE_EXTRACT_PAGES,
          String.valueOf(enableExtractPage));
      allowDeleteFromOriginal = enableExtractPage && allowDeleteFromOriginal;
      userPrefsHelper.setString(
          V_IMAGE_VIEWER_CONFIG,
          F_IMAGE_VIEWER_ENABLE_PAGE_DELETE,
          String.valueOf(allowDeleteFromOriginal));
      userPrefsHelper.setString(
          V_IMAGE_VIEWER_CONFIG,
          F_IMAGE_VIEWER_SELECTED_DOC_PRIOR_VERSION_ACTION,
          docPriorVersionAction);
      userPrefsHelper.setString(
          V_IMAGE_VIEWER_CONFIG, F_IMAGE_VIEWER_SPAWN_PROCESS_TYPE, spawnProcessType);
    }
    MessageDialog.addInfoMessage(
        messageBean.getString("views.imageViewerConfig.save.successMessage"));
  }