Removal of Footer & Insertion of Adsense Code

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

Removal of Footer & Insertion of Adsense Code

jason
Dear Support team,

May I know how do I remove the footer of my newly setup forum - http://forum.estate.sg/?

Can I also check on how to insert adsense code into the forum?

Regards,
Jason.

Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

GregChapman
There are many topics on these questions  on this forum.

I'd recommend that you search for the most recent/relevant and where clarification if required then post such requests as replies in those topics.
Volunteer Helper - but recommending that users move off the platform!
Once the admin for GregHelp now deleted.
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

jason
Hi,

thank you for your response.

The only relevant answer is that the footer would be removed if I subscribed to paid support.

Seriously, I wouldn't mind paying for such a great product but I also read that there's no way to remove the footer message in another thread.

Hopefully someone can enlighten me before I pay for the support.

Regards,
Jason
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

GregChapman
Hi  jason,

Apologies if I was a little vague in my previous rushed post...
jason wrote
The only relevant answer is that the footer would be removed if I subscribed to paid support.
I assume you are are referring to the line that includes "Powered by Nabble" and "Edit this page" links.

I suspect the posts you found are rather old. I'm not sure that the footer referred to then applies to the current style of footer. It's always a good idea to quote the URL of any post that needs clarifying.

My understanding is that the first link is required under Nabble's T&C and the second is definitely required by the forum administrator in order to retain the ability to customise the forum.

There are some recent posts in the Premium support area that show how the "Edit this page" phrase can be made only to appear to Administrators. See:
http://support.nabble.com/Hide-quot-Edit-Page-quot-td7589661.html#a7589780
Others feel that the "Edit this page" link is misleading and change it to something else, e.g. "NAML". See the code on Harvey's forum at:
http://nyskiblog.com/forums/
for an example.
Seriously, I wouldn't mind paying for such a great product but I also read that there's no way to remove the footer message in another thread.
That's why you need report the URLS of the topics concerned or, as I suggested last time, respond to them. Then old answers can be put in context for you and so help clarify things for people who need the answers to the same questions in future..
Volunteer Helper - but recommending that users move off the platform!
Once the admin for GregHelp now deleted.
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

jason
Hi Sir,

thank you for your reply.

My forum URL is http://forum.estate.sg/.

1) I assume that the footer line "Powered by Nabble" must be retained at all times?

2) Do you have any tips on how to insert Google Adsense code in between the forum?

Have a nice day.

Regards,
Jason
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

Pedro
1 - We don't like to remove "Powered by Nabble" from free forums. That's the minimum we can "charge"  for the service.

2 - You can add your Google Adsense code in show_custom_ads macro while your forum is in the trial period or you have credits.
My test forum.
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

jason
HI Pedro,

Thank you for your kind assistance. May I clarify on the following:

1) If I start paying for your ads, are you able to remove "Powered by Nabble"?

2) I have generated adsense code to paste in "show_custom_ads" as seen below:

<override_macro name="show_custom_ads" parameters="location" requires="servlet" >
    <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
     style="display:inline-block;width:728px;height:90px"
     data-ad-client="ca-pub-0554003966655118"
     data-ad-slot="4411586071"></ins>
<script> (adsbygoogle = window.adsbygoogle || []).push({}); </script></override_macro>

However, the following message keeps showing:

 Error: parse exception in custom_tweak:show_custom_ads - expected '=' not found for attribute 'async' at line 2
 in custom_tweak:show_custom_ads:2

Can you assist me on this?

Thank you.

Regards,
Jason
http://forum.estate.sg/
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

jason
Dear Volunteers & Support staff,

can you anyone help me with the above thread question? Your support is much appreciated.

1 more question here: How do I customize the font in the header description?

Regards,
Jason
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

GregChapman
Hi Jason,

I'll leave Pedro to answer the Adsense question.
jason wrote
How do I customize the font in the header description?
I assume you mean text such as "Ang Mo Kio Community Forum General Discussion" in the General Discussion sub-forum that appears at the top of the page of that sub-forum.

