示例#1
0
 public static function addNewstoSitemap($params)
 {
     $mainArticle = rex_asd_news_config::getConfig('article');
     $mainArticle = new rex_article($mainArticle);
     foreach (rex_asd_news::getByWhere(array('clang' => null)) as $news) {
         /** @var rex_asd_news $news */
         $fragment = array('loc' => $news->getUrl(), 'lastmod' => $news->getPublishDate()->format('c'), 'changefreq' => self::calc_article_changefreq($news->getPublishDate()->getTimestamp()), 'priority' => self::calc_article_priority($mainArticle->getValue('id'), $mainArticle->getValue('clang'), $mainArticle->getValue('path') . '|' . $news->getValue('id')));
         $params['subject'][rex_asd_news_config::getName()][] = $fragment;
     }
     return $params['subject'];
 }
示例#2
0
 /**
  * @param string $file
  * @return string
  */
 public static function getModulCode($file)
 {
     $file = rex_path::addon(rex_asd_news_config::getName(), 'modules/' . $file);
     return file_get_contents($file);
 }
 /**
  * return the redaxo url for the list
  * @param $clang
  * @return string
  */
 private static function getBaseUrl($clang)
 {
     return 'index.php?list=232cc606fc1a5fb5cf5badfc8e360ae0&page=' . rex_asd_news_config::getName() . '&subpage=news&clang=' . $clang . '&func=';
 }
