Index: branches/5.2.x/core/kernel/db/cat_event_handler.php =================================================================== diff -u -N -r16457 -r16513 --- branches/5.2.x/core/kernel/db/cat_event_handler.php (.../cat_event_handler.php) (revision 16457) +++ branches/5.2.x/core/kernel/db/cat_event_handler.php (.../cat_event_handler.php) (revision 16513) @@ -1,6 +1,6 @@ getObject(); - /* @var $object kDBItem */ $id = $this->getPassedID($event); if ( $object->Load($id) ) { + /** @var Params $actions */ $actions = $this->Application->recallObject('kActions'); - /* @var $actions Params */ $actions->Set($event->getPrefixSpecial() . '_id', $object->GetID()); @@ -99,8 +99,8 @@ if ( in_array($event->Name, $this->_getMassPermissionEvents()) ) { $items = $this->_getPermissionCheckInfo($event); + /** @var kPermissionsHelper $perm_helper */ $perm_helper = $this->Application->recallObject('PermissionsHelper'); - /* @var $perm_helper kPermissionsHelper */ if ( ($event->Name == 'OnSave') && array_key_exists(0, $items) ) { // adding new item (ID = 0) @@ -192,8 +192,8 @@ */ function _getPermissionCheckInfo($event) { + /** @var kPermissionsHelper $perm_helper */ $perm_helper = $this->Application->recallObject('PermissionsHelper'); - /* @var $perm_helper kPermissionsHelper */ // when saving data from temp table to live table check by data from temp table $item_ids = $this->_getPermissionCheckIDs($event); @@ -231,8 +231,8 @@ { $this->Application->RemoveVar('clipboard'); + /** @var kClipboardHelper $clipboard_helper */ $clipboard_helper = $this->Application->recallObject('ClipboardHelper'); - /* @var $clipboard_helper kClipboardHelper */ $clipboard_helper->setClipboard($event, 'copy', $this->StoreSelectedIDs($event)); $this->clearSelectedIDs($event); @@ -248,8 +248,9 @@ protected function OnCut($event) { $this->Application->RemoveVar('clipboard'); + + /** @var kClipboardHelper $clipboard_helper */ $clipboard_helper = $this->Application->recallObject('ClipboardHelper'); - /* @var $clipboard_helper kClipboardHelper */ $clipboard_helper->setClipboard($event, 'cut', $this->StoreSelectedIDs($event)); $this->clearSelectedIDs($event); @@ -263,8 +264,8 @@ */ function _checkPastePermission($event) { + /** @var kPermissionsHelper $perm_helper */ $perm_helper = $this->Application->recallObject('PermissionsHelper'); - /* @var $perm_helper kPermissionsHelper */ $category_id = $this->Application->GetVar('m_cat_id'); if ($perm_helper->AddCheckPermission($category_id, $event->Prefix) == 0) { @@ -296,16 +297,16 @@ } if ( $clipboard_data['copy'] ) { + /** @var kTempTablesHandler $temp */ $temp = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler'); - /* @var $temp kTempTablesHandler */ $this->Application->SetVar('ResetCatBeforeClone', 1); // used in "kCatDBEventHandler::OnBeforeClone" $temp->CloneItems($event->Prefix, $event->Special, $clipboard_data['copy']); } if ( $clipboard_data['cut'] ) { + /** @var kCatDBItem $object */ $object = $this->Application->recallObject($event->getPrefixSpecial() . '.item', $event->Prefix, Array ('skip_autoload' => true)); - /* @var $object kCatDBItem */ foreach ($clipboard_data['cut'] as $id) { $object->Load($id); @@ -336,13 +337,13 @@ $recycle_bin = $this->Application->ConfigValue('RecycleBinFolder'); if ( $recycle_bin ) { + /** @var CategoriesItem $rb */ $rb = $this->Application->recallObject('c.recycle', NULL, array ('skip_autoload' => true)); - /* @var $rb CategoriesItem */ $rb->Load($recycle_bin); + /** @var kCatDBItem $object */ $object = $this->Application->recallObject($event->Prefix . '.recycleitem', NULL, Array ('skip_autoload' => true)); - /* @var $object kCatDBItem */ foreach ($ids as $id) { $object->Load($id); @@ -358,8 +359,8 @@ $ids = $to_delete; } + /** @var kTempTablesHandler $temp_handler */ $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler'); - /* @var $temp_handler kTempTablesHandler */ $event->setEventParam('ids', $ids); $this->customProcessing($event, 'before'); @@ -441,8 +442,8 @@ $search_event = $event_mapping[$type]; $this->$search_event($event); + /** @var kDBList $object */ $object = $event->getObject(); - /* @var $object kDBList */ /** @var kSearchHelper $search_helper */ $search_helper = $this->Application->recallObject('SearchHelper'); @@ -491,8 +492,8 @@ $processed_prefix = $this->Application->processPrefix($prefix_special); if ($processed_prefix['prefix'] == $related_prefix) { // printing related categories within list of items (not on details page) + /** @var kDBList $list */ $list = $this->Application->recallObject($prefix_special); - /* @var $list kDBList */ $id = $list->GetID(); } @@ -508,8 +509,8 @@ } } + /** @var kCatDBItem $p_item */ $p_item = $this->Application->recallObject($related_prefix.'.current', NULL, Array('skip_autoload' => true)); - /* @var $p_item kCatDBItem */ $p_item->Load( (int)$id ); @@ -600,8 +601,8 @@ { parent::SetCustomQuery($event); + /** @var kCatDBList $object */ $object = $event->getObject(); - /* @var $object kCatDBList */ // add category filter if needed if ($event->Special != 'showall' && $event->Special != 'user') { @@ -663,8 +664,8 @@ $except_types = $event->getEventParam('except'); $type_clauses = $this->getTypeClauses($event); + /** @var kSearchHelper $search_helper */ $search_helper = $this->Application->recallObject('SearchHelper'); - /* @var $search_helper kSearchHelper */ $search_helper->SetComplexFilter($event, $type_clauses, $types, $except_types); } @@ -689,8 +690,8 @@ } else { // for any real user item list view permission is checked instead of CATEGORY.VIEW + /** @var kCountHelper $count_helper */ $count_helper = $this->Application->recallObject('CountHelper'); - /* @var $count_helper kCountHelper */ list ($view_perm, $view_filter) = $count_helper->GetPermissionClause($object->Prefix, 'perm'); $object->addFilter('perm_filter2', $view_filter); @@ -773,8 +774,8 @@ $object->addCalculatedField('CachedNavbar', 'l' . $this->Application->GetVar('m_lang') . '_CachedNavbar'); if ( $event->Special == 'export' || $event->Special == 'import' ) { + /** @var kCatDBItemExportHelper $export_helper */ $export_helper = $this->Application->recallObject('CatItemExportHelper'); - /* @var $export_helper kCatDBItemExportHelper */ $export_helper->prepareExportColumns($event); } @@ -878,8 +879,8 @@ { parent::OnBeforeItemUpdate($event); + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ // update hits field $property_map = $this->Application->getUnitOption($event->Prefix, 'ItemPropertyMappings'); @@ -917,8 +918,8 @@ $special = substr($event->Special, -6); + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ if ( $special == 'import' || $special == 'export' ) { $image_data = $object->getPrimaryImageData(); @@ -956,14 +957,14 @@ if ( !$this->Application->isAdmin ) { // linking existing images for item with virtual fields + /** @var ImageHelper $image_helper */ $image_helper = $this->Application->recallObject('ImageHelper'); - /* @var $image_helper ImageHelper */ $image_helper->LoadItemImages($object); // linking existing files for item with virtual fields + /** @var FileHelper $file_helper */ $file_helper = $this->Application->recallObject('FileHelper'); - /* @var $file_helper FileHelper */ $file_helper->LoadItemFiles($object); } @@ -992,18 +993,18 @@ $this->setCustomExportColumns($event); } + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ if ( !$this->Application->isAdmin ) { + /** @var ImageHelper $image_helper */ $image_helper = $this->Application->recallObject('ImageHelper'); - /* @var $image_helper ImageHelper */ // process image upload in virtual fields $image_helper->SaveItemImages($object); + /** @var FileHelper $file_helper */ $file_helper = $this->Application->recallObject('FileHelper'); - /* @var $file_helper FileHelper */ // process file upload in virtual fields $file_helper->SaveItemFiles($object); @@ -1046,8 +1047,8 @@ { parent::OnAfterItemCreate($event); + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ if ( substr($event->Special, -6) == 'import' ) { $this->setCustomExportColumns($event); @@ -1056,14 +1057,14 @@ $object->assignPrimaryCategory(); if ( !$this->Application->isAdmin ) { + /** @var ImageHelper $image_helper */ $image_helper = $this->Application->recallObject('ImageHelper'); - /* @var $image_helper ImageHelper */ // process image upload in virtual fields $image_helper->SaveItemImages($object); + /** @var FileHelper $file_helper */ $file_helper = $this->Application->recallObject('FileHelper'); - /* @var $file_helper FileHelper */ // process file upload in virtual fields $file_helper->SaveItemFiles($object); @@ -1111,8 +1112,8 @@ $keywords = $this->Application->unescapeRequestVariable(trim($this->Application->GetVar('keywords'))); + /** @var kHTTPQuery $query_object */ $query_object = $this->Application->recallObject('HTTPQuery'); - /* @var $query_object kHTTPQuery */ /** @var kSearchHelper $search_helper */ $search_helper = $this->Application->recallObject('SearchHelper'); @@ -1139,8 +1140,8 @@ $event->setPseudoClass('_List'); + /** @var kDBList $object */ $object = $event->getObject(); - /* @var $object kDBList */ $this->Application->SetVar($event->getPrefixSpecial().'_Page', 1); $lang = $this->Application->GetVar('m_lang'); @@ -1430,8 +1431,8 @@ */ function OnAdvancedSearch($event) { + /** @var kHTTPQuery $query_object */ $query_object = $this->Application->recallObject('HTTPQuery'); - /* @var $query_object kHTTPQuery */ if ( !isset($query_object->Post['andor']) ) { // used when navigating by pages or changing sorting in search results @@ -1450,8 +1451,8 @@ $lang = $this->Application->GetVar('m_lang'); + /** @var kDBList $object */ $object = $event->getObject(); - /* @var $object kDBList */ $object->SetPage(1); @@ -1803,9 +1804,9 @@ protected function getHuman($type, $search_data) { // all 3 variables are retrieved from $search_data array - /* @var $search_config Array */ - /* @var $verb string */ - /* @var $value string */ + /** @var Array $search_config */ + /** @var string $verb */ + /** @var string $value */ $type = ucfirst(strtolower($type)); extract($search_data, EXTR_SKIP); @@ -1861,8 +1862,8 @@ */ protected function SetPagination(kEvent $event) { + /** @var kDBList $object */ $object = $event->getObject(); - /* @var $object kDBList */ // get PerPage (forced -> session -> config -> 10) $object->SetPerPage($this->getPerPage($event)); @@ -1947,8 +1948,8 @@ $this->Application->StoreVar($event->Prefix . '_export_ids', $selected_ids ? implode(',', $selected_ids) : ''); $this->Application->StoreVar($event->Prefix . '_export_cats_ids', $selected_cats_ids); + /** @var kCatDBItemExportHelper $export_helper */ $export_helper = $this->Application->recallObject('CatItemExportHelper'); - /* @var $export_helper kCatDBItemExportHelper */ $redirect_params = Array ( $this->Prefix . '.export_event' => 'OnNew', @@ -1965,8 +1966,8 @@ */ function OnExportProgress($event) { + /** @var kCatDBItemExportHelper $export_object */ $export_object = $this->Application->recallObject('CatItemExportHelper'); - /* @var $export_object kCatDBItemExportHelper */ $action_method = 'perform'.ucfirst($event->Special); $field_values = $export_object->$action_method($event); @@ -2030,17 +2031,17 @@ */ protected function restorePrimaryImage($event) { + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ if ( !$object->GetDBField('ThumbnailImage') && !$object->GetDBField('FullImage') ) { return ; } $image_data = $object->getPrimaryImageData(); + /** @var kDBItem $image */ $image = $this->Application->recallObject('img', NULL, Array ('skip_autoload' => true)); - /* @var $image kDBItem */ if ( $image_data ) { $image->Load($image_data['ImageId']); @@ -2104,8 +2105,8 @@ parent::OnNew($event); if ( $event->Special == 'import' || $event->Special == 'export' ) { + /** @var kCatDBItemExportHelper $export_helper */ $export_helper = $this->Application->recallObject('CatItemExportHelper'); - /* @var $export_helper kCatDBItemExportHelper */ $export_helper->setRequiredFields($event); } @@ -2123,8 +2124,8 @@ if ( $dst_field == 'ItemCategory' ) { // Item Edit -> Categories Tab -> New Categories + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ $category_ids = explode(',', $selected_ids['c']); foreach ($category_ids as $category_id) { @@ -2156,8 +2157,8 @@ if ( $items_info ) { list($id, $field_values) = each($items_info); + /** @var kDBItem $object */ $object = $event->getObject(Array ('skip_autoload' => true)); - /* @var $object kDBItem */ $object->setID($id); $object->SetFieldsFromHash($field_values); @@ -2205,8 +2206,8 @@ */ function cacheItemOwner($event, $id_field, $cached_field) { + /** @var kDBItem $object */ $object = $event->getObject(); - /* @var $object kDBItem */ $object->SetDBField($cached_field, $object->GetField($id_field)); } @@ -2228,24 +2229,24 @@ if ( $event->status == kEvent::erSUCCESS && $use_pending_editing ) { // decision: clone or not clone + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ if ( $object->GetID() == 0 || $object->GetDBField('OrgId') > 0 ) { // new items or cloned items shouldn't be cloned again return ; } + /** @var kPermissionsHelper $perm_helper */ $perm_helper = $this->Application->recallObject('PermissionsHelper'); - /* @var $perm_helper kPermissionsHelper */ $owner_field = $this->getOwnerField($event->Prefix); if ( $perm_helper->ModifyCheckPermission($object->GetDBField($owner_field), $object->GetDBField('CategoryId'), $event->Prefix) == 2 ) { // 1. clone original item + /** @var kTempTablesHandler $temp_handler */ $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler'); - /* @var $temp_handler kTempTablesHandler */ $cloned_ids = $temp_handler->CloneItems($event->Prefix, $event->Special, Array ($object->GetID()), NULL, NULL, NULL, true); $ci_table = $this->Application->GetTempName(TABLE_PREFIX . 'CategoryItems'); @@ -2301,8 +2302,8 @@ return ; } + /** @var kDBItem $object */ $object = $event->getObject(); - /* @var $object kDBItem */ $owner_field = $this->getOwnerField($event->Prefix); $object->SetDBField($owner_field, $this->Application->RecallVar('user_id')); @@ -2344,8 +2345,8 @@ { parent::OnBeforeClone($event); + /** @var kDBItem $object */ $object = $event->getObject(); - /* @var $object kDBItem */ $object->SetDBField('ResourceId', 0); // this will reset it @@ -2365,8 +2366,8 @@ { parent::OnBeforeItemCreate($event); + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ $owner_field = $this->getOwnerField($event->Prefix); @@ -2398,11 +2399,11 @@ return ; } + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ + /** @var kPermissionsHelper $perm_helper */ $perm_helper = $this->Application->recallObject('PermissionsHelper'); - /* @var $perm_helper kPermissionsHelper */ $primary_category = $object->GetDBField('CategoryId') > 0 ? $object->GetDBField('CategoryId') : $this->Application->GetVar('m_cat_id'); $item_status = $perm_helper->AddCheckPermission($primary_category, $event->Prefix); @@ -2503,21 +2504,21 @@ return ; } + /** @var kCatDBItem $object */ $object = $event->getObject(Array('skip_autoload' => true)); - /* @var $object kCatDBItem */ $items_info = $this->Application->GetVar($event->getPrefixSpecial(true)); if ($items_info) { + /** @var kPermissionsHelper $perm_helper */ $perm_helper = $this->Application->recallObject('PermissionsHelper'); - /* @var $perm_helper kPermissionsHelper */ + /** @var kTempTablesHandler $temp_handler */ $temp_handler = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler'); - /* @var $temp_handler kTempTablesHandler */ $owner_field = $this->getOwnerField($event->Prefix); + /** @var FileHelper $file_helper */ $file_helper = $this->Application->recallObject('FileHelper'); - /* @var $file_helper FileHelper */ foreach ($items_info as $id => $field_values) { $object->Load($id); @@ -2597,8 +2598,8 @@ } // prepare redirect template + /** @var kDBItem $object */ $object = $event->getObject(); - /* @var $object kDBItem */ $is_active = ($object->GetDBField('Status') == STATUS_ACTIVE); @@ -2645,8 +2646,8 @@ return ; } + /** @var kCatDBItem $object */ $object = $event->getObject(Array ('skip_autoload' => true)); - /* @var $object kCatDBItem */ $ids = $this->StoreSelectedIDs($event); @@ -2695,8 +2696,8 @@ */ protected function checkItemStatus(kEvent $event) { + /** @var kDBItem $object */ $object = $event->getObject(); - /* @var $object kDBItem */ if ( !$object->isLoaded() ) { if ( $event->Special != 'previous' && $event->Special != 'next' ) { @@ -2737,8 +2738,8 @@ if ( in_array('search', $types) ) { $event->setPseudoClass('_List'); + /** @var kDBList $object */ $object = $event->getObject(); - /* @var $object kDBList */ // 1. no user sorting - sort by relevance $default_sortings = parent::_getDefaultSorting($event); @@ -2773,8 +2774,8 @@ */ protected function _removeForcedSortings(kEvent $event) { + /** @var Array $list_sortings */ $list_sortings = $this->Application->getUnitOption($event->Prefix, 'ListSortings', Array ()); - /* @var $list_sortings Array */ foreach ($list_sortings as $special => $sortings) { unset($list_sortings[$special]['ForcedSorting']); @@ -2844,8 +2845,8 @@ } if ( !$this->Application->isAdmin ) { + /** @var FileHelper $file_helper */ $file_helper = $this->Application->recallObject('FileHelper'); - /* @var $file_helper FileHelper */ $file_helper->createItemFiles($event->Prefix, true); // create image fields $file_helper->createItemFiles($event->Prefix, false); // create file fields @@ -2864,8 +2865,8 @@ $this->Application->setUnitOption($this->Prefix, 'Grids', $grids); // add options for CategoryId field (quick way to select item's primary category) + /** @var CategoryHelper $category_helper */ $category_helper = $this->Application->recallObject('CategoryHelper'); - /* @var $category_helper CategoryHelper */ $virtual_fields = $this->Application->getUnitOption($event->Prefix, 'VirtualFields'); @@ -2904,8 +2905,8 @@ return $this; } + /** @var Array $list_sortings */ $list_sortings = $this->Application->getUnitOption($event->Prefix, 'ListSortings', Array ()); - /* @var $list_sortings Array */ foreach ($list_sortings as $special => $sorting_fields) { foreach ($remove_sortings as $sorting_field) { @@ -2935,8 +2936,8 @@ $join_clause = ''; } + /** @var array $list_sqls */ $list_sqls = $this->Application->getUnitOption($event->Prefix, 'ListSQLs'); - /* @var $list_sqls array */ foreach ($list_sqls as $special => $list_sql) { $list_sqls[$special] = str_replace('{PERM_JOIN}', $join_clause, $list_sql); @@ -2954,8 +2955,8 @@ */ function OnDownloadFile($event) { + /** @var kCatDBItem $object */ $object = $event->getObject(); - /* @var $object kCatDBItem */ $event->status = kEvent::erSTOP; @@ -2964,8 +2965,8 @@ return ; } + /** @var FileHelper $file_helper */ $file_helper = $this->Application->recallObject('FileHelper'); - /* @var $file_helper FileHelper */ $filename = $object->GetField($field, 'full_path'); $file_helper->DownloadFile($filename); @@ -2985,11 +2986,11 @@ return ; } + /** @var RatingHelper $rating_helper */ $rating_helper = $this->Application->recallObject('RatingHelper'); - /* @var $rating_helper RatingHelper */ + /** @var kCatDBItem $object */ $object = $event->getObject( Array ('skip_autoload' => true) ); - /* @var $object kCatDBItem */ $object->Load( $this->Application->GetVar('id') ); @@ -3015,8 +3016,8 @@ return; } + /** @var SpamHelper $spam_helper */ $spam_helper = $this->Application->recallObject('SpamHelper'); - /* @var $spam_helper SpamHelper */ $spam_helper->InitHelper($review_id, 'ReviewHelpful', strtotime('+1 month') - strtotime('now')); $field = (int)$this->Application->GetVar('helpful') ? 'HelpfulCount' : 'NotHelpfulCount'; @@ -3080,8 +3081,8 @@ */ protected function OnAfterItemValidate(kEvent $event) { + /** @var kDBItem $object */ $object = $event->getObject(); - /* @var $object kDBItem */ $resource_id = $object->GetDBField('ResourceId');