If the font is to be used only in a single sub-forum this is most easily controlled by checking the box "Description is in HTML Format" and adding appropriate HTML/CSS code

If you wish to use the same font for every sub-forum description then add the CSS code in the dialogue at:

Options > Application > Change appearance > CSS

For example:
div#description-box {
font-family: "Comic Sans MS";
font-size: 1.8em;
  }

If you mean the description text on the main forum page, then that is trickier as you will need to edit the NAML code that builds the page as it is served. I don't have all the knowledge necessary to advise about that and you'll need to wait for Pedro, or another volunteer with the knowledge.

Unfortunately, the existing NAML code does not provide enough distinct HTML ids or classes to enable just the description to be changed in appearance. Further far too much styling is applied inline by the NAML code, instead of allowing it to be set with using only conventional HTML and CSS techniques.
Volunteer Helper - but recommending that users move off the platform!
Once the admin for GregHelp now deleted.
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

jason
Hi Greg,

Thank you for the kind assistance.

Yes, I am referring to the description text below the header - "Ang Mo Kio Community Forum General Discussion" found at http://forum.estate.sg/General-Discussion-f8.html.

May I know how do I insert the header banner found on main page - http://forum.estate.sg, on all sub pages automatically?

Your kind attention and time is much appreciated. Have a nice day.

Regards,
Jason
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

GregChapman
jason wrote
May I know how do I insert the header banner found on main page - http://forum.estate.sg, on all sub pages automatically?
The description field is expected to be different whenever it is used so there is no automatic way to insert and standard text or images on every sub-forum.

That would be another feature that would require editing of the NAML code that builds the pages. Pedro may be able to assist with that.
Volunteer Helper - but recommending that users move off the platform!
Once the admin for GregHelp now deleted.
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

jason
Hi Greg,

thank you for your response.

Regards,
Jason
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

Pedro
In reply to this post by jason
Please, remove the "async" attribute from your script tag like this:
<override_macro name="show_custom_ads" parameters="location" requires="servlet" >
    <script src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
    <!-- forum.estate.sg -->
    <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-0554003966655118"
    data-ad-slot="4411586071"></ins>
    <script>
        (adsbygoogle = window.adsbygoogle || []).push({});
    </script>
</override_macro>
My test forum.
Reply | Threaded
Open this post in threaded view
|

Re: Removal of Footer & Insertion of Adsense Code

jason
Hi Pedro,

I tried to apply the changes but the following error appears:

