Giter Site home page Giter Site logo

vhs's Introduction

vhs's People

Contributors

alappe avatar alexander-nitsche avatar amkoroew avatar beda avatar benjaminbeck avatar bjo3rnf avatar cbrunet avatar cedricziel avatar coding46 avatar cweiske avatar danielkestler avatar dmitryd avatar dogawaf avatar etobi avatar invisiblekind avatar jkphl avatar jmverges avatar jostbaron avatar mbrodala avatar monosize avatar namelesscoder avatar neufeind avatar pkerling avatar smichaelsen avatar ste101 avatar stefanocecere avatar tantegerda1 avatar tiggr avatar torvitas avatar xf- avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vhs's Issues

[BUGFIX] Script asset compiler messes with image locations

When using asset.script, all CSS-file are (usually) compiled into one big file. The file, however, is not updated to reflect the new relative locations of external resources, such as background images for various elements. And when the compiled file is read from typo3temp, all background images result in a 404. This practically makes it unusable for all but the simplest CSS-files or external stylesheets.

[BUGFIX] shortcut in menu are not rendered correctly

It looks to me aliases / shortcuts in menu are not rendered correctly. Take as example the menu Customizing TYPO3 from the Bootstrap Package at the top. Actually its name should be Helpers. I don't think but it could happen I have miss-configured something. Look at the code from here or this extract:

<v:page.menu entryLevel="{v:var.typoscript(path: 'lib.menu.main.entryLevel')}" useShortcutData="TRUE">
    <ul class="nav">
        <f:for each="{menu}" as="mainPage" iteration="iteration">
            <li class="{mainPage.class}">
                <a tabindex="{iteration.cycle -> v:math.sum(b: 100)}"
                   href="{mainPage.link}"
                   class="{mainPage.class}">{mainPage.title}</a>
            </li>
        </f:for>
    </ul>
</v:page.menu>

Multilanguage Support for v:page.menu.directory

Hi Claus,

if "Hide page if no translation for current language exists" is active for some page, then it disappears in menu if current language is not default even if the page is translated.

The problem seems to be in line 307 of AbstractMenuViewHelper.php:
elseif ($page['l18n_cfg'] == 2 && $GLOBALS['TSFE']->sys_language_uid != 0) {
continue;
}
Here it should be checked if the translation exists.

Thanks s in advance.

[REQUEST] Feature: Form / ManualField ViewHelper

This ViewHelper should do everything a plain input form ViewHelper in Fluid does - but never return a rendered field. It should only register a form field token - see in the abstract form ViewHelper in Fluid examples of 1) getting the resulting name of a form field created in a ViewHelper and 2) registering that name to include it in token HMAC building.

Purpose:

<v:form.manualField property="relatedObjects" />
<input type="hidden" name="tx_ext[scope][object][manualName]" />
<!-- insert super advanced selector for related objects here. Results in perfect HMAC with fully custom field -->

[REQUEST] Feature: Random / Content / Get and Render ViewHelpers

It would be nice to have two ViewHelpers v:random.content which are basically aliases of existing content fetching ViewHelpers, capable of selecting content randomly. They should extend v:page.content.get and v:page.content.render to support the same attributes but override:

  • limit should have a default value of 1
  • sortDirection should be RAND()

Other than this they should do exactly what the current ones do.

v:form.select ViewHelper always renders "multiple" argument

When using the <v:form.select> ViewHelper, the rendered html select tag always contains a multiple attribute. If I omit the ViewHelpers corresponding multiple option (falls back to default value of FALSE), the output is still an empty but present (multiple="") attribute.

input (fluid template)

(with omitted multiple attribute)

…
<v:form.select property="bar">
    <v:form.select.option value="{someBar.uid}">{someBar.title}</v:form.select.option>
    <v:form.select.option value="{otherBar.uid}">{otherBar.title}</v:form.select.option>
</v:form.select>
…

Result (rendered output)

…
<input type="hidden" name="tx_baz_qux[corge][bar]" value="" />
<select multiple="" name="tx_baz_qux[corge][bar][]">
    <option value="12">Some Bar</option>
    <option value="21">Other Bar</option>
</select>
…

Expected result

…
<input type="hidden" name="tx_baz_qux[corge][bar]" value="" />
<select name="tx_baz_qux[corge][bar][]">
    <option value="12">Some Bar</option>
    <option value="21">Other Bar</option>
