There is a Markdown broken link at the middle of the page content:

which is accomplished using this [fragment](
https://github.com/isisaddons/isis-app-kitchensink/blob/d4fd4e8b799af42c343b7e451bbf6f5d218869a1/dom/src/main/java/org/isisaddons/app/kitchensink/dom/contrib/contributee/Person.layout.json#L44-L61
) in the Person.layout.json file:

There are other similar links in the page and they render fine. I guess it
is the URL fragment that confuses the Markdown parser.

I just committed a change in the .md file but I still don't see the change
at
http://isis.apache.org/more-advanced-topics/How-to-suppress-contributions.html
.
Maybe it takes some time ...

Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Fri, Dec 5, 2014 at 7:36 PM, Dan Haywood <[email protected]>
wrote:
>
> now also documented on the website, see
>
> http://isis.apache.org/more-advanced-topics/How-to-suppress-contributions.html
> .
>
> On 5 December 2014 at 14:09, Dan Haywood <[email protected]>
> wrote:
>
> > Bit of a delay on this, but anyway... the good news is that it IS
> possible
> > to suppress a contributed action on one parameter but not another.
> >
> > I've updated the kitchen sink app [1] to show how
> >
> > In the "contrib" package there are three entities:
> > * Person  [2]
> > * Preference  [3]
> > * FoodStuff  [4]
> >
> > eg Mary LIKEs Apple, Mungo HATEs Banana, Midge LOVEs Oranges
> >
> > Neither Person nor FoodStuff knows about Preferences; the Preference is
> > the tuple that associates the two together.
> >
> > The PreferenceContributions [5] service provides:
> > * "likes" - contributed collection to Person
> > * "firstLove" - contributed property to Person
> > * "addPreference" - contributed action to both Person and FoodStuff
> > - "removePreference" - contributed action to both Person and FoodStuff
> >
> > However, although "addPreference" and "removePreference" *are*
> contributed
> > to all parameter types, this can be hidden using the .layout.json file.
> In
> > FoodStuff,layout.json [6] we have:
> >
> >
> >   "actions": {
> >     ...
> >     "removePreference": {
> >       "actionLayout": {
> >         "cssClass": "btn-warn",
> >         "hidden": "EVERYWHERE"
> >       }
> >     }
> >   }
> >
> > which means that the "removePreference" action cannot be seen when
> viewing
> > a FoodStuff entity.
> >
> > I'll add this stuff to our website for future reference.
> >
> > Cheers
> > Dan
> >
> >
> > [1] https://github.com/isisaddons/isis-app-kitchensink
> > [2]
> >
> https://github.com/isisaddons/isis-app-kitchensink/blob/master/dom/src/main/java/org/isisaddons/app/kitchensink/dom/contrib/contributee/Person.java#L41-41
> > [3]
> >
> https://github.com/isisaddons/isis-app-kitchensink/blob/master/dom/src/main/java/org/isisaddons/app/kitchensink/dom/contrib/contributed/Preference.java#L42-42
> > [4]
> >
> https://github.com/isisaddons/isis-app-kitchensink/blob/master/dom/src/main/java/org/isisaddons/app/kitchensink/dom/contrib/contributee/FoodStuff.java#L41-41
> > [5]
> >
> https://github.com/isisaddons/isis-app-kitchensink/blob/master/dom/src/main/java/org/isisaddons/app/kitchensink/dom/contrib/contributed/PreferenceContributions.java#L31-31
> > [6]
> >
> https://github.com/isisaddons/isis-app-kitchensink/blob/master/dom/src/main/java/org/isisaddons/app/kitchensink/dom/contrib/contributee/FoodStuff.layout.json#L57-57
> >
> >
> >
> >
> https://github.com/isisaddons/isis-app-kitchensink/blob/master/dom/src/main/java/org/isisaddons/app/kitchensink/dom/contrib/contributed/PreferenceContributions.java#L62-62
> >
> > On 19 November 2014 at 15:27, Jeroen van der Wal <[email protected]>
> > wrote:
> >
> >> As to your question if you prevent something being contributed on only
> one
> >> of the parameter classes: In the metamodel there's no way to specify
> that
> >> but you could try to hide the contribution in the layout.json file.
> >>
> >> something like
> >>
> >> "actions":{
> >>    "yourAction": {
> >>       "hidden":{}
> >>    }
> >> }
> >>
> >> or
> >>
> >> "actions":{
> >>    "yourAction": {
> >>       "hidden":{"where":"ALWAYS" }
> >>    }
> >> }
> >>
> >> Can you check if this works?
> >>
> >> On Wed, Nov 19, 2014 at 4:15 PM, Jeroen van der Wal <
> [email protected]>
> >> wrote:
> >>
> >> > Hi Erik,
> >> >
> >> > You have to repeat the same parameters on the hideXxx method as the
> >> method
> >> > that you're trying to hide.
> >> >
> >> > HTH
> >> >
> >> > On Wed, Nov 19, 2014 at 4:09 PM, Erik de Hair <[email protected]> wrote:
> >> >
> >> >> Hi,
> >> >>
> >> >> The method in my entity class is as follows:
> >> >>
> >> >> public boolean hideAddPhoneNumbers(PortalCompany owningCompany,
> >> >> AbstractArticle phoneNumberArticle,
> >> >>             PhoneNumberGrid gridNumber,
> AbstractSelectableNumberElement
> >> >> numberElement)
> >> >>     {
> >> >>         return true;
> >> >>     }
> >> >>
> >> >> I also tried
> >> >>
> >> >> public boolean hideAddPhoneNumbers()
> >> >> {
> >> >>     return true;
> >> >> }
> >> >>
> >> >> The signature of the method in the service is
> >> >>
> >> >> public FixedPhoneNumberSubscription addPhoneNumbers(PortalCompany
> >> >> owningCompany,
> >> >>             AbstractArticle phoneNumberArticle,
> >> >>             PhoneNumberGrid gridNumber,
> >> >>             AbstractSelectableNumberElement numberElement)
> >> >>
> >> >>
> >> >> Erik
> >> >>
> >> >> <mailto:[email protected]>
> >> >>
> >> >> On 11/19/2014 03:37 PM, Martin Grigorov wrote:
> >> >>
> >> >>> Hi,
> >> >>>
> >> >>> On Wed, Nov 19, 2014 at 4:20 PM, Erik de Hair <[email protected]>
> wrote:
> >> >>>
> >> >>>  Hi Martin,
> >> >>>>
> >> >>>>   I think you need to add method hideXyz() as explained at
> >> >>>>
> >> >>>>> http://isis.apache.org/how-tos/how-to-02-030-How-to-hide-
> >> >>>>> an-action.html
> >> >>>>>
> >> >>>>>  By adding a hide to the repository I can only hide it everywhere
> or
> >> >>>> nowhere but I can't choose to pop up at certain entities only. At
> >> >>>> least, I
> >> >>>> don't know how to do that.
> >> >>>>
> >> >>>> When I add a hideXXX() to the entity where I want to hide the
> action,
> >> >>>> Isis
> >> >>>> complains about an orphaned method because the method doesn't exist
> >> at
> >> >>>> the
> >> >>>> entity itself.
> >> >>>>
> >> >>>
> >> >>> Please share the method's code. The log is misleading. Most probably
> >> the
> >> >>> method signature is not correct.
> >> >>>
> >> >>> it should be :
> >> >>> - public
> >> >>> - returning boolean
> >> >>> - the name should be hide[TheCamelCasedActionName](the, same,
> >> >>> parameters,
> >> >>> as, the, action, method)
> >> >>> - the impl should use all available information to decide whether to
> >> >>> return
> >> >>> true or false
> >> >>>
> >> >>>
> >> >>>
> >> >>>> Erik
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>
> >> >
> >>
> >
> >
>

Reply via email to