update.inc.php 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. function video($field, $value) {
  2. if ($value) {
  3. $value = $GLOBALS[$field];
  4. } else {
  5. return '';
  6. }
  7. $video_content_db = pc_base::load_model('video_content_model');
  8. //先获取目前contentid下面的videoid
  9. $result = $video_content_db->select(array('contentid'=>$this->id, 'modelid'=>$this->modelid), 'videoid');
  10. if (is_array($result)) {
  11. $video_arr = array();
  12. foreach ($result as $r) {
  13. $video_arr[] = $r['videoid'];
  14. }
  15. }
  16. if(!empty($value) && is_array($value)) {
  17. foreach ($value as $v) {
  18. if (!empty($video_arr) && !in_array($v['videoid'], $video_arr)) {
  19. $video_content_db->insert(array('contentid'=>$this->id, 'modelid'=>$this->modelid, 'videoid'=>$v['videoid'], 'listorder'=>$v['listorder']));
  20. $s_key = array_search($v['videoid'], $video_arr);
  21. unset($video_arr[$s_key]);
  22. } elseif (empty($video_arr)) {
  23. $video_content_db->insert(array('contentid'=>$this->id, 'modelid'=>$this->modelid, 'videoid'=>$v['videoid'], 'listorder' => $v['listorder']));
  24. } elseif (in_array($v['videoid'], $video_arr)) {
  25. $video_content_db->update(array('listorder'=>$v['listorder']), array('contentid'=>$this->id, 'modelid'=>$this->modelid, 'videoid'=>$v['videoid']));
  26. $s_key = array_search($v['videoid'], $video_arr);
  27. unset($video_arr[$s_key]);
  28. }
  29. }
  30. //删除需要删除的videoid
  31. if ($video_arr && !empty($video_arr)) {
  32. foreach ($video_arr as $dvid) {
  33. $video_content_db->delete(array('contentid'=>$this->id, 'modelid'=>$this->modelid, 'videoid'=>$dvid));
  34. }
  35. }
  36. } elseif (!empty($video_arr) && is_array($video_arr)) {
  37. foreach ($video_arr as $dvid) {
  38. $video_content_db->delete(array('contentid'=>$this->id, 'modelid'=>$this->modelid, 'videoid'=>$dvid));
  39. }
  40. }
  41. }