Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   помогите с условиями (http://forum.typo3.ru/showthread.php?t=7896)

GAZok 04.08.2009 22:31

помогите с условиями
 
Есть кусок кода который увеличивает значение на 1:
Код:

before.cObject=LOAD_REGISTER
  before.cObject{
                    # Counter for the mainmenu points
    mainMenuNumber.cObject=TEXT
    mainMenuNumber.cObject{
      value={register:mainMenuNumber}+1
      insertData=1

    }
    mainMenuNumber.prioriCalc=intval
  }

Но, необходимо его расширить дополнительными условиями. Чтобы счет был не 1 2 3 4 5 6, а 6 1 2 3 4 5. Говоря на языке РНР, думаю, это должно быть приблизительно вот так:

Код:

  before.cObject=LOAD_REGISTER
  before.cObject{
                    # Counter for the mainmenu points
    mainMenuNumber.cObject=TEXT
    mainMenuNumber.cObject{



      if({register:mainMenuNumber} == 0){
                value = 6
          }elseif({register:mainMenuNumber} == 6){
                value = 1
          }else{
        value = {register:mainMenuNumber}+1
          }




      insertData=1
    }
    mainMenuNumber.prioriCalc=intval
  }

Как перевести это на язык TYPO3 ?

Sergey M Nikitin 05.08.2009 10:25

Как такой вариант ?
 
Код:

10 = CASE
10{
  key.data = register:mainMenuNumber
  0 = TEXT
  0.value = 6
  6 = TEXT
  6.value = 1
  default = TEXT
  default{
      value = {register:mainMenuNumber}+1
      insertData = 1
  }
  prioriCalc=intval
}

P.S. Пример может не работать (не проверял, из-за (не хватки)/(не в том месте) скажем prioriCalc=intval), но в теории должен.

GAZok 02.09.2009 23:06

Что то не срабатывало как бы не пробовал. Думаю, проблема в моем знании TypoScript. Удалось решить проблемку таким вот туповатим образом:
Код:

before.cObject=LOAD_REGISTER
 before.cObject{

    secondMenuNumber.cObject = CASE
    secondMenuNumber.cObject{
      key.data = register:secondMenuNumber
      6 = TEXT
      6.value = 1
      1 = TEXT
      1.value = 2
      2 = TEXT
      2.value = 3
      3 = TEXT
      3.value = 4
      4 = TEXT
      4.value = 5
      default = TEXT
      default.value = 6
    }
    secondMenuNumber.prioriCalc=intval
       
 }

спасибо за помощь!


Часовой пояс GMT +4, время: 08:31.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot