Code Duplication    Length = 48-50 lines in 2 locations

main/wiki/wiki.inc.php 2 locations

@@ 2257-2304 (lines=48) @@
2254
2255
        //only by professors when page is hidden
2256
        if (api_is_allowed_to_edit(false, true) || api_is_platform_admin()) {
2257
            if ($all_vers == '1') {
2258
                if ($search_content == '1') {
2259
                    $sql = "SELECT * FROM ".$tbl_wiki."
2260
                            WHERE
2261
                                c_id = $course_id AND
2262
                                title LIKE '%".Database::escape_string($search_term)."%' OR
2263
                                content LIKE '%".Database::escape_string($search_term)."%' AND
2264
                                ".$groupfilter.$condition_session."";
2265
                    //search all pages and all versions
2266
                } else {
2267
                    $sql = "SELECT * FROM ".$tbl_wiki."
2268
                            WHERE
2269
                                c_id = $course_id AND
2270
                                title LIKE '%".Database::escape_string($search_term)."%' AND
2271
                                ".$groupfilter.$condition_session."";
2272
                    //search all pages and all versions
2273
                }
2274
            } else {
2275
                if ($search_content == '1') {
2276
                    $sql = "SELECT * FROM ".$tbl_wiki." s1
2277
                            WHERE
2278
                                s1.c_id = $course_id AND
2279
                                title LIKE '%".Database::escape_string($search_term)."%' OR
2280
                                content LIKE '%".Database::escape_string($search_term)."%' AND
2281
                                id=(
2282
                                    SELECT MAX(s2.id)
2283
                                    FROM ".$tbl_wiki." s2
2284
                                    WHERE
2285
                                        s2.c_id = $course_id AND
2286
                                        s1.reflink = s2.reflink AND
2287
                                        ".$groupfilter.$condition_session.")";
2288
                    // warning don't use group by reflink because don't return the last version
2289
                } else {
2290
                    $sql = "SELECT * FROM ".$tbl_wiki." s1
2291
                            WHERE
2292
                                s1.c_id = $course_id AND
2293
                                title LIKE '%".Database::escape_string($search_term)."%' AND
2294
                                id = (
2295
                                    SELECT MAX(s2.id)
2296
                                    FROM ".$tbl_wiki." s2
2297
                                    WHERE
2298
                                        s2.c_id = $course_id AND
2299
                                        s1.reflink = s2.reflink AND
2300
                                        ".$groupfilter.$condition_session.")";
2301
                    // warning don't use group by reflink because don't return the last version
2302
                }
2303
            }
2304
        } else {
2305
            if ($all_vers == '1') {
2306
                if ($search_content == '1') {
2307
                    $sql = "SELECT * FROM ".$tbl_wiki."
@@ 2304-2353 (lines=50) @@
2301
                    // warning don't use group by reflink because don't return the last version
2302
                }
2303
            }
2304
        } else {
2305
            if ($all_vers == '1') {
2306
                if ($search_content == '1') {
2307
                    $sql = "SELECT * FROM ".$tbl_wiki."
2308
                            WHERE
2309
                                c_id = $course_id AND
2310
                                visibility=1 AND
2311
                                title LIKE '%".Database::escape_string($search_term)."%' OR
2312
                                content LIKE '%".Database::escape_string($search_term)."%' AND
2313
                                ".$groupfilter.$condition_session."";
2314
                    //search all pages and all versions
2315
                } else {
2316
                    $sql = "SELECT * FROM ".$tbl_wiki."
2317
                            WHERE
2318
                                c_id = $course_id AND
2319
                                visibility=1 AND
2320
                                title LIKE '%".Database::escape_string($search_term)."%' AND
2321
                                ".$groupfilter.$condition_session."";
2322
                    //search all pages and all versions
2323
                }
2324
            } else {
2325
                if ($search_content == '1') {
2326
                    $sql = "SELECT * FROM ".$tbl_wiki." s1
2327
                            WHERE
2328
                                s1.c_id = $course_id AND
2329
                                visibility=1 AND
2330
                                title LIKE '%".Database::escape_string($search_term)."%' OR
2331
                                content LIKE '%".Database::escape_string($search_term)."%' AND
2332
                                id=(
2333
                                    SELECT MAX(s2.id)
2334
                                    FROM ".$tbl_wiki." s2
2335
                                    WHERE s2.c_id = $course_id AND
2336
                                    s1.reflink = s2.reflink AND
2337
                                    ".$groupfilter.$condition_session.")";
2338
                    // warning don't use group by reflink because don't return the last version
2339
                } else {
2340
                    $sql = "SELECT * FROM ".$tbl_wiki." s1
2341
                            WHERE
2342
                                s1.c_id = $course_id AND
2343
                                visibility=1 AND
2344
                                title LIKE '%".Database::escape_string($search_term)."%' AND
2345
                            id = (
2346
                                SELECT MAX(s2.id) FROM ".$tbl_wiki." s2
2347
                                WHERE s2.c_id = $course_id AND
2348
                                s1.reflink = s2.reflink AND
2349
                                ".$groupfilter.$condition_session.")";
2350
                    // warning don't use group by reflink because don't return the last version
2351
                }
2352
            }
2353
        }
2354
2355
        $result = Database::query($sql);
2356