load( IPS_ROOT_PATH . 'setup/xml/writeablefiles.xml' ); foreach( $xml->fetchElements( 'file' ) as $xmlelement ) { $data = $xml->fetchElementsFromRecord( $xmlelement ); if ( $data['path'] ) { $_path = DOC_IPS_ROOT_PATH . $data['path']; if ( ! file_exists( $_path ) ) { if ( $data['dir'] ) { if ( ! @mkdir( $_path, 0777, TRUE ) ) { $this->registry->output->addError( 'Директория не существует: "' . $data['path'] . '". Пожалуйста, создайте ее' ); } } else { $this->registry->output->addError( 'Файл не существует: "' . $data['path'] . '". Пожалуйста, создайте его' ); } } if ( ! is_writeable( $_path ) ) { if ( ! @chmod( $_path, 0777 ) ) { if ( is_dir( $_path ) ) { $this->registry->output->addError( 'Невозможна запись в директорию: "' . $data['path'] . '", измените права доступа к ней на 777' ); } else { $this->registry->output->addError( 'Невозможна запись в файл: "' . $data['path'] . '", измените права доступа к нему на 777' ); } } } } } if ( ! count( $this->registry->output->fetchErrors() ) ) { $filesOK = TRUE; } } catch( Exception $error ) { $filesOK = FALSE; $this->registry->output->addError( "Невозможно найти файл: " . IPS_ROOT_PATH . 'setup/xml/writeablefiles.xml' ); } } /* Set next action */ //$this->registry->output->setNextAction( 'apps' ); $this->registry->output->setNextAction( 'convert' ); /* Hide buttons? */ if ( $filesOK !== TRUE OR $extensionsOK != TRUE ) { $this->registry->output->setNextAction( '' ); $this->registry->output->setHideButton( TRUE ); } /* Simply return the requirements page */ $this->registry->output->setTitle( "Требования" ); $this->registry->output->addContent( $this->registry->output->template()->page_requirements( $filesOK, $extensionsOK, $extensionData, 'обновления' ) ); $this->registry->output->sendOutput(); } } ?>