function link_post($post_id)
 {
     if (count($_POST) != 0 && isset($_POST['_wp_http_referer'])) {
         $linked = get_post_meta($post_id, "CanvasLinked", true);
         if ($linked == 1) {
             $this->post = $post_id;
             $post = get_post($this->post);
             $this->content = $post->post_content;
             $this->change_src();
             $this->change_links();
             $strip = explode("body>", $this->content);
             $this->content = substr($strip[1], 0, strlen($strip[1]) - 2);
             $styles = $this->stylesheets($post);
             require_once dirname(__FILE__) . "/../lib/emogrifier.php";
             foreach ($styles as $style) {
                 if (strpos($style, network_site_url()) !== FALSE) {
                     $dir = wp_upload_dir();
                     $style = str_replace(network_site_url() . "/wp-content/", str_replace("uploads", "", $dir['basedir']), $style);
                     $style = explode("?", $style);
                     $style = $style[0];
                 }
                 $css = preg_replace("/\\/[\\*]*[^\\*]*\\*\\//", "", file_get_contents($styles[1]));
                 $emogrifier = new emogrifier($this->content, $css);
                 $this->content = $emogrifier->emogrify();
             }
             $canvas_id = get_post_meta($post_id, "postCanvasID", true);
             $course_id = get_post_meta($post_id, "CanvasCourse", true);
             global $wpdb;
             $course_post = $wpdb->get_results("select post_id from " . $wpdb->prefix . "postmeta where meta_key='CourseID' and meta_value = '" . $course_id . "'");
             $course_post = get_post($course_post[0]->post_id);
             require_once __DIR__ . "/../../API/Psr4AutoloaderClass.php";
             $loader = new Psr4AutoloaderClass();
             $loader->register();
             $loader->addNamespace('InstructureCanvasAPI', __DIR__ . "/../../API/InstructureCanvasAPI/src");
             $API = new InstructureCanvasAPI\InstructureCanvasAPI(array("site" => get_post_meta($course_post->ID, "courseURL", true), "token" => get_post_meta($course_post->ID, "courseToken", true), "webService" => "CURL"));
             $pages = new InstructureCanvasAPI\Courses\Pages\Pages();
             $pages->setAPI($API);
             $pages->setCourseID(get_post_meta($course_post->ID, "courseID", true));
             $post = get_post($post_id);
             $publish = 1;
             if ($post->post_status != "publish") {
                 $publish = 0;
             }
             $data = $pages->updatePage($post->post_title, array("wiki_page[body]" => stripslashes(str_replace(" ", " ", $this->content)), "wiki_page[title]" => $post->post_title, "wiki_page[published]" => $publish));
         }
     }
 }
Beispiel #2
0
     $out = showaverages($results);
 } else {
     $out = showresults($forces, $history, $t);
 }
 if (count($_REQUEST['pbem']) > 0) {
     global $host;
     if ($host == 'localhost') {
         echo '<h1>E-mail not available on localhost</h1>';
     } else {
         if ($_REQUEST['reps'] > 1 or $_REQUEST['battle'] !== 'Run') {
             echo "<em>E-mail not available when swapping or evaluating units or running battle more than once.</em><br />";
         } else {
             //use emogrifier to convert CSS styles in results($out) to in-line styles so colors are preserved in the email
             $cssstr = file_get_contents("aa.css");
             //gets the CSS and puts it's contents into a string
             $converttoinline = new emogrifier($out, $cssstr);
             //instantiates the emogrifier class
             //need to use @ operator to suppress PHP warnings when loading HTML into DOM object
             @($body = $converttoinline->emogrify());
             //converted results with in line styles instead of CSS classes
             $addresses = implode(', ', $_REQUEST['pbem']);
             //NO NEED FOR GAMEID ANYMORE?
             $subject = " Battle results";
             echo "<em>Results e-mailed to {$addresses}.</em><br /> ";
             $headers = 'From: aacalc@frood.net' . "\n" . 'MIME-Version: 1.0' . "\n" . 'Content-type: text/html; charset=iso-8859-1' . "\n";
             mail($addresses, $subject, $body, $headers);
             //release class object
             unset($converttoinline);
         }
     }
     /*NO LONGER NEEDED?