Error 500
NAML exception in customized site: nabble.naml.compiler.CompileException: invalid static tag: ins
        in (custom_tweak:show_custom_ads:4) - <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-0554003966655118"
    data-ad-slot="4411586071">
        in show_custom_ads(ad:ad.naml:230) - <n.show_custom_ads location="[n.location/]" />
        in if(ad:ad.naml:219) - <n.if.has_ads> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in show_ad(ad:ad.naml:325) - <n.show_ad location="app_bottom"/>
        in app_body_footer(nabble:app.naml:79) - <n.app_body_footer/>
        in body(nabble:app.naml:93) - <n.body/>
        in body(nabble:utilities.naml:10) - <n.body/>
        in body(nabble:utilities.naml:23) - <n.body/>
        in nabble_html(nabble:utilities.naml:19) - <n.nabble_html> - public void nabble.view.web.template.ServletNamespace.nabble_html(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in html_impl(nabble:utilities.naml:4) - <n.html_impl>
        in html(nabble:app.naml:88) - <n.html>
        in do(nabble:utilities.naml:982) - <n.as_node_page.do/>
        in as_node_page(nabble:utilities.naml:982) - <n.as_node_page.do/> - public void nabble.view.web.template.NodeNamespace.as_node_page(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in do(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/>
        in get_node_from_request_parameter(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/> - public void nabble.view.web.template.ServletNamespace.get_node_from_request_parameter(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter) throws java.io.IOException,javax.servlet.ServletException,nabble.naml.namespaces.TemplateException
        in catch_exception(nabble:utilities.naml:986) - <n.catch_exception. id="get-node-block"> - public void nabble.naml.namespaces.BasicNamespace.catch_exception(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in get_node_from_parameter(nabble:utilities.naml:982) - <n.get_node_from_parameter.as_node_page.do/>
        in node_page(nabble:app.naml:85) - <n.node_page.>
        in app_min_html(nabble:app.naml:67) - <n.app_min_html>
        in app_html(nabble:view_board.naml:6) - <n.app_html>
        in view_board_page(nabble:view_board.naml:2) - <n.view_board_page/>
        in (nabble:view_board.naml:1) - <subroutine name="view_board" requires="basic,nabble,servlet">
        in macro_source(nabble:macro_viewer.naml:6) - <n.macro_source.
                                id="[n.current_command_id/]"
                                base="[n.current_base_classes/]"
                                breadcrumbs="[n.current_breadcrumbs/]"
                        > - public void nabble.view.web.template.NabbleNamespace.macro_source(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in if(nabble:macro_viewer.naml:4) - <n.if.command_exists id="[n.current_command_id/]"> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in current_macro_source(nabble:macro_viewer.naml:60) - <n.current_macro_source.>
        in do(nabble:macro_viewer.naml:1) - <n.do/>
        in naml_tools(nabble:macro_viewer.naml:59) - <n.naml_tools.>
        in (nabble:macro_viewer.naml:58) - <macro name="macro_viewer" requires="servlet">
Message: NAML exception in customized site: nabble.naml.compiler.CompileException: invalid static tag: ins
RequestURI: /template/NamlServlet.jtp
Server: n4.nabble.com
Caused by:
fschmidt.util.servlet.JtpContextServlet$JtpServletException: url=http://forum.estate.sg/template/NamlServlet.jtp?macro=macro_viewer&id=show_custom_ads%21ad%3Aad.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.ServletNamespace&breadcrumbs=view_board%21nabble%3Aview_board.naml-view_board_page%21nabble%3Aview_board.naml-app_html%21nabble%3Aapp.naml-app_body_footer%21ad%3Aad.naml-show_ad%21ad%3Aad.naml  user-agent=Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36 method=GET referer=http://forum.estate.sg/template/NamlEditor.jtp?prev=http%3A%2F%2Fforum.estate.sg%2Ftemplate%2FNamlServlet.jtp%3Fmacro%3Dmacro_viewer%26amp%3Bid%3Dshow_custom_ads%2521ad%253Aad.naml%26amp%3Bbase%3Dnabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.ServletNamespace%26amp%3Bbreadcrumbs%3Dview_board%2521nabble%253Aview_board.naml-view_board_page%2521nabble%253Aview_board.naml-app_html%2521nabble%253Aapp.naml-app_body_footer%2521ad%253Aad.naml-show_ad%2521ad%253Aad.naml
        at fschmidt.util.servlet.JtpContextServlet.handleException(JtpContextServlet.java:571)
        at fschmidt.util.servlet.JtpContextServlet.service2(JtpContextServlet.java:465)
        at fschmidt.util.servlet.JtpContextServlet.service(JtpContextServlet.java:332)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:565)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1360)
        at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:77)
        at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:144)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1331)
        at cachingfilter.CachingFilter.doFilter(CachingFilter.java:133)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1331)
        at fschmidt.util.servlet.BadBotFilter.doFilter(BadBotFilter.java:74)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1331)
        at fschmidt.util.servlet.ConnectionLimitFilter.doFilter(ConnectionLimitFilter.java:94)
        at nabble.view.lib.NabbleConnectionLimitFilter.doFilter(NabbleConnectionLimitFilter.java:26)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1331)
        at nabble.view.lib.NabbleErrorFilter.doFilter(NabbleErrorFilter.java:21)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1331)
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:477)
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:225)
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1031)
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:406)
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:965)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
        at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
        at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
        at org.eclipse.jetty.server.Server.handle(Server.java:349)
        at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:449)
        at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:910)
        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:634)
        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:230)
        at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:76)
        at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:609)
        at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:45)
        at nabble.model.Executors$1$1.run(Executors.java:27)
        at fschmidt.util.executor.ThreadTimer$1.run(ThreadTimer.java:18)
        at fschmidt.util.executor.AbstractThreadPool$1.run(AbstractThreadPool.java:29)
        at java.lang.Thread.run(Thread.java:745)
