function configure_section_data($uids, $rows) { $config = array(); $rows_added = false; $mode = pl_get_mode(); foreach ($uids as $uid) { $num_rows = 0; foreach ($rows as $set) { if ($set->uid == $uid) { $num_rows++; $config[$uid] = stripslashes_deep($this->unserialize($set->{$mode})); } } if ($num_rows == 0) { $draft = new PageLinesOpts('draft'); $draft->load_page_settings(); $upgrade_settings = array(); $upgrade_settings['draft'] = $draft->get_set($uid); $live = new PageLinesOpts('live'); $live->load_page_settings(); $upgrade_settings['live'] = $live->get_set($uid); $encoded_draft = json_encode($upgrade_settings['draft']); $encoded_live = json_encode($upgrade_settings['live']); $set = array('uid' => $uid, 'draft' => $encoded_draft, 'live' => $encoded_live); $num_rows++; $result = $this->wpdb->insert($this->table_name, $set); $rows_added = true; $config[$uid] = $upgrade_settings[$mode]; } } // Remove empties. foreach ($config as $i => $val) { if (empty($val)) { unset($config[$i]); } } return $config; }