protected function export_tour($id) {
        $tour = tour::instance($id);

        // Grab the full data record.
        $export = $tour->to_record();

        // Remove the id.
        unset($export->id);

        // Set the version.
        $export->version = get_config('tool_usertours', 'version');

        // Step export.
        $export->steps = [];
        foreach ($tour->get_steps() as $step) {
            $record = $step->to_record();
            unset($record->id);
            unset($record->tourid);

            $export->steps[] = $record;
        }

        $exportstring = json_encode($export);

        $filename = 'tour_export_' . $tour->get_id() . '_' . time() . '.json';

        // Force download.
        header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT');
        header('Cache-Control: private, must-revalidate, pre-check=0, post-check=0, max-age=0');
        header('Expires: ' . gmdate('D, d M Y H:i:s', 0) . 'GMT');
        header('Pragma: no-cache');
        header('Accept-Ranges: none');
        header('Content-disposition: attachment; filename=' . $filename);
        header('Content-length: ' . strlen($exportstring));
        header('Content-type: text/calendar; charset=utf-8');

        echo $exportstring;
        die;
    }
protected function export_tour($id) {
        $tour = tour::instance($id);

        // Grab the full data record.
        $export = $tour->to_record();

        // Remove the id.
        unset($export->id);

        // Set the version.
        $export->version = get_config('tool_usertours', 'version');

        // Step export.
        $export->steps = [];
        foreach ($tour->get_steps() as $step) {
            $record = $step->to_record();
            unset($record->id);
            unset($record->tourid);

            $export->steps[] = $record;
        }

        $exportstring = json_encode($export);

        $filename = 'tour_export_' . $tour->get_id() . '_' . time() . '.json';

        // Force download.
        header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT');
        header('Cache-Control: private, must-revalidate, pre-check=0, post-check=0, max-age=0');
        header('Expires: ' . gmdate('D, d M Y H:i:s', 0) . 'GMT');
        header('Pragma: no-cache');
        header('Accept-Ranges: none');
        header('Content-disposition: attachment; filename=' . $filename);
        header('Content-length: ' . strlen($exportstring));
        header('Content-type: text/calendar; charset=utf-8');

        echo $exportstring;
        die;
    }
protected function export_tour ( $ id ) { $ tour = tour :: instance ( $ id ) ; // Grab the full data record. $ export = $ tour -> to_record ( ) ; // Remove the id. unset ( $ export -> id ) ; // Set the version. $ export -> version = get_config ( 'tool_usertours' , 'version' ) ; // Step export. $ export -> steps = [ ] ; foreach ( $ tour -> get_steps ( ) as $ step ) { $ record = $ step -> to_record ( ) ; unset ( $ record -> id ) ; unset ( $ record -> tourid ) ; $ export -> steps [ ] = $ record ; } $ exportstring = json_encode ( $ export ) ; $ filename = 'tour_export_' . $ tour -> get_id ( ) . '_' . time ( ) . '.json' ; // Force download. header ( 'Last-Modified: ' . gmdate ( 'D, d M Y H:i:s' , time ( ) ) . ' GMT' ) ; header ( 'Cache-Control: private, must-revalidate, pre-check=0, post-check=0, max-age=0' ) ; header ( 'Expires: ' . gmdate ( 'D, d M Y H:i:s' , 0 ) . 'GMT' ) ; header ( 'Pragma: no-cache' ) ; header ( 'Accept-Ranges: none' ) ; header ( 'Content-disposition: attachment; filename=' . $ filename ) ; header ( 'Content-length: ' . strlen ( $ exportstring ) ) ; header ( 'Content-type: text/calendar; charset=utf-8' ) ; echo $ exportstring ; die ; }
Print the export tour page.

@param   int         $id     The ID of the tour
Print the export tour page .