TS settings in scheduler task / storage pid [Gelöst]


  • 0 x
    16. 05. 2012, 17:24

    Hallo zusammen,

    ich habe eine scheduler task geschrieben, welche eine action eines Datenmodells bzw. Controllers aufruft. Das funktioniert auch so weit.
    Das Problem ist, daß ich nicht ohne weiteres an die storage pid komme, damit auf die richtigen Seiten zugegriffen wird.
    Also habe ich

    1. $GLOBALS['TT'] = new t3lib_timeTrackNull;
    2. $GLOBALS['TSFE'] = t3lib_div::makeInstance('tslib_fe', $GLOBALS['TYPO3_CONF_VARS'], 2, 0);
    3. $GLOBALS['TSFE']->sys_page = t3lib_div::makeInstance('t3lib_pageSelect');
    4. $GLOBALS['TSFE']->sys_page->init(TRUE);
    5. $GLOBALS['TSFE']->initTemplate();
    6. $GLOBALS['TSFE']->rootLine =
    7. $GLOBALS['TSFE']->sys_page->getRootLine(1, '');
    8. $GLOBALS['TSFE']->getConfigArray();

    eingebaut, um an die TS settings zu kommen.
    Somit habe ich jetzt zwar die storage pid, was mich jedoch stört ist die Zeile
    1. $GLOBALS['TSFE']->sys_page->getRootLine(1, '');

    Dort muß ja nun die id der Seite mit dem TS template angegeben werden, hier also die 1.
    Jetzt muß ich der Task zwar nicht mehr die storage pid übergeben, jetzt dafür aber die id der Seite mit dem Template. So richtig gewonnen habe ich also nichts.

    Gibt es da einen eleganteren Weg?

    Gruß Andre

  • rlp_immigrant rlp_immig...
    Padawan
    0 x
    58 Beiträge
    0 Hilfreiche Beiträge
    21. 05. 2012, 14:22 - Lösung

    Hi,
    ich nehme mal einfach an du nutzt
    t3lib_div::makeInstance('Tx_Extbase_Core_Bootstrap'); um Extbase sauber zu starten?

    Dann kannst du es einfach via Typoscript machen.

    1. module.tx_schiessmichtot.persistence.storagePid = XY

    Alternativ kannst du auch einfach in deinem Repository

    1. $query->getQuerySettings()->RespectStoragePage(false);

    machen und somit alle Datensätze abgreifen.

    Grüße
    Alex


  • 1
  • rlp_immigrant rlp_immig...
    Padawan
    0 x
    58 Beiträge
    0 Hilfreiche Beiträge
    21. 05. 2012, 14:22

    Hi,
    ich nehme mal einfach an du nutzt
    t3lib_div::makeInstance('Tx_Extbase_Core_Bootstrap'); um Extbase sauber zu starten?

    Dann kannst du es einfach via Typoscript machen.

    1. module.tx_schiessmichtot.persistence.storagePid = XY

    Alternativ kannst du auch einfach in deinem Repository

    1. $query->getQuerySettings()->RespectStoragePage(false);

    machen und somit alle Datensätze abgreifen.

    Grüße
    Alex

  • 1