Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

0 Пользователей и 1 Гость просматривают эту тему.
  • 5 Ответов
  • 1724 Просмотров
*

seleckiy

  • Новичок
  • 5
  • 0 / 0
Не устанавливается 1.5.14
« : 28.03.2010, 18:42:22 »
Закачал файлы на фтп, захожу на сайт, перебрасывает на /installation/index.php
И вот что я вижу вместо установки: Fatal error: Class 'JView' not found in /home/je1.ru/wowserv/sites/www/installation/installer/views/install/view.php on line 25

Прилагаю файл view.php в котором 25 строка с ошибкой
Код: php
<?php
/**
 * @version $Id: view.php 10381 2008-06-01 03:35:53Z pasamio $
 * @package Joomla
 * @subpackage Installation
 * @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
 * @license GNU/GPL, see LICENSE.php
 * Joomla! is free software. This version may have been modified pursuant
 * to the GNU General Public License, and as distributed it includes or
 * is derivative of works licensed under the GNU General Public License or
 * other free or open source software licenses.
 * See COPYRIGHT.php for copyright notices and details.
 */

// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

/**
 * @package Joomla
 * @subpackage Installation
 */

jimport('joomla.application.component.view');

class JInstallationView extends JView
{
/**
* The installation steps
*
* @var array
* @access protected
* @since 1.5
*/
var $_steps = null;

/**
* The templabe object
*
* @var object
* @access protected
* @since 1.5
*/
var $_template = null;

/**
* Language page
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function chooseLanguage()
{
$steps =& $this->getSteps();

$model =& $this->getModel();
$lists =& $model->getData('lists');

$tmpl =& $this->getTemplate( 'language.html' );

$steps['lang'] = 'on';

$tmpl->addVars( 'stepbar', $steps, 'step_' );
$tmpl->addRows( 'lang-options', $lists['langs'] );

return $this->display();
}

/**
* Create a template object
*
* @return boolean True if successful
* @access private
* @since 1.5
*/
function _createTemplate( $bodyHtml = null, $mainHtml = 'page.html' )
{

jimport('joomla.template.template');

$this->_template = new JTemplate();
$this->_template->applyInputFilter('ShortModifiers');

// load the wrapper and common templates
$this->_template->setRoot( JPATH_BASE . DS . 'template' . DS. 'tmpl' );
$this->_template->readTemplatesFromFile( $mainHtml );

if ($bodyHtml) {
$this->_template->setAttribute( 'body', 'src', $bodyHtml );
}
}

/**
* The DB Config page
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function dbConfig()
{
$steps =& $this->getSteps();
$model =& $this->getModel();
$lists =& $model->getData('lists');
$tmpl =& $this->getTemplate( 'dbconfig.html' );

$steps['dbconfig'] = 'on';

$tmpl->addVars( 'stepbar', $steps, 'step_' );
$tmpl->addRows( 'dbtype-options', $lists['dbTypes'] );

return $this->display();
}

/**
* Display the template
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function display()
{
$model =& $this->getModel();
$tmpl =& $this->getTemplate();
$lang =& JFactory::getLanguage();
$vars =& $model->getVars();

$tmpl->addVar( 'buttons', 'direction', $lang->isRTL()? 'rtl' : 'ltr');
$tmpl->addVar( 'body', 'lang', $lang->getTag() );
$tmpl->addVars( 'body', $vars, 'var_' );

echo $tmpl->fetch( 'page' );

return true;
}

/**
* Report an error to the user
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function error()
{
$steps =& $this->getSteps();
$model =& $this->getModel();
$vars =& $model->getVars();
$tmpl =& $this->getTemplate( 'error.html' );

$msg = $model->getError();
$back = $model->getData('back');
$xmsg = $model->getData('errors');

$tmpl->addVars( 'stepbar', $steps, 'step_' );
$tmpl->addVar( 'messages', 'message', $msg );

if ($xmsg) {
$tmpl->addVar( 'xmessages', 'xmessage', $xmsg );
}

$tmpl->addVar( 'buttons', 'back', $back );
$tmpl->addVars( 'body', $vars, 'var_' );

return $this->display();
}

/**
* The the final page
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function finish()
{
$steps =& $this->getSteps();
$model =& $this->getModel();
$vars =& $model->getVars();
$tmpl =& $this->getTemplate( 'finish.html' );

$buffer = $model->getData('buffer');

$steps['finish'] = 'on';

$tmpl->addVars( 'stepbar', $steps, 'step_' );

if ($buffer) {
$tmpl->addVar( 'configuration-error', 'buffer', $buffer );
}

return $this->display();
}

/**
* Show the FTP config page
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function ftpConfig()
{
$steps =& $this->getSteps();
$model =& $this->getModel();

$tmpl =& $this->getTemplate( 'ftpconfig.html' );

$steps['ftpconfig'] = 'on';

$tmpl->addVars( 'stepbar', $steps, 'step_' );

return $this->display();
}

/**
* Get the installation steps
*
* @return array
* @access protected
* @since 1.5
*/
function & getSteps()
{
if ( is_null($this->_steps) )
{
$this->_steps = array(
'lang' => 'off',
'preinstall' => 'off',
'license' => 'off',
'dbconfig' => 'off',
'ftpconfig' => 'off',
'mainconfig' => 'off',
'finish' => 'off'
);
}

return $this->_steps;
}

/**
* Get the template object
*
* @param string The name of the body HTML file
* @return patTemplate
* @access protected
* @since 1.5
*/
function & getTemplate( $bodyHtml = null )
{
static $current;

$change = false;

// Record the current template body
if ( is_null($current) && $bodyHtml)
{
$current = $bodyHtml;
$change = true;
}

// Check if we need to create the body, possibly anew
if ( is_null( $this->_template) || $change )
{
$this->_createTemplate($bodyHtml);
}

return $this->_template;
}

/**
* The license page
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function license()
{
$steps =& $this->getSteps();
$model =& $this->getModel();
$tmpl =& $this->getTemplate( 'license.html' );

$steps['license'] = 'on';

$tmpl->addVars( 'stepbar', $steps, 'step_' );

return $this->display();
}

/**
* The main configuration page
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function mainConfig()
{
$steps =& $this->getSteps();
$model =& $this->getModel();
$tmpl =& $this->getTemplate( 'mainconfig.html' );

$steps['mainconfig'] = 'on';

$tmpl->addVars( 'stepbar', $steps, 'step_' );

$tmpl->addVar( 'buttons', 'previous', 'ftpconfig');
// $tmpl->addRows( 'folder-perms', $lists['folderPerms'] );

/*
* prepare migration encoding selection
*/
$encodings = array( 'iso-8859-1','iso-8859-2','iso-8859-3','iso-8859-4','iso-8859-5','iso-8859-6','iso-8859-7','iso-8859-8','iso-8859-9','iso-8859-10','iso-8859-13','iso-8859-14','iso-8859-15','cp874','windows-1250','windows-1251','windows-1252','windows-1253','windows-1254','windows-1255','windows-1256','windows-1257','windows-1258','utf-8','big5','euc-jp','euc-kr','euc-tw','iso-2022-cn','iso-2022-jp-2','iso-2022-jp','iso-2022-kr','iso-10646-ucs-2','iso-10646-ucs-4','koi8-r','koi8-ru','ucs2-internal','ucs4-internal','unicode-1-1-utf-7','us-ascii','utf-16' );
$tmpl->addVar( 'encoding_options', 'value', $encodings );
$max_upload_size = min(JInstallationHelper::let_to_num(ini_get('post_max_size')), JInstallationHelper::let_to_num(ini_get('upload_max_filesize')));
$tmpl->addVar( 'uploadsize', 'maxupload', JText::sprintf('UPLOADFILESIZE',(number_format($max_upload_size/(1024*1024), 2))."MB."));
return $this->display();
}