</select>
…

Additional info

If the ViewHelpers multiple is set to anything, it echoes that out in the select's attribute, which sadly does not help me, because the HTML spec declares…

…the presence of a boolean attribute on an element represents the true value, and the absence of the attribute represents the false value.
If the attribute is present, its value must either be the empty string or a value that is an ASCII case-insensitive match for the attribute's canonical name, with no leading or trailing whitespace.

So setting it to "false" or "disabled" just helps in obfuscating the code ;-)

System info

PHP 5.4.14
TYPO3 6.0.5-dev
vhs 1.6.0

I'd be happy to provide further information if thats needed.

how to render a field of a table

practical case:

in news extension i get the selected tag (to filter by it) as a GET parameter and Fluid sees it as {overwriteDemand.tags} ( = 4, for example)

now i want to render the title of tag 4

i would need a simple viewhelper that returns "select title from tx_news_domain_model_tag where uid = {overwriteDemand.tags} "

is there already a ViewHelper that does it ? (i don't want to call a TS objects that does it)

if not i'm going to write it and propose to put it.. where? in the Render section?
should i call it Render FieldViewHelper ?

v:page.header.title not working

Sooo, I'm back with another problem that's (hopefully) not on my end. I've tried changing the displayed page title, but using the page.header.title viewhelper doesn't seem to do anything.

I've tried using the viewhelper in multiple positions (the layout, my template, in the f:header area) but nothing changed.

I also tried using the good old TypoScript method, but that didn't work either. The title appears in the sourcecode with this method, but there's another title tag getting rendered before that, so the TypoScript title isn't working.

I've looked into the ViewHelper, but realised pretty fast I have no idea where the setTitle() method is defined (I couldn't find the getPageRenderer() either).


Aside of that, how can I wrap the normal page title to append or prepend something to the normal page title? In TypoScript I would do something like

page.headerData {
  10 = TEXT
  10 {
    field = title
    noTrimWrap = |<title>Prependtext - | - Appendtext</title>|
  }
}

But when I do this I currently just get this:

<title>Home</title>
<meta name="generator" content="TYPO3 6.0 CMS">
<link rel="stylesheet" type="text/css" href="typo3temp/stylesheet_somerandomnumber.css" media="all">
<title>Prependtext - Home - Appendtext</title>

Anyway, the viewhelper doesn't put anything anywhere and that's the real issue at the moment :D

Fatal Error with 4.5

the Asset VH have a class loading problem under 4.5:

PHP Fatal error: Class 'Tx_Vhs_ViewHelpers_Asset_AbstractAssetViewHelper' not found in /Users/Sites/site45/typo3conf/ext/vhs/Classes/ViewHelpers/AssetViewHelper.php on line 66

with vhs 1.4 no problems!

should we put that Tx_Vhs_ViewHelpers_Asset_AbstractAssetViewHelper in the autoload ?

Variables in asset.style not working

It seems variables cannot be used inside an asset.style element.

My code is currently as follows:

<v:asset.style standalone="TRUE">
        _some-static-styles-here_
        /* Need some panel elements to be configured 1by1 */
        <f:for each="{panels}" as="panel" iteration="iteration">
                #element-{iteration.index} {
                        left: {panel.panel.varX};
                        top:  {panel.panel.varY};
                }
        </f:for>
        .class {
          width:  {myWidth};
          height: {myHeight};
          background-color: {myBackgroundColor};
        }
</v:asset.style>

I saw in the documentation, that there is a fluid attribute on the asset.style helper, but when I set it to "TRUE", I get a typo3 message telling me "Parse requires a template string as argument, boolean given.". I also tried using the argumentsattribute explicitely (for {_ALL} and for my specific test variable), but it returns the same error.

Maybe I did something wrong, though I can't imagine what :)

The variable names are definitely correct, when I cut and paste the code outside the asset.style element it's working just fine.

/edit
Forgot to say, I tried a workaround with a custom <style> tag, but it seems it ignores variables there as well :/

v:asset - adding JS or CSS file throws exception

Hi there,

I want to add a JS-file via:

{namespace v=Tx_Vhs_ViewHelpers}
<v:asset name="isotope" path="path/to/jquery.isotope.min.js" />

but it gives me this exception in the frontend:

Attempt to include file based asset with unknown type ("raw")

Copying this:

<v:asset name="jquery" path="//some.com/cdn/url/jquery.js" />

