Combined sections in date order
7 posts by 2 authors in: Forums > CMS Builder
Last Post: December 23, 2020 (RSS)
By mbareara - December 22, 2020 - edited: December 22, 2020
Hi, and thank you in advance for your help.
I have two sections combined in one main page with this code... but i would put them in a date order... and i don't know how. Any suggestion?
// load records
list($approfondimentiRecords, $approfondimentiMetaData) = getRecords(array(
'tableName' => 'approfondimenti',
'perPage' => '15',
'leftJoin' => array(
// foreign table => local field (that matches num in foreign table)
'autori' => 'autori',
),
));
list($attualitaRecords, $attualitaMetaData) = getRecords(array(
'tableName' => 'attualita',
'limit' => '5',
'leftJoin' => array(
// foreign table => local field (that matches num in foreign table)
'autori' => 'autori',
),
));
$allRecords = array_merge(
$attualitaRecords,
$approfondimentiRecords
);
?>
By hans - December 22, 2020 - edited: December 22, 2020
Hello, is it okay if you give me the schema files for both of these tables? The schema files can be found in /data/schema/approfondimenti.php and /data/schema/attualita.php
If you can't, then you should try to do a UNION of both of those tables, and use the mysql_get_query() to run the SQL query.
PHP Programmer (In Training)
interactivetools.com
<?php /* This is a PHP data file */ if (!@$LOADSTRUCT) { die("This is not a program file."); }
return array (
'_detailPage' => '/approfondimenti/articolo.php',
'_disableAdd' => '0',
'_disableErase' => '0',
'_disableModify' => '0',
'_disablePreview' => '0',
'_disableView' => '1',
'_filenameFields' => 'title',
'_hideRecordsFromDisabledAccounts' => '0',
'_indent' => '0',
'_listPage' => 'index.php',
'_maxRecords' => '',
'_maxRecordsPerUser' => '',
'_previewPage' => '',
'_requiredPlugins' => '',
'_tableName' => 'approfondimenti',
'listPageFields' => 'dragSortOrder, title, data, hits',
'listPageOrder' => 'dragSortOrder DESC',
'listPageSearchFields' => '_all_',
'menuHidden' => '0',
'menuName' => 'Approfondimenti',
'menuOrder' => '0000000004',
'menuType' => 'multi',
'num' => array(
'order' => 1,
'type' => 'none',
'label' => 'Record Number',
'isSystemField' => '1',
),
'createdDate' => array(
'order' => 2,
'type' => 'none',
'label' => 'Created',
'isSystemField' => '1',
),
'createdByUserNum' => array(
'order' => 3,
'type' => 'none',
'label' => 'Created By',
'isSystemField' => '1',
),
'updatedDate' => array(
'order' => 4,
'type' => 'none',
'label' => 'Last Updated',
'isSystemField' => '1',
),
'updatedByUserNum' => array(
'order' => 5,
'type' => 'none',
'label' => 'Last Updated By',
'isSystemField' => '1',
),
'dragSortOrder' => array(
'order' => 6,
'label' => 'Order',
'type' => 'none',
),
'title' => array(
'order' => 7,
'label' => 'Title',
'type' => 'textfield',
'defaultValue' => '',
'description' => '',
'fieldWidth' => '',
'isPasswordField' => '0',
'isRequired' => '1',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'charsetRule' => '',
'charset' => '',
),
'data' => array(
'order' => 8,
'label' => 'Data ',
'type' => 'date',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'defaultDate' => '',
'defaultDateString' => '2011-01-01 00:00:00',
'showTime' => '0',
'showSeconds' => '0',
'use24HourFormat' => '0',
'yearRangeStart' => '2009',
'yearRangeEnd' => '2025',
),
'publishDate' => array(
'order' => 9,
'label' => 'PublishDate',
'type' => 'date',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'defaultDate' => '',
'defaultDateString' => '2013-01-01 00:00:00',
'showTime' => '1',
'showSeconds' => '0',
'use24HourFormat' => '0',
'yearRangeStart' => '2011',
'yearRangeEnd' => '2030',
),
'categoria' => array(
'order' => 10,
'label' => 'Categoria',
'type' => 'list',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'listType' => 'pulldownMulti',
'optionsType' => 'table',
'optionsTablename' => 'categorie',
'optionsValueField' => 'name',
'optionsLabelField' => 'name',
),
'autori' => array(
'order' => 11,
'label' => 'Autore',
'type' => 'list',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'listType' => 'pulldown',
'optionsType' => 'query',
'optionsQuery' => 'SELECT num, CONCAT(cognome," ",nome) FROM `<?php echo $TABLE_PREFIX ?>autori` ORDER BY cognome ASC ',
),
'immagine_piccola' => array(
'order' => 12,
'label' => 'immagine piccola',
'type' => 'textfield',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'fieldWidth' => '',
'isPasswordField' => '0',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'charsetRule' => '',
'charset' => '',
),
'sommario' => array(
'order' => 13,
'label' => 'Sommario',
'type' => 'textbox',
'defaultContent' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'fieldHeight' => '',
'autoFormat' => '1',
),
'content' => array(
'order' => 14,
'label' => 'Content',
'type' => 'textbox',
'defaultContent' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'fieldHeight' => '300',
'autoFormat' => '1',
),
'allegati' => array(
'order' => 15,
'label' => 'Allegati',
'type' => 'upload',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'allowedExtensions' => 'pdf',
'checkMaxUploadSize' => '1',
'maxUploadSizeKB' => '5120',
'checkMaxUploads' => '1',
'maxUploads' => '25',
'resizeOversizedImages' => '1',
'maxImageHeight' => '800',
'maxImageWidth' => '600',
'createThumbnails' => '1',
'maxThumbnailHeight' => '150',
'maxThumbnailWidth' => '150',
'createThumbnails2' => '0',
'maxThumbnailHeight2' => '150',
'maxThumbnailWidth2' => '150',
'createThumbnails3' => '0',
'maxThumbnailHeight3' => '150',
'maxThumbnailWidth3' => '150',
'createThumbnails4' => '0',
'maxThumbnailHeight4' => '150',
'maxThumbnailWidth4' => '150',
'useCustomUploadDir' => '0',
'customUploadDir' => '',
'customUploadUrl' => '',
'infoField1' => 'Title',
'infoField2' => 'Caption',
'infoField3' => '',
'infoField4' => '',
'infoField5' => '',
),
'immagine' => array(
'order' => 16,
'label' => 'Immagine',
'type' => 'upload',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'allowedExtensions' => 'gif,jpg,png',
'checkMaxUploadSize' => '1',
'maxUploadSizeKB' => '5120',
'checkMaxUploads' => '1',
'maxUploads' => '1',
'resizeOversizedImages' => '1',
'maxImageHeight' => '600',
'maxImageWidth' => '800',
'createThumbnails' => '1',
'maxThumbnailHeight' => '150',
'maxThumbnailWidth' => '150',
'createThumbnails2' => '1',
'maxThumbnailHeight2' => '400',
'maxThumbnailWidth2' => '600',
'createThumbnails3' => '1',
'maxThumbnailHeight3' => '1365',
'maxThumbnailWidth3' => '2048',
'createThumbnails4' => '0',
'maxThumbnailHeight4' => '150',
'maxThumbnailWidth4' => '150',
'useCustomUploadDir' => '0',
'customUploadDir' => '',
'customUploadUrl' => '',
'infoField1' => 'Title',
'infoField2' => 'Caption',
'infoField3' => '',
'infoField4' => '',
'infoField5' => '',
),
'hits' => array(
'order' => 17,
'label' => 'hits',
'type' => 'textfield',
'isSystemField' => '1',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'fieldWidth' => '',
'isPasswordField' => '0',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'charsetRule' => '',
'charset' => '',
),
'autore' => array(
'order' => '18',
'label' => 'autore',
'type' => 'textfield',
'isSystemField' => '1',
'indexed' => '0',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'fieldWidth' => '',
'isPasswordField' => '0',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'charsetRule' => '',
'charset' => '',
),
);
?>
<?php /* This is a PHP data file */ if (!@$LOADSTRUCT) { die("This is not a program file."); }
return array (
'_detailPage' => '/attualita/articolo.php',
'_disableAdd' => '0',
'_disableErase' => '0',
'_disableModify' => '0',
'_disablePreview' => '0',
'_disableView' => '1',
'_filenameFields' => 'title',
'_hideRecordsFromDisabledAccounts' => '0',
'_indent' => '0',
'_listPage' => '/attualita/index.php',
'_maxRecords' => '',
'_maxRecordsPerUser' => '',
'_perPageDefault' => '25',
'_previewPage' => '',
'_requiredPlugins' => '',
'_tableName' => 'attualita',
'listPageFields' => 'dragSortOrder, title, publishDate, hits',
'listPageOrder' => 'dragSortOrder DESC',
'listPageSearchFields' => '_all_',
'menuHidden' => '0',
'menuName' => 'Attualità',
'menuOrder' => '0000000005',
'menuType' => 'multi',
'num' => array(
'order' => 1,
'type' => 'none',
'label' => 'Record Number',
'isSystemField' => '1',
),
'createdDate' => array(
'order' => 2,
'type' => 'none',
'label' => 'Created',
'isSystemField' => '1',
),
'createdByUserNum' => array(
'order' => 3,
'type' => 'none',
'label' => 'Created By',
'isSystemField' => '1',
),
'updatedDate' => array(
'order' => 4,
'type' => 'none',
'label' => 'Last Updated',
'isSystemField' => '1',
),
'updatedByUserNum' => array(
'order' => 5,
'type' => 'none',
'label' => 'Last Updated By',
'isSystemField' => '1',
),
'dragSortOrder' => array(
'order' => 6,
'label' => 'Order',
'type' => 'none',
),
'title' => array(
'order' => 7,
'label' => 'Title',
'type' => 'textfield',
'defaultValue' => '',
'description' => '',
'fieldWidth' => '',
'isPasswordField' => '0',
'isRequired' => '1',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'charsetRule' => '',
'charset' => '',
),
'categoria' => array(
'order' => 8,
'label' => 'Categoria',
'type' => 'list',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'listType' => 'pulldown',
'optionsType' => 'table',
'optionsTablename' => 'categorie',
'optionsValueField' => 'name',
'optionsLabelField' => 'name',
),
'data' => array(
'order' => 9,
'label' => 'Data',
'type' => 'date',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'defaultDate' => '',
'defaultDateString' => '2011-01-01 00:00:00',
'showTime' => '0',
'showSeconds' => '0',
'use24HourFormat' => '0',
'yearRangeStart' => '2009',
'yearRangeEnd' => '2020',
),
'publishDate' => array(
'order' => 10,
'label' => 'publishDate',
'type' => 'date',
'indexed' => '0',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'defaultDate' => '',
'defaultDateString' => '2020-01-01 00:00:00',
'showTime' => '1',
'showSeconds' => '0',
'use24HourFormat' => '0',
'yearRangeStart' => '',
'yearRangeEnd' => '',
),
'autori' => array(
'order' => 11,
'label' => 'Autori',
'type' => 'list',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'listType' => 'pulldown',
'optionsType' => 'query',
'optionsQuery' => 'SELECT num, CONCAT(cognome," ",nome) FROM `<?php echo $TABLE_PREFIX ?>autori` ORDER BY cognome ASC ',
),
'immagine' => array(
'order' => 12,
'label' => 'immagine',
'type' => 'upload',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'allowedExtensions' => 'gif,jpg,jpeg,png,wmv,mov,swf,pdf',
'checkMaxUploadSize' => '1',
'maxUploadSizeKB' => '5120',
'checkMaxUploads' => '1',
'maxUploads' => '1',
'resizeOversizedImages' => '0',
'maxImageHeight' => '800',
'maxImageWidth' => '600',
'createThumbnails' => '1',
'maxThumbnailHeight' => '150',
'maxThumbnailWidth' => '150',
'createThumbnails2' => '0',
'maxThumbnailHeight2' => '150',
'maxThumbnailWidth2' => '150',
'createThumbnails3' => '0',
'maxThumbnailHeight3' => '150',
'maxThumbnailWidth3' => '150',
'createThumbnails4' => '0',
'maxThumbnailHeight4' => '150',
'maxThumbnailWidth4' => '150',
'useCustomUploadDir' => '0',
'customUploadDir' => '',
'customUploadUrl' => '',
'infoField1' => 'Title',
'infoField2' => 'Caption',
'infoField3' => '',
'infoField4' => '',
'infoField5' => '',
),
'sommario' => array(
'order' => 13,
'label' => 'Sommario',
'type' => 'textbox',
'defaultContent' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'fieldHeight' => '',
'autoFormat' => '1',
),
'content' => array(
'order' => 14,
'label' => 'Content',
'type' => 'textbox',
'defaultContent' => '',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'fieldHeight' => '300',
'autoFormat' => '1',
),
'allegati' => array(
'order' => 15,
'label' => 'Allegati',
'type' => 'upload',
'fieldPrefix' => '',
'description' => '',
'isRequired' => '0',
'allowedExtensions' => 'gif,jpg,png,pdf',
'checkMaxUploadSize' => '1',
'maxUploadSizeKB' => '5120',
'checkMaxUploads' => '1',
'maxUploads' => '25',
'resizeOversizedImages' => '1',
'maxImageHeight' => '800',
'maxImageWidth' => '600',
'createThumbnails' => '1',
'maxThumbnailHeight' => '150',
'maxThumbnailWidth' => '150',
'createThumbnails2' => '0',
'maxThumbnailHeight2' => '150',
'maxThumbnailWidth2' => '150',
'createThumbnails3' => '0',
'maxThumbnailHeight3' => '150',
'maxThumbnailWidth3' => '150',
'createThumbnails4' => '0',
'maxThumbnailHeight4' => '150',
'maxThumbnailWidth4' => '150',
'useCustomUploadDir' => '0',
'customUploadDir' => '',
'customUploadUrl' => '',
'infoField1' => 'Title',
'infoField2' => 'didascalia',
'infoField3' => '',
'infoField4' => '',
'infoField5' => '',
),
'hits' => array(
'order' => 16,
'label' => 'hits',
'type' => 'textfield',
'isSystemField' => '1',
'adminOnly' => '1',
'defaultValue' => '',
'fieldPrefix' => '',
'description' => '',
'fieldWidth' => '',
'isPasswordField' => '0',
'isRequired' => '0',
'isUnique' => '0',
'minLength' => '',
'maxLength' => '',
'charsetRule' => '',
'charset' => '',
),
);
?>
By hans - December 22, 2020 - edited: December 22, 2020
The table prefix is "cmsb_" correct? I need this to make the UNION query.
EDIT:
As it turns out, I do not need to make this a union. I can simply do a sorting from php's end. In any case:
foreach($allRecords as $key => $record){
$date = $record['publishData'];
$allRecords[$key]['timestamp'] = intval(strtotime($date));
}
function sorterAsc($a,$b){
if($a['timestamp'] === $b['timestamp']){
return 0;
}
return ($a['timestamp'] < $b['timestamp']) ? -1 : 1;
}
function sorterDesc($a,$b){
if($a['timestamp'] === $b['timestamp']){
return 0;
}
return ($a['timestamp'] > $b['timestamp']) ? -1 : 1;
}
uasort($allRecords, 'sorterDesc');
Add that code below the $allRecords variable, and the sorting should work barring other issues. There is a proxy method to sort called sorterDesc() which does the comparison for the publishDate timestamp.
I'll just be here if you have any questions.
PHP Programmer (In Training)
interactivetools.com
By hans - December 23, 2020
Alright, glad to know it works for you.
PHP Programmer (In Training)
interactivetools.com