public function activity_product() { if (!empty($this->activity_type)) { $activity = Activity::find($this->activity_type); if (!empty($activity) && $activity->start_date <= date("Y-m-d H:i:s") && $activity->end_date >= date("Y-m-d H:i:s") && $activity->status == 1) { $class_dir = ActivityType::find($activity->type_id)->class_dir; $config = json_decode($activity->argc, true); } else { return $this; } } else { return $this; } return with(new $class_dir())->config($config)->product_decorate($this); }
public function activity_bonus($uid) { $activity_type = Product::find($this->pid)->activity_type; if (!empty($activity_type)) { $activity = Activity::find($activity_type); if (!empty($activity) && $activity->start_date <= date("Y-m-d H:i:s") && $activity->end_date >= date("Y-m-d H:i:s") && $activity->status == 1) { $class_dir = ActivityType::find($activity->type_id)->class_dir; $config = json_decode($activity->argc, true); } else { return ''; } } else { return ''; } $bonus_config = ['fid' => Product::find($this->pid)->fid, 'uid' => $uid, 'aid' => $activity_type]; return with(new $class_dir())->config($config)->bonus($bonus_config); }
public function getTypeHtml(Request $request) { $id = $request->get('id'); $type_id = $request->get('type_id'); if ($type_id) { $argc = Activity::find($id)->argc; $class_dir = ActivityType::find($type_id)->class_dir; $html = with(new $class_dir())->show_edit_html($argc); } else { $html = ''; } exit($html); }
public function update(Request $request, $id) { $activity_type = ActivityType::find($id); if (empty($activity_type)) { return $this->failure_noexists(); } $keys = 'name,class_dir'; $data = $this->autoValidate($request, 'activity_type.store', $keys, $activity_type); $activity_type->update($data); return $this->success(); }