from here http://fedext.net/news/vhs-150-released.html and replace it with:

<v:asset name="jquery" path="http://code.jquery.com/jquery-1.9.0.min.js" />

will give me this: Asset "" does not exist.

It's the same with CSS-files...

SortViewHelper for numberic sortBy

If you have an numberic property which you want to sortby this causes problems when you have more than one element this that value on sortby property.

Cause of ksort you do the following on Line 122 and Line 163 in SortViewHelper.php:
while (isset($sorted[$index])) { $index .= '1'; }

This will rewrite a numberic value from 1 to 11 for example which will mess up the sorting.

One simple workaround would be to change it to this:
while (isset($sorted[$index])) { $index .= '.1'; }

Then ksort would handle the index as float and not int and sorting will work as expected for numberic properties too.

[FEATURE] Add custom marker in breadcrumb between elements

While this is true that breadcrumb menu can be styled with CSS, it may be desirable to add some random markup to separate the menu elements. Checkout this example from Twitter Bootstrap and the <span class="divider">/</span> markup:

    <ul class="breadcrumb">
        <li><a href="#">Home</a> <span class="divider">/</span></li>
        <li><a href="#">Library</a> <span class="divider">/</span></li>
        <li class="active">Data</li>
    </ul>

I didn't find a way to achieve that with the current implementation:
http://fedext.net/viewhelpers/vhs/Page/BreadCrumbViewHelper.html

What do you thing?

[Request] StyleViewHelper like in fed

Hello Claus,

since fed is obsolete. Is there a chance to implement the StyleViewHelper from EXT:fed into EXT:vhs?

Because is want to use EXT:cs_less and it depends on EXT:fed because of this one ViewHelper.

Thanks.

Disable automatic Menu Rendering?

Hi Claus,

In most cases I don't use automatic rendering but and all works fine when I write my markup between the <v:page.menu> tags.

This time there is a special request from the designer to make the menu look like two menus, but the pages ar laying on one level. So I came up with the idea to use the divider to set the point where the two menus are sliced and setup two arrays which i use for the real menu rendering.

<v:page.menu pageUid="{page.uid}" includeSpacers="TRUE">
    <v:var.set name="pageCount" value="{f:count(subject: menu)}" />
    <f:for each="{menu}" as="menuItem" iteration="i">
        <f:if condition="{menuItem.doktype} == 199">
            <f:then>
                <v:var.set name="spacerPosition" value='{i.index}' />
            </f:then>
        </f:if>
    </f:for>
    <v:var.set name="firstMenu" value="{v:iterator.slice(haystack:menu, start: 0, length: spacerPosition)}" />
    <f:if condition="{spacerPosition}">
        <v:var.set name="secondMenu" value="{v:iterator.slice(haystack:menu, start: spacerPosition, length: pageCount)}" />
        <v:var.set name="secondMenu" value="{v:iterator.slice(haystack: secondMenu, start: 1, length: pageCount)}" />
    </f:if>
</v:page.menu>

Works awesome...but...inside this the menu gets rendered even there is no link tag or something. Any idea how to avoid this?

Cheers Matthias

v:page.menu doktype=199 not listed in {menu}

Hi Claus
inspired from your SubNavigation Partial in EXT:fluidpages_bootstrap i tried

<v:page.menu entryLevel="0">
  <f:for each="{menu}" as="mainPage" iteration="iteration">
    <f:debug>{mainPage.doktype}</f:debug>
  </f:for>
</v:page.menu>

Result:
Pages which are of type divider {doktype=199} are not in the {menu} Object.
Pages which are of type shortcut {doktype=4} or type standard (doktype=1) are listed in the {menu} Object.

Weird behaviour of v:iterator.explode when using as-argument

I totally do not get, what the desired behaviour of lines 66-72 is if the view helper is used as follows:

<v:iterator.explode glue="-" content="a-b-c-d" as="var" />

because of the view helper code $contentWasSource stays obviously false which ends in an removed as-variable from templateVariableContext.
Is there something I do not get?

L VIewhelper not working in 6.0.x

There seems to be a collision between TranslateViewHelper::initializeArguments and registering arguments in LViewHelper::render(). I get something like "Argument key is already registered". Overriding initializeArguments with an empty method seems to fix it.

Cheers
Björn

[FEATURE] Security View Helpers should totally disable cache if active

