Index: branches/5.3.x/units/links/link_tag_processor.php =================================================================== diff -u -N -r15486 -r15696 --- branches/5.3.x/units/links/link_tag_processor.php (.../link_tag_processor.php) (revision 15486) +++ branches/5.3.x/units/links/link_tag_processor.php (.../link_tag_processor.php) (revision 15696) @@ -1,6 +1,6 @@ Application->getUnitOption('ls', 'TableName').' - WHERE ItemResourceId = '.$resource_id; + FROM ' . $this->Application->getUnitConfig('ls')->getTableName() . ' + WHERE ItemResourceId = ' . $resource_id; $listing_info = $this->Conn->GetRow($sql); + return isset($field) ? $listing_info[$field] : $listing_info; } @@ -119,8 +120,8 @@ $listing_info = $this->getListingInfo($object->GetDBField('ResourceId')); $sql = 'SELECT RenewalReminder - FROM '.$this->Application->getUnitOption('lst', 'TableName').' - WHERE ListingTypeId = '.$listing_info['ListingTypeId']; + FROM ' . $this->Application->getUnitConfig('lst')->getTableName() . ' + WHERE ListingTypeId = ' . $listing_info['ListingTypeId']; $renewal_interval = $this->Conn->GetOne($sql) * 3600 * 24; return ($listing_info['ExpiresOn'] - adodb_mktime() < $renewal_interval) ? 1 : 0; @@ -282,7 +283,7 @@ */ function LastVisited($params) { - if (!$this->Application->LoggedIn()) { + if ( !$this->Application->LoggedIn() ) { // we don't gather link visit statistics for Guests return ''; } @@ -292,30 +293,31 @@ $object = $this->getObject($params); /* @var $object kDBList */ - if (!isset($link_visited[$this->Special])) { + if ( !isset($link_visited[$this->Special]) ) { $resource_ids = $object->GetCol('ResourceId'); $user_id = $this->Application->RecallVar('user_id'); - $table_name = $this->Application->getUnitOption('l-visit', 'TableName'); + $table_name = $this->Application->getUnitConfig('l-visit')->getTableName(); $sql = 'SELECT VisitTimestamp, ResourceId - FROM '.$table_name.' - WHERE (PortalUserId = '.$user_id.') AND (ResourceId IN ('.implode(',', $resource_ids).'))'; + FROM ' . $table_name . ' + WHERE (PortalUserId = ' . $user_id . ') AND (ResourceId IN (' . implode(',', $resource_ids) . '))'; $link_visited[$this->Special] = $this->Conn->GetCol($sql, 'ResourceId'); } - if (!isset($link_visited[$this->Special][$object->GetDBField('ResourceId')])) { + if ( !isset($link_visited[$this->Special][$object->GetDBField('ResourceId')]) ) { // link has no visit information for current user return ''; } $link_visit = $link_visited[$this->Special][$object->GetDBField('ResourceId')]; - if (isset($params['formatted']) && $params['formatted']) { + if ( isset($params['formatted']) && $params['formatted'] ) { // format the date $lang = $this->Application->recallObject('lang.current'); + /* @var $lang LanguagesItem */ - if (isset($params['display_time']) && $params['display_time']) { - $display_format = $lang->GetDBField('DateFormat').' @ '.$lang->GetDBField('TimeFormat'); + if ( isset($params['display_time']) && $params['display_time'] ) { + $display_format = $lang->GetDBField('DateFormat') . ' @ ' . $lang->GetDBField('TimeFormat'); } else { $display_format = $lang->GetDBField('DateFormat'); @@ -409,19 +411,21 @@ // 1. get current grouping $grouping = $link_helper->getGrouping( $this->getPrefixSpecial() ); + $config = $this->getUnitConfig(); + // 2. replace field names in grouping with their corresponding column titles - $grids = $this->Application->getUnitOption($this->Prefix, 'Grids'); + $grids = $config->getGrids(); + foreach ($grouping as $index => $group_field) { $group_field = preg_replace('/^l[\d]+_/', '', $group_field); // remove ml prefix $grouping[$index] = $this->Application->Phrase($grids[$grid]['Fields'][$group_field]['title']); } // 3. patch resulting title preset $concat_with = "' " . $this->Application->Phrase('la_and') . " '"; - $title_presets = $this->Application->getUnitOption($this->Prefix, 'TitlePresets'); - $title_presets['duplicate_links'] = str_replace('%s', "'" . implode($concat_with, $grouping) . "'", $title_presets['duplicate_links']); - - $this->Application->setUnitOption($this->Prefix, 'TitlePresets', $title_presets); + $title_preset = $config->getTitlePresetByName('duplicate_links'); + $title_preset = str_replace('%s', "'" . implode($concat_with, $grouping) . "'", $title_preset); + $config->addTitlePresets($title_preset, 'duplicate_links'); } /**