예제 #1
0
    private CaptchaRatingPanel newRatingPanel() {
      IModel<Integer> calculatedRatingModel =
          new PropertyModel<Integer>(downloadModel, "calculatedRating");
      IModel<Integer> numberOfVotesModel =
          new PropertyModel<Integer>(downloadModel, "numberOfVotes");
      return new CaptchaRatingPanel(
          "vote",
          calculatedRatingModel,
          Model.of(5),
          numberOfVotesModel,
          hasVoted,
          true,
          getBubblePanel()) {
        private static final long serialVersionUID = 1L;

        @Override
        protected boolean onIsStarActive(int star) {
          Download download = downloadModel.getObject();
          return star < ((int) (download.getCalculatedRating() + 0.5));
        }

        @Override
        protected void onRatedAndCaptchaValidated(int rating, AjaxRequestTarget target) {
          Download download = downloadModel.getObject();
          hasVoted.setObject(Boolean.TRUE);
          downloadService.rateDownload(rating, download);
        }

        @Override
        public boolean isEnabled() {
          return isAllowedToVote();
        }
      };
    }
예제 #2
0
 private void redirectToCreateDownloadPage() {
   // link from upload center
   if (isCreateLinkFromUploadCenter() && isAuthor()) {
     Download newDownload = downloadService.newDownloadEntity();
     newDownload.setUrl(params.getString("create"));
     IModel<Download> downloadModel = Model.of(newDownload);
     setResponsePage(new DownloadEditPage(downloadModel));
   }
 }
예제 #3
0
 public DownloadView(String id, Item<Download> item) {
   super(id, "downloadView", DownloadPage.this);
   downloadModel = item.getModel();
   hasVoted = Model.of(!isAllowedToVote());
   add(createBrokenLabel());
   add(createTitleLink());
   add(createAppropriateAuthorPanel(item));
   add(createMetaInfoPanel());
   add(createDescriptionLabel());
   add(createHitsLabel());
   add(createTagPanel());
   add(createRatingPanel());
   add(createOptionalInfoLabels());
   add(createDownloadLink());
 }
예제 #4
0
 @Get("/1variable")
 @Produces("text/html")
 public Model helloBob() {
   return Model.of("name", "Bob");
 }
 public AttributeModifier(final String attribute, final Serializable value) {
   this(attribute, Model.of(value));
 }
 public static AttributeModifier remove(final String attributeName) {
   Args.notEmpty((CharSequence) attributeName, "attributeName");
   return replace(attributeName, Model.of(AttributeModifier.VALUELESS_ATTRIBUTE_REMOVE));
 }
 public static AttributeAppender prepend(final String attributeName, final Serializable value) {
   Args.notEmpty((CharSequence) attributeName, "attributeName");
   return prepend(attributeName, Model.of(value));
 }