In the BP, I am using <v:security.allow anyBackendUser="TRUE"> for displaying some helping info once a BE user is logged in. This work well and I guess this is appreciated. However there is the problem the page is cached as such. In other words, if you load the same page with another browser, you will see security content.

With the plan, BP could be put as public demo website, I would like to find a solution. To better reproduce the issue, try this in the BP:

  1. Log into the BE with browser A
  2. Load in browser A a page (you should see content from <v:security.allow anyBackendUser="TRUE">)
  3. Load in browser B the same page (you still see content from security View Helper, although there is no BE loggin)

Is it a missing feature or missing configuration from my side? If so, can we find a way that security View Helpers in general are capable of disabling caching in a way or another? Disabling cache should be done obviously only if the security condition is ful-filled. What do you think?

Fb.

[BUG] Empty LanguageMenu -> Validation error

If a LanguageMenu has no content an empty ul tag is generated. This causes a HTML validation error.
Would it be possible to remove the entirely LanguageMenu part if no LanguageMenu is configured?

Asset comments are breaking IE9 output

Hi Claus,

we got some trouble because IE9 doesn't unterstand ´----!>´ as closing HTML comment. So there was no CSS/JS available in IE9.

This one is easyly solved with a 4 times replacement of ´----!>´ with ´---->´ in /vhs/Classes/ViewHelpers/AssetViewHelper.php.

Regards from Berlin,
Philipp

[FEATURE] Add attribute page to VH Page.Menu to render special menu

In TS you would write something like that to get a special menu out of CSV list of pid

20 = HMENU
20.special = directory
20.special.value = 13, 37  # which correspond to page uid
(..)

Having a "page" (reference to last direct tweet) attribute looks ok. However consider the list of special menu below to think what makes sense to be implemented into VH Page.Menu or should be implemented apart into special VH (for not bloating up the current VH Page.Menu)

To bring the big picture, object HEMNU accept different kind of special menu.

directory

20.special = directory
20.special.value = 35, 56

-> will generate a menu of all pages with pid = 35 and pid = 56 (sub-pages included).
-> personal need for that: rather low

list

20.special = list
20.special.value = 35, 56

-> This will generate a menu with the only two pages (uid=35 and uid=36) listed:
-> personal need for that: high

updated

20.special.value = 35, 56
20.special {
  mode = tstamp
  depth = 2
  maxAge = 3600*24*3
  limit = 8
}

-> This will generate a menu of the most recently updated pages
-> personal need for that: low but I can see some useful use case.

rootline

Already implemented in VH breadcrumb menu

language

Already implemented in VH language menu

browse

Never used it.

keywords

Never used it.

userdefined

Can be Implemented by extending the Abstract VH menu (for instance)

[BUG] v:asset.script arguments inside fluidcontent Element

Hi Claus,
i tried to use v:asset.script inside a fluidcontent element. First everythings works fine (script is shown in FE), but if i want to define an argument like this:

inside my fluidcontent *.html File

{namespace flux=Tx_Flux_ViewHelpers}
{namespace v=Tx_Vhs_ViewHelpers}
<f:layout name="FCE" />

<f:section name="Configuration">
    <flux:flexform wizardTab="Katholikentag Elemente" id="kreatikacountdown" label="KREATIKA: Countdown" description="Pre defined Countdown Element" icon="../typo3conf/ext/fluidcontent_katholikentag/Resources/Public/Icons/icon-KREATIKA.png">
            <flux:flexform.field.input name="settings.breite" label="Breite" default="220">
            </flux:flexform.field.input>
    </flux:flexform>
</f:section>

<f:section name="Preview">
    <h2>Countdown Element</h2>
</f:section>

<f:section name="Main">
    <div class="countdownbox">
      <h4>Das Ziel rückt näher</h4>
        <div id="countdown"></div>
        <div id="countdownlabel">
            <img src="/typo3conf/ext/fluidpages_katholikentag/Resources/Public/jcountdown/label_de.png" alt="countdown label">
        </div>
    </div>
<v:asset.script name="countdown" path="{f:uri.resource(path: 'jcountdown/countdown.js', extensionName: 'FluidpagesKatholikentag')}" fluid="TRUE" arguments="{breite: settings.breite}" allowMoveToFooter="1" />
</f:section>

inside countdown.js

<f:comment>
</f:comment>