Caused by: javax.servlet.ServletException: NAML exception in customized site: nabble.naml.compiler.CompileException: invalid static tag: ins
        in (custom_tweak:show_custom_ads:4) - <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-0554003966655118"
    data-ad-slot="4411586071">
        in show_custom_ads(ad:ad.naml:230) - <n.show_custom_ads location="[n.location/]" />
        in if(ad:ad.naml:219) - <n.if.has_ads> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in show_ad(ad:ad.naml:325) - <n.show_ad location="app_bottom"/>
        in app_body_footer(nabble:app.naml:79) - <n.app_body_footer/>
        in body(nabble:app.naml:93) - <n.body/>
        in body(nabble:utilities.naml:10) - <n.body/>
        in body(nabble:utilities.naml:23) - <n.body/>
        in nabble_html(nabble:utilities.naml:19) - <n.nabble_html> - public void nabble.view.web.template.ServletNamespace.nabble_html(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in html_impl(nabble:utilities.naml:4) - <n.html_impl>
        in html(nabble:app.naml:88) - <n.html>
        in do(nabble:utilities.naml:982) - <n.as_node_page.do/>
        in as_node_page(nabble:utilities.naml:982) - <n.as_node_page.do/> - public void nabble.view.web.template.NodeNamespace.as_node_page(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in do(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/>
        in get_node_from_request_parameter(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/> - public void nabble.view.web.template.ServletNamespace.get_node_from_request_parameter(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter) throws java.io.IOException,javax.servlet.ServletException,nabble.naml.namespaces.TemplateException
        in catch_exception(nabble:utilities.naml:986) - <n.catch_exception. id="get-node-block"> - public void nabble.naml.namespaces.BasicNamespace.catch_exception(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in get_node_from_parameter(nabble:utilities.naml:982) - <n.get_node_from_parameter.as_node_page.do/>
        in node_page(nabble:app.naml:85) - <n.node_page.>
        in app_min_html(nabble:app.naml:67) - <n.app_min_html>
        in app_html(nabble:view_board.naml:6) - <n.app_html>
        in view_board_page(nabble:view_board.naml:2) - <n.view_board_page/>
        in (nabble:view_board.naml:1) - <subroutine name="view_board" requires="basic,nabble,servlet">
        in macro_source(nabble:macro_viewer.naml:6) - <n.macro_source.
                                id="[n.current_command_id/]"
                                base="[n.current_base_classes/]"
                                breadcrumbs="[n.current_breadcrumbs/]"
                        > - public void nabble.view.web.template.NabbleNamespace.macro_source(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in if(nabble:macro_viewer.naml:4) - <n.if.command_exists id="[n.current_command_id/]"> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in current_macro_source(nabble:macro_viewer.naml:60) - <n.current_macro_source.>
        in do(nabble:macro_viewer.naml:1) - <n.do/>
        in naml_tools(nabble:macro_viewer.naml:59) - <n.naml_tools.>
        in (nabble:macro_viewer.naml:58) - <macro name="macro_viewer" requires="servlet">
        at nabble.view.web.template.NamlServlet.checkTweaked(NamlServlet.java:185)
        at nabble.view.web.template.NamlServlet.service(NamlServlet.java:144)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at fschmidt.util.servlet.JtpContextServlet.service2(JtpContextServlet.java:461)
        ... 38 more
Caused by: nabble.naml.compiler.TemplateRuntimeException: nabble.naml.compiler.CompileException: invalid static tag: ins
        in (custom_tweak:show_custom_ads:4) - <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-0554003966655118"
    data-ad-slot="4411586071">
        in show_custom_ads(ad:ad.naml:230) - <n.show_custom_ads location="[n.location/]" />
        in if(ad:ad.naml:219) - <n.if.has_ads> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in show_ad(ad:ad.naml:325) - <n.show_ad location="app_bottom"/>
        in app_body_footer(nabble:app.naml:79) - <n.app_body_footer/>
        in body(nabble:app.naml:93) - <n.body/>
        in body(nabble:utilities.naml:10) - <n.body/>
        in body(nabble:utilities.naml:23) - <n.body/>
        in nabble_html(nabble:utilities.naml:19) - <n.nabble_html> - public void nabble.view.web.template.ServletNamespace.nabble_html(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in html_impl(nabble:utilities.naml:4) - <n.html_impl>
        in html(nabble:app.naml:88) - <n.html>
        in do(nabble:utilities.naml:982) - <n.as_node_page.do/>
        in as_node_page(nabble:utilities.naml:982) - <n.as_node_page.do/> - public void nabble.view.web.template.NodeNamespace.as_node_page(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in do(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/>
        in get_node_from_request_parameter(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/> - public void nabble.view.web.template.ServletNamespace.get_node_from_request_parameter(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter) throws java.io.IOException,javax.servlet.ServletException,nabble.naml.namespaces.TemplateException
        in catch_exception(nabble:utilities.naml:986) - <n.catch_exception. id="get-node-block"> - public void nabble.naml.namespaces.BasicNamespace.catch_exception(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in get_node_from_parameter(nabble:utilities.naml:982) - <n.get_node_from_parameter.as_node_page.do/>
        in node_page(nabble:app.naml:85) - <n.node_page.>
        in app_min_html(nabble:app.naml:67) - <n.app_min_html>
        in app_html(nabble:view_board.naml:6) - <n.app_html>
        in view_board_page(nabble:view_board.naml:2) - <n.view_board_page/>
        in (nabble:view_board.naml:1) - <subroutine name="view_board" requires="basic,nabble,servlet">
        in macro_source(nabble:macro_viewer.naml:6) - <n.macro_source.
                                id="[n.current_command_id/]"
                                base="[n.current_base_classes/]"
                                breadcrumbs="[n.current_breadcrumbs/]"
                        > - public void nabble.view.web.template.NabbleNamespace.macro_source(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in if(nabble:macro_viewer.naml:4) - <n.if.command_exists id="[n.current_command_id/]"> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in current_macro_source(nabble:macro_viewer.naml:60) - <n.current_macro_source.>
        in do(nabble:macro_viewer.naml:1) - <n.do/>
        in naml_tools(nabble:macro_viewer.naml:59) - <n.naml_tools.>
        in (nabble:macro_viewer.naml:58) - <macro name="macro_viewer" requires="servlet">
        at nabble.naml.compiler.Compiler.interpFix(Compiler.java:2007)
        at nabble.naml.compiler.Compiler$Block.run(Compiler.java:1636)
        at nabble.naml.compiler.BlockWrapper.printTo(BlockWrapper.java:68)
        at nabble.naml.compiler.TemplatePrintWriter.print(TemplatePrintWriter.java:22)
        at nabble.naml.namespaces.BasicNamespace._if(BasicNamespace.java:140)
        at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at nabble.naml.compiler.JavaCall.invoke(JavaCall.java:26)
        at nabble.naml.compiler.Compiler$Block.invoke(Compiler.java:1557)
        at nabble.naml.compiler.Compiler$Block.run(Compiler.java:1631)
        at nabble.naml.compiler.Template.run(Template.java:61)
        at nabble.naml.compiler.Template.run(Template.java:33)
        at nabble.modules.ModuleManager.run(ModuleManager.java:268)
        at nabble.view.web.template.NamlServlet.service(NamlServlet.java:165)
        at nabble.view.web.template.NamlServlet.service(NamlServlet.java:134)
        ... 40 more
Caused by: java.lang.RuntimeException: nabble.naml.compiler.CompileException: invalid static tag: ins
        in (custom_tweak:show_custom_ads:4) - <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-0554003966655118"
    data-ad-slot="4411586071">
        in show_custom_ads(ad:ad.naml:230) - <n.show_custom_ads location="[n.location/]" />
        in if(ad:ad.naml:219) - <n.if.has_ads> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in show_ad(ad:ad.naml:325) - <n.show_ad location="app_bottom"/>
        in app_body_footer(nabble:app.naml:79) - <n.app_body_footer/>
        in body(nabble:app.naml:93) - <n.body/>
        in body(nabble:utilities.naml:10) - <n.body/>
        in body(nabble:utilities.naml:23) - <n.body/>
        in nabble_html(nabble:utilities.naml:19) - <n.nabble_html> - public void nabble.view.web.template.ServletNamespace.nabble_html(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in html_impl(nabble:utilities.naml:4) - <n.html_impl>
        in html(nabble:app.naml:88) - <n.html>
        in do(nabble:utilities.naml:982) - <n.as_node_page.do/>
        in as_node_page(nabble:utilities.naml:982) - <n.as_node_page.do/> - public void nabble.view.web.template.NodeNamespace.as_node_page(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in do(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/>
        in get_node_from_request_parameter(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/> - public void nabble.view.web.template.ServletNamespace.get_node_from_request_parameter(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter) throws java.io.IOException,javax.servlet.ServletException,nabble.naml.namespaces.TemplateException
        in catch_exception(nabble:utilities.naml:986) - <n.catch_exception. id="get-node-block"> - public void nabble.naml.namespaces.BasicNamespace.catch_exception(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in get_node_from_parameter(nabble:utilities.naml:982) - <n.get_node_from_parameter.as_node_page.do/>
        in node_page(nabble:app.naml:85) - <n.node_page.>
        in app_min_html(nabble:app.naml:67) - <n.app_min_html>
        in app_html(nabble:view_board.naml:6) - <n.app_html>
        in view_board_page(nabble:view_board.naml:2) - <n.view_board_page/>
        in (nabble:view_board.naml:1) - <subroutine name="view_board" requires="basic,nabble,servlet">
        at nabble.view.web.template.MacroSourceNamespace.<init>(MacroSourceNamespace.java:75)
        at nabble.view.web.template.NabbleNamespace.macro_source(NabbleNamespace.java:1102)
        at sun.reflect.GeneratedMethodAccessor362.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at nabble.naml.compiler.JavaCall.invoke(JavaCall.java:26)
        at nabble.naml.compiler.Compiler$Block.invoke(Compiler.java:1557)
        at nabble.naml.compiler.Compiler$Block.run(Compiler.java:1631)
        ... 54 more
Caused by: nabble.naml.compiler.CompileException: invalid static tag: ins
        in (custom_tweak:show_custom_ads:4) - <ins class="adsbygoogle"
    style="display:inline-block;width:728px;height:90px"
    data-ad-client="ca-pub-0554003966655118"
    data-ad-slot="4411586071">
        in show_custom_ads(ad:ad.naml:230) - <n.show_custom_ads location="[n.location/]" />
        in if(ad:ad.naml:219) - <n.if.has_ads> - public static void nabble.naml.namespaces.BasicNamespace._if(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in show_ad(ad:ad.naml:325) - <n.show_ad location="app_bottom"/>
        in app_body_footer(nabble:app.naml:79) - <n.app_body_footer/>
        in body(nabble:app.naml:93) - <n.body/>
        in body(nabble:utilities.naml:10) - <n.body/>
        in body(nabble:utilities.naml:23) - <n.body/>
        in nabble_html(nabble:utilities.naml:19) - <n.nabble_html> - public void nabble.view.web.template.ServletNamespace.nabble_html(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in html_impl(nabble:utilities.naml:4) - <n.html_impl>
        in html(nabble:app.naml:88) - <n.html>
        in do(nabble:utilities.naml:982) - <n.as_node_page.do/>
        in as_node_page(nabble:utilities.naml:982) - <n.as_node_page.do/> - public void nabble.view.web.template.NodeNamespace.as_node_page(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter)
        in do(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/>
        in get_node_from_request_parameter(nabble:utilities.naml:987) - <n.get_node_from_request_parameter.do/> - public void nabble.view.web.template.ServletNamespace.get_node_from_request_parameter(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.ScopedInterpreter) throws java.io.IOException,javax.servlet.ServletException,nabble.naml.namespaces.TemplateException
        in catch_exception(nabble:utilities.naml:986) - <n.catch_exception. id="get-node-block"> - public void nabble.naml.namespaces.BasicNamespace.catch_exception(nabble.naml.compiler.IPrintWriter,nabble.naml.compiler.Interpreter)
        in get_node_from_parameter(nabble:utilities.naml:982) - <n.get_node_from_parameter.as_node_page.do/>
        in node_page(nabble:app.naml:85) - <n.node_page.>
        in app_min_html(nabble:app.naml:67) - <n.app_min_html>
        in app_html(nabble:view_board.naml:6) - <n.app_html>
        in view_board_page(nabble:view_board.naml:2) - <n.view_board_page/>
        in (nabble:view_board.naml:1) - <subroutine name="view_board" requires="basic,nabble,servlet">
        at nabble.naml.compiler.Compiler.compile(Compiler.java:314)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getTagArgs(Compiler.java:769)
        at nabble.naml.compiler.Compiler.multiMethodTag(Compiler.java:600)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:495)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getMacroArgChunk(Compiler.java:634)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:510)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getMacroArgChunk(Compiler.java:634)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:510)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getMacroArgChunk(Compiler.java:634)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:510)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getTagArgs(Compiler.java:769)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:533)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getMacroArgChunk(Compiler.java:634)
        at nabble.naml.compiler.Compiler.multiMethodTag(Compiler.java:550)
        at nabble.naml.compiler.Compiler.multiMethodTag(Compiler.java:593)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:495)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getMacroArgChunk(Compiler.java:634)
        at nabble.naml.compiler.Compiler.multiMethodTag(Compiler.java:550)
        at nabble.naml.compiler.Compiler.multiMethodTag(Compiler.java:593)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:495)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.getDotArg(Compiler.java:740)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:531)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.multiMethodTag(Compiler.java:584)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:495)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.getMacroChunk2(Compiler.java:729)
        at nabble.naml.compiler.Compiler.getMacroChunk(Compiler.java:660)
        at nabble.naml.compiler.Compiler.singleMethodTag(Compiler.java:525)
        at nabble.naml.compiler.Compiler.compileElement(Compiler.java:493)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:303)
        at nabble.naml.compiler.Compiler.compileMacro(Compiler.java:240)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:86)
        at nabble.naml.compiler.Compiler.compile(Compiler.java:58)
        at nabble.naml.compiler.Program$1.get(Program.java:88)
        at nabble.naml.compiler.Program$1.get(Program.java:84)
        at fschmidt.util.java.Memoizer$1.call(Memoizer.java:30)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at fschmidt.util.java.FastFuture.run(FastFuture.java:21)
        at fschmidt.util.java.Memoizer.get(Memoizer.java:37)
        at nabble.naml.compiler.Program.getTemplate(Program.java:280)
        at nabble.naml.compiler.Program.getTemplate(Program.java:262)
        at nabble.view.web.template.MacroSourceNamespace.<init>(MacroSourceNamespace.java:73)
        ... 61 more

Regards,
Jason