/**
* The the pre-install info page
*
* @return boolean True if successful
* @access public
* @since 1.5
*/
function preInstall()
{
$steps =& $this->getSteps();
$model =& $this->getModel();
$lists =& $model->getData('lists');

$version = new JVersion();
$tmpl =& $this->getTemplate( 'preinstall.html' );

$steps['preinstall'] = 'on';

$tmpl->addVars( 'stepbar', $steps, 'step_' );
$tmpl->addVar( 'body', 'version', $version->getLongVersion() );

$tmpl->addRows( 'php-options', $lists['phpOptions'] );
$tmpl->addRows( 'php-settings', $lists['phpSettings'] );

return $this->display();
}

/**
* Remove directory messages
*
* @return Boolean True if successful
* @access public
* @since 1.5
*/
function removedir()
{
$model =& $this->getModel();

$this->_createTemplate('', 'removedir.html');
$tmpl = $this->_template;

#$tmpl =& $this->getTemplate( 'removedir.html' );
return $this->display();
}


function migrateScreen() {
$steps =& $this->getSteps();
$model =& $this->getModel();

$tmpl =& $this->getTemplate( 'migration.html' );
$scriptpath =& $model->getData('scriptpath');
$tmpl->addVars( 'stepbar', $steps, 'step_' );
$tmpl->addVar( 'migration', 'migration', JRequest::getVar( 'migration', 0, 'post', 'bool' ));
$tmpl->addVar( 'buttons', 'previous', 'mainconfig');
return $this->display();
}
}