jQuery(document).ready(function(){
    jQuery("#countdown").jCountdown({
        timeText:"2014/05/28 00:00:00",
        timeZone:8,
        style:"slide",
        color:"black",
        width: {breite},
        textGroupSpace:15,
        textSpace:0,
        reflection:false,
        reflectionOpacity:10,
        reflectionBlur:0,
        dayTextNumber:3,
        displayDay:true,
        displayHour:true,
        displayMinute:true,
        displaySecond:true,
        displayLabel:true,
        onFinish:function(){
            alert("finish");
        }
    });
});

The Argument wont render inside the JS File.
Bug or am i to stupid?
Thanks.

v:page.menu classHasSubpages

Hi Claus

<v:page.menu entryLevel="0" classHasSubpages="has-dropdown"></v:page.menu>

When a page has a subpage the class "has-dropdown" is added, as expected.

When I set the subpage to "hide in menus", the class "has-dropdown" is added as well. I would expect, that no class is added in that case.

I started building fluidcontent_zurb! It will take some time until it is feature complete.

v:asset.script: mix "fluid" with static assets

Hi Claus

I have an issue with the following case:

<v:asset.script path="EXT:fluidcontent_zurb/Resources/Public/javascripts/foundation/jquery.foundation.orbit.js" name="orbit" standalone="0" dependencies="jquery"/>
<v:asset.script path="EXT:fluidcontent_zurb/Resources/Public/javascripts/elements/orbit-init.js" name="orbit-init" standalone="0" fluid="1" arguments="{id:id}" dependencies="jquery,orbit"/>

I do get an included script at the bottom of the body:

<script type="text/javascript" src="typo3temp/vhs-assets-orbit-orbit-init.js"></script>

But inside this javascript file the first script (name="orbit") is missing.

If I set fluid=0 in the second asset (orbit-init.js) both scripts get included in vhs-assets-orbit-orbit-init.js.

page.breadCrumb fails when using levels

Im trying to achieve having a section header from a certain level in my page-tree.

In the old TS HMENU days i would use specials rootline setting an entrypoint and a levels-equivalent. Doing this in v:page.breadcrumb doesn't work as expected - it somehow starts functioning like a menu showing siblings etc.

Is this a bug, or is there another way to limit breadcrumb levels?

See the bug in action by having a 4 levels deep pagetree and using this

<v:page.breadCrumb entryLevel="1" levels="3" />

[SUPPORT] Collapse sub menus

I have a submenu composed by three levels, see in action. I would like to have them collapse by default when I am on this page ("Microdata", ... should go away) but expanded when I am on this one.

Do you see anything wrong in the current implementation? Have I missed something?

I have played with attribute "levels" and "expandAll" but none of them have brought success. I also tried generating the sub-menu without the sub loop as an attempt.

Thanks.

[SUPPORT] Generating a sitemap

Look at the footer of http://bootstrap.ecodev.ch/. I would like to display a kind of sitemap of the website like it was done for this website (check bottom). The snippet below displays the pages (entryLevel=0) but not the subpages (levels=1 and greater). I could use the v:page.menu.directory but that wouldn't be as flexible since top pages would need to be hard-coded. Is something missing in the snippet below? Do I need to make a double iteration?

<v:page.menu entryLevel="0" levels="2" includeSpacers="FALSE" expandAll="TRUE"
             useShortcutData="TRUE">
    <f:if condition="{menu}">

        <f:for each="{menu}" as="submenuPage" iteration="iteration">
            <div class="span2">
                <ul class="unstyled">
                    <li class="{submenuPage.class}">
                        <a tabindex="{iteration.cycle -> v:math.sum(b: 200)}"
                           href="{submenuPage.link}" class="{submenuPage.class}">
                            {submenuPage.title}
                        </a>
                    </li>
                </ul>
            </div>
        </f:for>
    </f:if>
</v:page.menu>

File inclusion in PHP for AssetViewHelpers

Would be great to have a simple possibility for calling Script- and StyleViewHelper inside of own PHP classes.

There are a lot of ViewHelpers in old fed package, where scripts get included through common TYPO3 feature. Would be great if all could get replaced by the new vhs feature.

Cheers domi

v:asset.script in header.. too below page.headerData

hi.. i made a site including all js by v:asset.script

the problem is that the 1st main js is jQuery

and i'm adding manually some JS in the header (also formhandler does it)

but all page.headerData. gets rendered ABOVE all the v:assets.scripts.
so my custom jQuery js doesn't work

