2016-04-06 19 views
1

Birkaç hafta boyunca JtoolBarHelper yöntemlerinin nasıl çalıştığını anlamaya çalışıyorum.JToolBarHelper yöntemi nasıl çalışır?

Böyle görünümü sınıfında denilen yöntemleri görebilirsiniz: Burada

JToolBarHelper::addNew('controllername.methodname'); 

, JToolBarHelper en AddNew yöntemini şöyle kullanır:

public static function addNew($task = 'add', $alt = 'JTOOLBAR_NEW', $check = false) 
{ 
    $bar = JToolBar::getInstance('toolbar'); 
    // Add a new button. 
    $bar->appendButton('Standard', 'new', $alt, $task, $check); 
} 

Yani, şimdi JToolBar en getInstance yöntem haline kontrol:

new JToolBar($name);'u döndürür. Ayrıca kurucu fonksiyonunu kontrol etmeyi de sigortalıyorum. Ama hiçbir yerde addNew() yöntemi parametresinin nasıl ayrıldığını hiçbir yerde bulamadım. Joomla'nın, noktadan önceki ismin denetleyici adı olduğunu ve sonra da adının yöntem adı olduğunu bilir.

Ayrıca Joomla.submmitbutton('controllername.methodname'); için javascript kodu ile kontrol ettim ama bulamadık.

Yani, benim sorum JToolBarHelper yöntemine geçirilen parametrenin noktadan önceki denetleyici adı olduğunu biliyor mu?

cevap

0

Bu denetleyici bölme, Joomla çekirdek Denetleyici dosyaları tarafından işlenir. Dosya yolu, sürümlere göre farklıdır.

JControllerLegacy, libraries/joomla/controller/legacy.php, libraries/cms/controller/legacy.php veya libraries/legacy/controller/legacy.php'da tanımlanacaktır. en son Joomla sürümlerinde.

Eski sürümleri /libraries/joomla/application/component/controller.php

Umut kullanılan, bu anlamda yapar!

+0

Üzgünüz, bunu zaten biliyorum. Ama görev denetleyici adı ve yöntem adı nasıl ayrıldığını bilmek istedim. lütfen bunu yapan dosyaya işaret edebilir misiniz? –

+0

çekirdek denetleyici yolu farklı Joomla sürümüne göre farklıdır, en son sürümler 'libraries/legacy/controller/legacy.php' method' getInstance() ' –

+0

Joomla 2.5'iniz var mı? –