示例#4
0
$metaCols = false;
foreach ($rows as $row) {
    if ($row['name'] == 'category') {
        $metaCols = true;
        break;
    }
}
if (!OOAddon::isAvailable('metainfo')) {
    $REX['ADDON']['update'][rex_asd_news_config::getName()] = 0;
    $REX['ADDON']['updatemsg'][rex_asd_news_config::getName()] = 'Metainfo Addon nicht gefunden';
}
if (OOAddon::isAvailable('metainfo') && $metaCols) {
    include_once __DIR__ . '/classes/metainfo/rex_asd_metainfo_install.php';
    rex_asd_metainfo_install::setProperty();
    if ($error = rex_asd_metainfo_install::addFields()) {
        $REX['ADDON']['update'][rex_asd_news_config::getName()] = 0;
        $REX['ADDON']['updatemsg'][rex_asd_news_config::getName()] .= $error;
    } else {
        // Einträge Übernehmen
        $sql->setQuery('UPDATE `' . rex_asd_news_config::getTable() . '` SET
        `asd_category` = `category`,
        `asd_picture` = `picture`,
        `asd_text` = `text`');
        // Alte Felder löschen
        $sql->setQuery('ALTER TABLE `' . rex_asd_news_config::getTable() . '`
            DROP `category`,
            DROP `picture`,
            DROP `text`
        ');
    }
}
示例#5
0
    $func = rex_request('func');
    if ($page == rex_asd_news_config::getName()) {
        require_once rex_path::addon(rex_asd_news_config::getName(), 'classes/rex_asd_news_ajaxHandler.php');
        rex_register_extension('PAGE_HEADER', 'asd_news_setjQueryTags');
        // Ajax Publish
        if ($func == 'publish') {
            $id = rex_post('id', 'int');
            $clang = rex_post('clang', 'int');
            try {
                $time = new DateTime(rex_post('time'));
            } catch (Exception $e) {
                $time = new DateTime();
            }
            echo rex_asd_news_ajaxHandler::publishNews($id, $clang, $time);
            exit;
        }
    }
    // add / remove News if lang added or removed
    rex_register_extension('CLANG_ADDED', 'asd_news_addClang');
    rex_register_extension('CLANG_DELETED', 'asd_news_deleteClang');
    // check if image in use
    rex_register_extension('OOMEDIA_IS_IN_USE', 'rex_asd_news_utils::isImageInUse');
    // autoload Plugins
    $plugins = OOPlugin::getAvailablePlugins(rex_asd_news_config::getName());
    foreach ($plugins as $name) {
        if (file_exists(rex_path::plugin(rex_asd_news_config::getName(), $name, 'pages' . DIRECTORY_SEPARATOR . $name))) {
            $I18N->appendFile(rex_path::plugin(rex_asd_news_config::getName(), $name, 'lang' . DIRECTORY_SEPARATOR));
            array_push($REX['ADDON'][rex_asd_news_config::getName()]['SUBPAGES'], array($name, $I18N->msg(rex_asd_news_config::getName() . '_' . $name)));
        }
    }
}
示例#6
0
<?php

$prefix = 'asd_';
$metaTable = rex_asd_news_config::getTable();
/**
 * MetaForm Addon
 * @author markus[dot]staab[at]redaxo[dot]de Markus Staab
 *
 * @package redaxo4
 * @version svn:$Id$
 */
require_once rex_path::addon('metainfo', 'classes/class.rex_table_expander.inc.php');
require_once rex_path::addon(rex_asd_news_config::getName(), 'classes/metainfo/rex_asd_a62_tableExpander.php');
require_once rex_path::addon(rex_asd_news_config::getName(), 'classes/metainfo/rex_form_asd_restrictions_element.php');
//------------------------------> Parameter
if (empty($prefix)) {
    trigger_error('Fehler: Prefix nicht definiert!', E_USER_ERROR);
    exit;
}
if (empty($metaTable)) {
    trigger_error('Fehler: metaTable nicht definiert!', E_USER_ERROR);
    exit;
}
$Basedir = dirname(__FILE__);
$field_id = rex_request('field_id', 'int');
//------------------------------> Feld loeschen
if ($func == 'delete') {
    $field_id = rex_request('field_id', 'int', 0);
    if ($field_id != 0) {
        if (a62_delete_field($field_id)) {
            echo rex_info($I18N->msg('minfo_field_successfull_deleted'));
示例#7
0
require rex_path::src('layout' . DIRECTORY_SEPARATOR . 'top.php');
rex_title($I18N->msg('asd_news'), $REX['ADDON']['pages'][rex_asd_news_config::getName()]);
$page = rex_request('page', 'string');
$subpage = rex_request('subpage', 'string');
$func = rex_request('func', 'string');
if (!$subpage) {
    $subpage = 'news';
}
$BaseDir = rex_asd_news_config::getBaseUrl();
$baseDirFunc = rex_asd_news_config::getBaseUrl($func);
if (!rex_asd_news_config::getConfig('article')) {
    echo rex_warning($I18N->msg('asd_news_no_article_selected'));
}
switch ($subpage) {
    case 'news':
    case 'rubric':
    case 'faq':
        $path = rex_path::addon(rex_asd_news_config::getName(), 'pages' . DIRECTORY_SEPARATOR . $subpage . '.php');
        break;
    case 'settings':
    case 'metainfo':
        if ($REX['USER']->hasPerm(rex_asd_news_config::getName() . '[' . $subpage . ']') || $REX['USER']->isAdmin()) {
            $path = rex_path::addon(rex_asd_news_config::getName(), 'pages' . DIRECTORY_SEPARATOR . $subpage . '.php');
        }
        break;
    default:
        $path = rex_path::plugin(rex_asd_news_config::getName(), $subpage, 'pages' . DIRECTORY_SEPARATOR . $subpage . '.php');
        break;
}
require $path;
require rex_path::src('layout' . DIRECTORY_SEPARATOR . 'bottom.php');
示例#8
0
  `createdAt` DATETIME NOT NULL,
  `createdBy` int(11) NOT NULL,
  `updatedAt` DATETIME NOT NULL,
  `updatedBy` int(11) NOT NULL,
  PRIMARY KEY (`news_id`),
  UNIQUE KEY (`id`, `clang`)
);');
$sql->setQuery('
CREATE TABLE IF NOT EXISTS `' . rex_asd_news_config::getTableCategory() . '` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
);');
rex_asd_news_config::createDataConfigIfNotExists();
if ($sql->hasError()) {
    $msg = 'MySQL-Error: ' . $sql->getErrno() . '<br />';
    $msg .= $sql->getError();
    $REX['ADDON']['install'][rex_asd_news_config::getName()] = 0;
    $REX['ADDON']['installmsg'][rex_asd_news_config::getName()] .= $msg;
}
if (!OOAddon::isAvailable('metainfo')) {
    $REX['ADDON']['install'][rex_asd_news_config::getName()] = 0;
    $REX['ADDON']['installmsg'][rex_asd_news_config::getName()] .= 'Metainfo Addon nicht installiert';
} else {
    include_once rex_path::addon(rex_asd_news_config::getName(), 'classes/metainfo/rex_asd_metainfo_install.php');
    rex_asd_metainfo_install::setProperty();
    if ($error = rex_asd_metainfo_install::addFields()) {
        $REX['ADDON']['install'][rex_asd_news_config::getName()] = 0;
        $REX['ADDON']['installmsg'][rex_asd_news_config::getName()] .= $error;
    }
}