any idea how this can be solved?

can i ask VHS to render all assets BEFORE the page.headerData. ?

title is overwritten in v:page.menu when navigation-title is in use

And its not available elsewhere in the array I get..

Maybe we should add a field with the concept of the rendered title for use when building menues this way, so that the title field can be preserved for the actual title value of the page...

Recreate the bug like this - make sure to have a page in the requested level that uses navigation-title...

<v:page.menu entryLevel="0">
    <ul>
        <f:for each="{menu}" as="curPage">
            <li class="{curPage.class}">
                <a href="{curPage.link}">
                    {curPage.title}
                </a>
            </li>
        </f:for>
    </ul>
</v:page.menu>

Which variables are available in vhs:asset.script

Hi Claus

awesome work! Finally I can get rid of CDATA in my javascript.

I'm not sure if I have understood your statement:
"The variables which are available will be the exact variables which are available where the Asset is placed"
At the moment I have to pass the variable id in the arguments attribute. If I omit the arguments attribute in the following case, it doesn't work.

Elements/Orbit.html

<flux:flexform.field.input name="id" label="ID of Slider, e.g. 'featured'"/>
<v:asset.script path="EXT:fluidcontent_zurb/Resources/Public/javascripts/elements/orbit-init.js" name="orbit-init"
                        fluid="1" arguments="{id: '{id}'} />

orbit-init.js:

$(document).ready(function () {
    $('#{id}').orbit();
});

MenuViewHelper: Bug if pages.l18n_cfg=2

If sys_language_uid !=0, the menu viewhelper doesn't render any pages, which have l18n_cfg set to "2" because of a wrong codeline in vhs/Classes/ViewHelpers/Page/Menu/AbstractMenuViewHelper.php on line 307:

