예제 #1
0
 public function toxml($first = false)
 {
     global $u;
     global $software_version;
     $retval = "";
     if ($this->obj_hf_inherit) {
         if (count($this->obj_hf_inherit) > 0) {
             if ($first) {
                 $retval = $retval . "<hf_id_users>\n";
             }
         }
     }
     foreach ($this->obj_hf_inherit as $hf_inherit) {
         $inherited_hf = new hf_id_user();
         $inherited_hf->get_from_hashrange($this->id_user, $hf_inherit->id_inherit);
         $inherited_hf->build(array(), false);
         //echo "<pre>";
         //print_r($inherited_hf);
         $retval = $retval . $inherited_hf->toxml();
     }
     //echo "<pre>";
     //echo str_replace("<","&lt;",var_export($this,true));
     $member_list = $this->member_list($this);
     $localprops = "";
     $localprops = $localprops . " version='{$software_version}'";
     $inheritable_prop = "";
     $user_inherits = new user_inherit();
     $user_inherits->get_from_hashrange($u->id_user, $this->id);
     if ($user_inherits->id_hf != "undefined") {
         $inheritable_prop = " bool_inheritable='true'";
     }
     foreach ($member_list as $member) {
         if ($member == "id_user") {
             continue;
         }
         if ($member == "id") {
             continue;
         }
         if (strpos($member, "str_") === 0) {
             continue;
         }
         $member_value = $this->{$member};
         if (intval($member_value) . "" == $member_value . "") {
             $localprops = $localprops . " {$member}='" . $member_value . "'";
         } else {
             $localprops = $localprops . " {$member}='" . toxmlvalue($this->{$member}) . "'";
         }
     }
     $retval = $retval . "<" . get_class($this) . $inheritable_prop . $localprops . ">\n";
     //$retval=$retval."\t<hf_expressions>\n";
     //foreach ($this->obj_exprssion as $hf_expression)
     //{
     $retval = $retval . $this->obj_expression->toxml(True);
     //}
     //$retval=$retval."\t</hf_expressions>\n";
     $retval = $retval . "\t<hf_parameters>\n";
     foreach ($this->obj_hf_parameters as $hf_param) {
         $retval = $retval . $hf_param->toxml();
     }
     $retval = $retval . "\t</hf_parameters>\n";
     $retval = $retval . "\t<hf_resources>\n";
     foreach ($this->obj_hf_resources as $hf_resource) {
         $retval = $retval . $hf_resource->toxml();
     }
     $retval = $retval . "\t</hf_resources>\n";
     $retval = $retval . "\t<hf_node_filters>\n";
     foreach ($this->obj_hf_node_filters as $hf_node_filters) {
         $retval = $retval . $hf_node_filters->toxml();
     }
     $retval = $retval . "\t</hf_node_filters>\n";
     $retval = $retval . "\t<hf_tags>\n";
     foreach ($this->obj_hf_tags as $hf_tags) {
         $retval = $retval . $hf_tags->toxml();
     }
     $retval = $retval . "\t</hf_tags>\n";
     $retval = $retval . "\t<hf_files>\n";
     foreach ($this->obj_hf_files as $hf_files) {
         $retval = $retval . $hf_files->toxml();
     }
     $retval = $retval . "\t</hf_files>\n";
     $retval = $retval . "\t<hf_kills>\n";
     foreach ($this->obj_hf_kill as $hf_kill) {
         $retval = $retval . $hf_kill->toxml();
     }
     $retval = $retval . "\t</hf_kills>\n";
     $retval = $retval . "\t<hf_inherits>\n";
     foreach ($this->obj_hf_inherit as $hf_inherit) {
         $retval = $retval . $hf_inherit->toxml();
     }
     $retval = $retval . "\t</hf_inherits>\n";
     $retval = $retval . "\t<hf_system_kinds>\n";
     foreach ($this->obj_hf_system_kind as $hf_system_kind) {
         $retval = $retval . $hf_system_kind->toxml();
     }
     $retval = $retval . "\t</hf_system_kinds>\n";
     $retval = $retval . "</" . get_class($this) . ">\n";
     if ($this->obj_hf_inherit) {
         if (count($this->obj_hf_inherit) > 0) {
             if ($first) {
                 $retval = $retval . "</hf_id_users>";
             }
         }
     }
     return $retval;
 }
예제 #2
0
파일: download.php 프로젝트: hisapi/his
        }
    }
}
$qn = "";
if (isset($_GET['q'])) {
    $qn = $_GET['q'];
}
if (strlen($qn) > 0) {
    if (isset($_GET['file'])) {
        if ($_GET['file'] == "hisfunctionxmlexport") {
            $u->build();
            $q = new hf_id_user();
            $q->get_from_hashrange($u->id_user, $qn);
            $q->build();
            $hf_name = $q->name;
            $chars = ' !@#$%^&*()_+-=[]{}\\|;\':"<>?,./;';
            for ($i = 0; $i < strlen($chars) - 2; $i++) {
                $char = substr($chars, $i, 1);
                $hf_name = str_replace($char, "_", $hf_name);
            }
            //$hf_name = urlencode($hf_name);
            $hf_name = "" . $hf_name . ".hf.xml";
            $export = $q->toxml(true);
            $export = $q->toxml(true);
            file_download($hf_name, $export);
            exit;
        }
    }
}
// end if
exit;