Code Duplication    Length = 13-22 lines in 3 locations

main/inc/lib/document.lib.php 1 location

@@ 4108-4124 (lines=17) @@
4105
                } else {
4106
                    // Add all terms
4107
                    $all_specific_terms = '';
4108
                    foreach ($specific_fields as $specific_field) {
4109
                        if (isset($specific_fields_values[$specific_field['code']])) {
4110
                            $sterms = trim($specific_fields_values[$specific_field['code']]);
4111
                        } else { //if the specific field is not defined, force an empty one
4112
                            $sterms = '';
4113
                        }
4114
                        $all_specific_terms .= ' ' . $sterms;
4115
                        if (!empty($sterms)) {
4116
                            $sterms = explode(',', $sterms);
4117
                            foreach ($sterms as $sterm) {
4118
                                if (!$simulation) {
4119
                                    $ic_slide->addTerm(trim($sterm), $specific_field['code']);
4120
                                    add_specific_field_value($specific_field['id'], $course_code, TOOL_DOCUMENT, $docid, $sterm);
4121
                                }
4122
                            }
4123
                        }
4124
                    }
4125
                    // Add terms also to content to make terms findable by probabilistic search
4126
                    $file_content = $all_specific_terms . ' ' . $file_content;
4127
                    if (!$simulation) {

main/inc/lib/link.lib.php 1 location

@@ 232-253 (lines=22) @@
229
230
                    // Add all terms to db.
231
                    $all_specific_terms = '';
232
                    foreach ($specific_fields as $specific_field) {
233
                        if (isset($_REQUEST[$specific_field['code']])) {
234
                            $sterms = trim($_REQUEST[$specific_field['code']]);
235
                            if (!empty($sterms)) {
236
                                $all_specific_terms .= ' ' . $sterms;
237
                                $sterms = explode(',', $sterms);
238
                                foreach ($sterms as $sterm) {
239
                                    $ic_slide->addTerm(
240
                                        trim($sterm),
241
                                        $specific_field['code']
242
                                    );
243
                                    add_specific_field_value(
244
                                        $specific_field['id'],
245
                                        $courseCode,
246
                                        TOOL_LINK,
247
                                        $link_id,
248
                                        $sterm
249
                                    );
250
                                }
251
                            }
252
                        }
253
                    }
254
255
                    // Build the chunk to index.
256
                    $ic_slide->addValue('title', $title);

main/exercise/exercise.class.php 1 location

@@ 2492-2504 (lines=13) @@
2489
        $ic_slide = new IndexableChunk();
2490
2491
        $all_specific_terms = '';
2492
        foreach ($specific_fields as $specific_field) {
2493
            if (isset($_REQUEST[$specific_field['code']])) {
2494
                $sterms = trim($_REQUEST[$specific_field['code']]);
2495
                if (!empty($sterms)) {
2496
                    $all_specific_terms .= ' '. $sterms;
2497
                    $sterms = explode(',', $sterms);
2498
                    foreach ($sterms as $sterm) {
2499
                        $ic_slide->addTerm(trim($sterm), $specific_field['code']);
2500
                        add_specific_field_value($specific_field['id'], $course_id, TOOL_QUIZ, $this->id, $sterm);
2501
                    }
2502
                }
2503
            }
2504
        }
2505
2506
        // build the chunk to index
2507
        $ic_slide->addValue("title", $this->exercise);