instead of:
} elseif ($page['l18n_cfg'] == 2 && $GLOBALS['TSFE']->sys_language_uid != 0) {

should be:
} elseif ($page['l18n_cfg'] == 2 && $GLOBALS['TSFE']->sys_language_uid != 0 && !$this->pageSelect->getPageOverlay($page['uid'], $GLOBALS['TSFE']->sys_language_uid)) {

Bug in v:page.menu when using "levels"

AbstractMenuViewHelper.php:
Its seems the $rootLine that is used in the isActive() function is somehow corrupted after level 2. That makes $page['active'] turn FALSE and so doesn't expand subMenues.

page.content.render depends on flux page field

On a TYPO3 4.5 instance (no flux or fed ever installed).

Usage of <v:page.content.render /> yields the following SQL error:

caller t3lib_DB::exec_SELECTquery
ERROR Unknown column 'tx_flux_column' in 'where clause'
lastBuiltQuery SELECT uid FROM tt_content WHERE pid = '8399' AND colPos = '0' AND (tx_flux_column = '' OR tx_flux_column IS NULL) AND tt_content.deleted=0 AND tt_content.t3ver_state<=0 AND tt_content.pid<>-1 AND tt_content.hidden=0 AND tt_content.starttime<=1353427260 AND (tt_content.endtime=0 OR tt_content.endtime>1353427260) AND (tt_content.fe_group='' OR tt_content.fe_group IS NULL OR tt_content.fe_group='0' OR FIND_IN_SET('0',tt_content.fe_group) OR FIND_IN_SET('-1',tt_content.fe_group)) AND (sys_language_uid IN (-1,0) OR (sys_language_uid = '0' AND l18n_parent = '0')) GROUP BY uid ORDER BY sorting ASC
debug_backtrace require(/typo3/sysext/cms/tslib/index_ts.php),/index.php#84 // include(/typo3/sysext/cms/tslib/pagegen.php),/typo3/sysext/cms/tslib/index_ts.php#451 // TSpagegen::renderContent#76 // tslib_cObj->cObjGet#319 // tslib_cObj->cObjGetSingle#717 // tslib_content_User->render#770 // tslib_cObj->callUserFunction#56 // call_user_func_array#6394 // tx_templavoila_pi1->main_page# // tx_templavoila_pi1->renderElement#224 // tx_templavoila_pi1->processDataValues#361 // tslib_cObj->cObjGetSingle#642 // tslib_content_FluidTemplate->render#770 // Tx_Fluid_View_AbstractTemplateView->render#159 // Tx_Fluid_Core_Parser_ParsingState->render#175 // Tx_Fluid_Core_Parser_SyntaxTree_RootNode->evaluate#91 // Tx_Fluid_Core_Parser_SyntaxTree_AbstractNode->evaluateChildNodes#38 // Tx_Fluid_Core_Parser_SyntaxTree_ViewHelperNode->evaluate#48 // Tx_Fluid_Core_ViewHelper_AbstractViewHelper->initializeArgumentsAndRender#181 // Tx_Fluid_Core_ViewHelper_AbstractViewHelper->callRenderMethod#231 // call_user_func_array#243 // Tx_Fluid_ViewHelpers_RenderViewHelper->render# // Tx_Fluid_View_AbstractTemplateView->renderSection#91 // Tx_Fluid_Core_Parser_SyntaxTree_ViewHelperNode->evaluate#219 // Tx_Fluid_Core_ViewHelper_AbstractViewHelper->initializeArgumentsAndRender#181 // Tx_Fluid_Core_ViewHelper_AbstractViewHelper->callRenderMethod#231 // call_user_func_array#243 // Tx_Fluid_ViewHelpers_SectionViewHelper->render# // Tx_Fluid_Core_ViewHelper_AbstractViewHelper->renderChildren#110 // Tx_Fluid_Core_Parser_SyntaxTree_AbstractNode->evaluateChildNodes#272 // Tx_Fluid_Core_Parser_SyntaxTree_ViewHelperNode->evaluate#54 // Tx_Fluid_Core_ViewHelper_AbstractViewHelper->initializeArgumentsAndRender#181 // Tx_Fluid_Core_ViewHelper_AbstractViewHelper->callRenderMethod#231 // call_user_func_array#243 // Tx_Vhs_ViewHelpers_Page_Content_RenderViewHelper->render# // Tx_Vhs_ViewHelpers_Page_Content_GetViewHelper->getContentRecords#54 // t3lib_DB->exec_SELECTquery#129 // t3lib_DB->debug#247

[FEATURE] Make menu rendering recursively.

The Use Case is to display a menu like here (on the right). Sub-pages should not be displayed if parent page is not in root line. Exemple: "Microdata" page should only by rendered if a User has clicked on "Semantic Web"

The current implementation works and looks as this. However, it is pretty verbose and not the easiest to maintain.

Following this discussion, I am opening a feature request which would aim simplifying the Markup. Introducing an autoRender attribute was suggested. While making the rending recursive, it would be neat to have a variable indicating the level of the recursion enabling condition rendering.

# assuming {level} is an internal variable name of the recursion.
<ul class="{f:if(condition: {level} == 1, then: 'nav nav-list affix-top'), else='submenu-{level}'}">

We would also need a marker within the template where to append the HTML

 # __CONTENT would act as placeholder for sub menus content
<ul>
    <li class="{menuPage.class}">
        <a tabindex="{iteration.cycle -> v:math.sum(b: 100)}"
           href="{menuPage.link}" class="{menuPage.class}">
            <i class="icon-chevron-right"></i>{menuPage.title}
        </a>

        {__CONTENT}
    </li>
</ul>

Don't know what is feasible here...

uncached / cached name dependencies does not match in AssetViewHelper

I think two cases are currently not working properly:

1:
jquery is in cached surrounding
jquery is uncached surrounding
Even if I choose a name="jquery" and the path is the same, the file gets included 2 times

2:
jquery is in cached surrounding
myplugin is in uncached surrounding with dependencies="jquery"
Results into an endless loop and site never gets loaded because the script is waiting for jquery.

Not sure about a solution and how the two hooks are working...But maybe would it be possible to call only the last hook, or would it be a performance leak?

Cheers Domi

Fatal error: Class 'Tx_Vhs_ViewHelpers_Asset_AbstractAssetViewHelper' not found

This error shows up when using the "vhs" extension in TYPO3 4.5.23 (most recent 4.5 version).

Reason: The Classes are not defined in ext_autoload.php and no autoloader registry gets used. This is no problem with 4.7 and 6.0 as class files are tried to get loaded by the default autoloader by naming convention. But such a convention doesn't exist in 4.5

Solution: Change required TYPO3 version to 4.7 in ext_emconf.php or use autoloader registry if current T3 version is 4.5

page.breadcrumbs not rendering enclosing tag

I use <v:page.breadCrumb /> to render a breadcrumb menu. It get's rendered as single

  • items, but without the enclosing
      tag.

      Problem seems to be that in Tx_Vhs_ViewHelpers_Page_BreadCrumbViewHelper the tag is rendered into the variable $output. But this variable is not returned or used anymore.

  • Assets View Helper uses incorrect comment end

    The AssetViewHelper uses comments like "<!---- ... ----!>"

    There are two rather big issues with that:

    • The end of a comment has to be "-->" without the exclamation mark. Internet Explorer up to version 9 doesn't recognize "--!>" as the end of the comment and comments out the whole page.
    • Comments should not contain double dashes. I've seen older browsers (FF3 afaik) recognizing "--" as the end of a comment, even without the ">". So "<!----" may open and immediately close the comment.

    So I recommend using plain old "" as comments to avoid possible problems.

    __toString conversion for Domain Objects done too early

    Hi,

    it seems, that in the CacheViewHelper.php (line 88-92), the __toString method is used too early and produces a identity with a ":" in it, which is not allowed in Fluid.

    Solution: exchange the if-conditions in line 88 and 92 , so first test is on Domain Object and second test is on __toString method.

    Fatal Error AbstractAssetViewHelper not found in v4.5.22

    Hello Claus,

    I just discovered a Problem in my Project after activating vhs. I get this Fatal Error in FE: Fatal error: Class 'Tx_Vhs_ViewHelpers_Asset_AbstractAssetViewHelper' not found in /var/www/html/.../typo3conf/ext/vhs/Classes/ViewHelpers/AssetViewHelper.php on line 66

    I tried to drill down the problem, which breaks my FE. If line 6 in ext_localconf.php is commented out, the error is gone.

    I'm not sure, but probably in 4.5 extbase is not that far when it comes to setting SC_Options. What do you think?

    Regards

    Peter

    v:assets not in Header

    Hi Claus,

    I tried the new v:asset viewhelper:

        # Nothing
        <v:asset.style path="typo3conf/ext/ondigotemplate/Resources/Public/Css/Style.css" name="styles" standalone="1" />
        # Nothing
        <v:asset.style path="typo3conf/ext/ondigotemplate/Resources/Public/Css/Fancybox.css" name="fancyboxCss" standalone="1" />
        # Nothing, but witt changing allowMoveToFooter="1! it works (but inside the footer)
        <v:asset.script path="typo3conf/ext/ondigotemplate/Resources/Public/Js/modernizr-2.6.1.min.js" name="modernizr" standalone="1" allowMoveToFooter="0" />
        # works fine
        <v:asset.script path="typo3conf/ext/ondigotemplate/Resources/Public/Js/jquery-1.8.3.min.js" name="jquery" standalone="1" />
        # works fine
        <v:asset.script path="typo3conf/ext/ondigotemplate/Resources/Public/Js/Fancybox.js" name="fancyboxJs" dependencies="jquery" />
    

    There seems to be a problem to add assets to my header. Do you have any idea?

    The concept behind the assets looks great. Now it's fantastic easy to write really good Websites.

    Thx again, Philipp

    File name too long in asset

    There is an issue, if you include a lot (or simply all) files of a website through AssetViewHelper. PHP error will show up with: File name too long: access to (...).

    If for all files a name is getting set, the names get shorter, but still it can be a huge name of string. I think it would be nice to have an option of getting only one hashed string as name or for debug purpose all names inside of the generated typo3temp file.

    Cheers! Dominic

    Recommend Projects

    • React photo React

      A declarative, efficient, and flexible JavaScript library for building user interfaces.

    • Vue.js photo Vue.js

      🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

    • Typescript photo Typescript

      TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

    • TensorFlow photo TensorFlow

      An Open Source Machine Learning Framework for Everyone

    • Django photo Django

      The Web framework for perfectionists with deadlines.

    • D3 photo D3

      Bring data to life with SVG, Canvas and HTML. 📊📈🎉

    Recommend Topics

    • javascript

      JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

    • web

      Some thing interesting about web. New door for the world.

    • server

      A server is a program made to process requests and deliver data to clients.

    • Machine learning

      Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

    • Game

      Some thing interesting about game, make everyone happy.

    Recommend Org

    • Facebook photo Facebook

      We are working to build community through open source technology. NB: members must have two-factor auth.

    • Microsoft photo Microsoft

      Open source projects and samples from Microsoft.

    • Google photo Google

      Google ❤️ Open Source for everyone.

    • D3 photo D3

      Data-Driven Documents codes.