?>
*

Aleks_El_Dia

  • Moderator
  • 3671
  • 353 / 0
  • AEDStudio Joomla! Direction
Re: Не устанавливается 1.5.14
« Ответ #1 : 28.03.2010, 19:04:39 »
Какая версия PHP на хостинге?
Спам придумали боги в отместку за наши молитвы (с) Рома Воронежский
На молоко: Z369038872422 || R210017695494 || U247040729215 || ЯД 410011288250383
Мигрирую сайты, переношу расширения J!1.0->J!1.5->J!2.5. Более 50 успешных миграций.
*

seleckiy

  • Новичок
  • 5
  • 0 / 0
Re: Не устанавливается 1.5.14
« Ответ #2 : 28.03.2010, 19:11:30 »
php5, до этого уже ставил Joomla но версии 1.0.13 и все было отлично, сразу же установилась.. Снес ее полностью и залил эту..
Если нужно точно, то php5.3
« Последнее редактирование: 28.03.2010, 19:23:02 от seleckiy »
*

seleckiy

  • Новичок
  • 5
  • 0 / 0
Re: Не устанавливается 1.5.14
« Ответ #3 : 28.03.2010, 19:53:13 »
Помогите.. я уже 2 часа об стенку бьюсь не могу понять в чем дело..
*

THE KILLERS

  • Давно я тут
  • 932
  • 28 / 0
Re: Не устанавливается 1.5.14
« Ответ #4 : 28.03.2010, 20:19:38 »
а дистриб откуда качал? может дистриб битый?
*

seleckiy

  • Новичок
  • 5
  • 0 / 0
Re: Не устанавливается 1.5.14
« Ответ #5 : 28.03.2010, 20:42:04 »
Отсюда и качал.. щас снова удаляю и скачал новую, с joomla.ru
Весь день убил сегодня..
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не устанавливается Akeeba Backup

Автор Andru

Ответов: 3
Просмотров: 4133
Последний ответ 11.12.2012, 14:57:08
от Sliapy
ри редактировании материала не устанавливается ПОДРОБНЕЕ.

Автор lena.x27

Ответов: 1
Просмотров: 928
Последний ответ 05.02.2012, 19:52:15
от io77
Не устанавливается компонент

Автор gru

Ответов: 2
Просмотров: 1349
Последний ответ 18.11.2010, 12:42:00
от shima
Не устанавливается Joomlapack

Автор afina2009

Ответов: 1
Просмотров: 1913
Последний ответ 29.09.2010, 22:22:19
от Aleks_El_Dia
где устанавливается и-мейл, для стандартной джумловской формы контактов?

Автор auto-master

Ответов: 2
Просмотров: 1350
Последний ответ 16.06.2010, 01:52:15
от valagoff