Example #1
0
        $sql = "SELECT * FROM X$f_src WHERE NrArticle=$f_cur_preview";
        $rows = $g_ado_db->GetAll($sql);
        if (!count($rows)) {
            $errMsgs[] = getGS('There is no article associated with the preview.');
            $ok = false;
        }
    }

    if ($ok) {
        $numberOfTranslations = count($rows);
        $firstLanguage = $rows[0]['IdLanguage'];
        $curPreview = new Article($firstLanguage, $f_cur_preview);
        $articleCreator = new User($curPreview->getCreatorId());
        $articleData = $dest->getPreviewArticleData();
        $dbColumns = $articleData->getUserDefinedColumns(1, true);
        $srcArticleData = $curPreview->getArticleData();
        $srcDbColumns = $srcArticleData->getUserDefinedColumns(1, true);
        $getString = '';
        foreach ($_GET as $k => $v) {
            if ( ($k != 'f_action') && ($k != 'f_preview_action') ) {
                $getString .= "&$k=$v";
            }
        }
        foreach ($_POST as $k => $v) {
            if ( ($k != 'f_action') && ($k != 'f_prev_action') ) {
                $getString .= "&$k=$v";
            }
        }
        $getString = substr($getString, 1);

        $crumbs = array();
 /**
  * Set articletype data the legacy way
  *
  * @param \Article                                       $article Article
  * @param \Newscoop\IngestPluginBundle\Entity\Feed\Entry $entry   Entity
  */
 protected function setArticleDataLegacy(\Article $article, \Newscoop\IngestPluginBundle\Entity\Feed\Entry $entry)
 {
     // Get mapping data from ArticleTypeConfiguration service
     $mappingArray = $this->atcf->getArticleTypeMapping();
     $data = $article->getArticleData();
     foreach ($mappingArray as $fieldID => $method) {
         if (method_exists($entry, $method)) {
             $propertySet = $data->setProperty("F{$fieldID}", $entry->{$method}());
         }
     }
     $data->create();
 }
Example #3
0
$data->Results->f_article_title = $f_article_title;
$data->Results->f_message = $f_message;
$data->Results->f_creation_date = $f_creation_date;
$data->Results->f_publish_date = $f_publish_date;
$data->Results->f_comment_status = $f_comment_status;
if (!Input::IsValid()) {
    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), isset($BackLink) ? $Backlink : null);
    exit;
}
// Fetch article
$articleObj = new Article($f_language_selected, $f_article_number);
if (!$articleObj->exists()) {
    camp_html_display_error($translator->trans('No such article.', array(), 'articles'), $BackLink);
    exit;
}
$articleTypeObj = $articleObj->getArticleData();
$dbColumns = $articleTypeObj->getUserDefinedColumns(false, true);
$articleFields = array();
foreach ($dbColumns as $dbColumn) {
    if ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {
        $dbColumnParam = $dbColumn->getName() . '_' . $f_article_number;
    } else {
        $dbColumnParam = $dbColumn->getName();
    }
    if (isset($_REQUEST[$dbColumnParam])) {
        if ($dbColumn->getType() == ArticleTypeField::TYPE_TEXT && $dbColumn->getMaxSize() != 0 && $dbColumn->getMaxSize() != '') {
            $fieldValue = trim(Input::Get($dbColumnParam));
            $articleFields[$dbColumn->getName()] = mb_strlen($fieldValue, 'utf8') > $dbColumn->getMaxSize() ? substr($fieldValue, 0, $dbColumn->getMaxSize()) : $fieldValue;
        } else {
            $articleFields[$dbColumn->getName()] = trim(Input::Get($dbColumnParam));
        }
Example #4
0
     break;
 case 'context_box_preview_article':
     $return = array();
     foreach ($_REQUEST['args'] as $arg) {
         if (is_array($arg) && isset($arg['langId'])) {
             $f_language_selected = $arg['langId'];
         }
     }
     $articleId = $f_params['articleId'];
     if (!is_numeric($articleId)) {
         $articleIdArray = explode('_', $articleId);
         $articleId = $articleIdArray[1];
     }
     $articleObj = new Article($f_language_selected, $articleId);
     $articleInfo = array();
     $articleData = $articleObj->getArticleData();
     // Get article type fields.
     $dbColumns = $articleData->getUserDefinedColumns(false, true);
     foreach ($dbColumns as $dbColumn) {
         if (htmlspecialchars($dbColumn->getDisplayName(0)) == 'full_text') {
             if ($dbColumn->getType() == ArticleTypeField::TYPE_SWITCH) {
                 $value = $articleData->getProperty($dbColumn->getName()) ? $translator->trans('On', array(), 'library') : $translator->trans('Off', array(), 'library');
                 $return['body'] = $value;
             } else {
                 $return['body'] = $articleData->getProperty($dbColumn->getName());
             }
         }
     }
     $return['title'] = $articleObj->getTitle();
     $return['articleId'] = $articleId;
     $return['date'] = $articleObj->getCreationDate();
Example #5
0
 /**
  * Get article data
  *
  * @param Article $article
  * @return ArticleData
  */
 private function getArticleData(\Article $article)
 {
     $data = $article->getArticleData();
     if (!$data->exists()) {
         $data->create();
     }
     return $data;
 }
Example #6
0
 /**
  * Set article data
  *
  * @param Article $article
  * @param Newscoop\Entity\Ingest\Feed\Entry $entry
  * @return void
  */
 private function setArticleData(\Article $article, Entry $entry)
 {
     $data = $article->getArticleData();
     foreach ($this->config['field'] as $property => $getter) {
         if (method_exists($entry, $getter)) {
             $data->setProperty("F{$property}", $entry->{$getter}());
         }
     }
     $data->create();
 }