function replace_image_references($existing_name, $new_name) { $image_fields = AMP_lookup('userdata_image_fields'); if (!$image_fields) { return false; } $user_data = new AMP_User_Data(AMP_dbcon()); foreach ($image_fields as $image_field_desc) { $action = $image_field_desc['fieldname'] . "=" . $user_data->dbcon->qstr($new_name); $crit = $user_data->makeCriteria(array('modin' => $image_field_desc['modin'])); array_push($crit, $user_data->_makeCriteriaEquals($image_field_desc['fieldname'], $existing_name)); $scope = join(' AND ', $crit); $user_data->update_all($action, $scope); } }
function amp_badge_forms($options = array()) { $modin = isset($options['modin']) && $options['modin'] ? $options['modin'] : false; if (!$modin) { $modin = isset($options['form_id']) && $options['form_id'] ? $options['form_id'] : false; } $sort = isset($options['sort']) && $options['sort'] ? $options['sort'] : "created_timestamp DESC"; $criteria = array(); $criteria['live'] = 1; if ($modin) { $criteria['modin'] = $modin; } $limit = isset($options['limit']) && $options['limit'] ? $options['limit'] : AMP_CONTENT_LIST_DISPLAY_MAX; $display = isset($options['display']) && $options['display'] ? $options['display'] : false; $display_header = isset($options['display_header']) && $options['display_header'] ? $options['display_header'] : false; $display_subheader = isset($options['display_subheader']) && $options['display_subheader'] ? $options['display_subheader'] : false; $extra_criteria = isset($options['extra_criteria']) && $options['extra_criteria'] ? array($options['extra_criteria']) : array(); $columns = isset($options['columns']) && $options['columns'] ? $options['columns'] : 1; $finder = new AMP_User_Data(AMP_Registry::getDbcon()); $search =& $finder->getSearchSource(array_merge($finder->makeCriteria($criteria), $extra_criteria)); $search->addSort($sort); $search->setLimit($limit); $source = $finder->find(); $list = new AMP_User_Data_List($source); $list->_pager_active = false; $list->_display_columns = $columns; if ($display) { $list->set_display_method($display); } if ($display_header) { $list->set_display_header_method($display_header); } if ($display_subheader) { $list->set_display_subheader_method($display_subheader); } return $list->execute(); }
function update_database_folder($new_folder_name) { $this->_init_attributes(); if ($this->db_metadata) { $this->db_metadata->mergeData(array('folder' => $new_folder_name, 'name' => $this->getNameForFolder($new_folder_name))); $this->db_metadata->save(); } require_once 'Modules/Gallery/Image.inc.php'; require_once 'AMP/Content/Article.inc.php'; require_once 'AMP/Content/Section.inc.php'; require_once 'Modules/Gallery/Gallery.php'; require_once 'AMP/Content/Tag/Tag.php'; require_once 'AMP/Content/Template.inc.php'; require_once 'AMP/Content/Link/Link.php'; require_once 'AMP/User/Data/Data.php'; $this->update_associated_items('Section', 'image2', $new_folder_name); $this->update_associated_items('Section', 'flash', $new_folder_name); $this->update_associated_items('Article', 'image', $new_folder_name); $this->update_associated_items('Gallery', 'img', $new_folder_name); $this->update_associated_items('GalleryImage', 'img', $new_folder_name); $this->update_associated_items('AMP_Content_Tag', 'image', $new_folder_name); $this->update_associated_items('AMP_Content_Link', 'image', $new_folder_name); //article body search $finder = new Article(AMP_dbcon()); $update_action = "test=REPLACE( test, " . $finder->dbcon->qstr($this->getName()) . ", " . $finder->dbcon->qstr($this->getNameForFolder($new_folder_name)) . ")"; $finder->update_all($update_action, array('image_in_body' => $this->getName())); //template body $finder = new AMP_Content_Template(AMP_dbcon()); $update_action = "header2=REPLACE( header2, " . $finder->dbcon->qstr($this->getName()) . ", " . $finder->dbcon->qstr($this->getNameForFolder($new_folder_name)) . ")"; $finder->update_all($update_action, array('image_in_body' => $this->getName())); //udm data AMP_User_Data::replace_image_references($this->getName(), $this->getNameForFolder($new_folder_name)); return true; }