当前位置: 首页>>代码示例>>PHP>>正文


PHP clsPermissoes类代码示例

本文整理汇总了PHP中clsPermissoes的典型用法代码示例。如果您正苦于以下问题:PHP clsPermissoes类的具体用法?PHP clsPermissoes怎么用?PHP clsPermissoes使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了clsPermissoes类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_transferencia_tipo = $_GET["cod_transferencia_tipo"];
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(575, $this->pessoa_logada, 7, "educar_transferencia_tipo_lst.php");
     if (is_numeric($this->cod_transferencia_tipo)) {
         $obj = new clsPmieducarTransferenciaTipo();
         $lst = $obj->lista($this->cod_transferencia_tipo);
         $registro = array_shift($lst);
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             $this->fexcluir = $obj_permissoes->permissao_excluir(575, $this->pessoa_logada, 7);
             $retorno = "Editar";
         }
     }
     $this->url_cancelar = $retorno == "Editar" ? "educar_transferencia_tipo_det.php?cod_transferencia_tipo={$registro["cod_transferencia_tipo"]}" : "educar_transferencia_tipo_lst.php";
     $this->nome_url_cancelar = "Cancelar";
     return $retorno;
 }
开发者ID:eritter-ti,项目名称:ieducar,代码行数:26,代码来源:educar_transferencia_tipo_cad.php

示例2: Gerar

 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Disciplina Tópico - Detalhe";
     $this->cod_disciplina_topico = $_GET["cod_disciplina_topico"];
     $tmp_obj = new clsPmieducarDisciplinaTopico($this->cod_disciplina_topico);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_disciplina_topico_lst.php");
         die;
     }
     if ($registro["nm_topico"]) {
         $this->addDetalhe(array("Nome Tópico", "{$registro["nm_topico"]}"));
     }
     if ($registro["desc_topico"]) {
         $this->addDetalhe(array("Descrição Tópico", "{$registro["desc_topico"]}"));
     }
     $objPermissao = new clsPermissoes();
     if ($objPermissao->permissao_cadastra(565, $this->pessoa_logada, 7)) {
         $this->url_novo = "educar_disciplina_topico_cad.php";
         $this->url_editar = "educar_disciplina_topico_cad.php?cod_disciplina_topico={$registro["cod_disciplina_topico"]}";
     }
     $this->url_cancelar = "educar_disciplina_topico_lst.php";
     $this->largura = "100%";
 }
开发者ID:secteofilandia,项目名称:ieducar,代码行数:27,代码来源:educar_disciplina_topico_det.php

示例3: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_infra_predio_comodo = $_GET["cod_infra_predio_comodo"];
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(574, $this->pessoa_logada, 7, "educar_infra_predio_comodo_lst.php");
     if (is_numeric($this->cod_infra_predio_comodo)) {
         $obj = new clsPmieducarInfraPredioComodo($this->cod_infra_predio_comodo);
         $registro = $obj->detalhe();
         if ($registro) {
             $obj_infra_comodo = new clsPmieducarInfraPredio($registro["ref_cod_infra_predio"]);
             $det_comodo = $obj_infra_comodo->detalhe();
             $registro["ref_cod_escola"] = $det_comodo["ref_cod_escola"];
             $obj_escola = new clsPmieducarEscola($det_comodo["ref_cod_escola"]);
             $det_escola = $obj_escola->detalhe();
             $registro["ref_cod_instituicao"] = $det_escola["ref_cod_instituicao"];
             //echo "<pre>";print_r($registro);die;
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             $this->fexcluir = true;
             $retorno = "Editar";
         }
     }
     $this->url_cancelar = $retorno == "Editar" ? "educar_infra_predio_comodo_det.php?cod_infra_predio_comodo={$registro["cod_infra_predio_comodo"]}" : "educar_infra_predio_comodo_lst.php";
     $this->nome_url_cancelar = "Cancelar";
     return $retorno;
 }
开发者ID:eritter-ti,项目名称:ieducar,代码行数:32,代码来源:educar_infra_predio_comodo_cad.php

示例4: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_religiao = $_GET["cod_religiao"];
     //** Verificacao de permissao para cadastro
     $obj_permissao = new clsPermissoes();
     $obj_permissao->permissao_cadastra(579, $this->pessoa_logada, 3, "educar_religiao_lst.php");
     //**
     if (is_numeric($this->cod_religiao)) {
         $obj = new clsPmieducarReligiao($this->cod_religiao);
         $registro = $obj->detalhe();
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             //** verificao de permissao para exclusao
             $this->fexcluir = $obj_permissao->permissao_excluir(579, $this->pessoa_logada, 3);
             //**
             $retorno = "Editar";
         }
     }
     $this->url_cancelar = $retorno == "Editar" ? "educar_religiao_det.php?cod_religiao={$registro["cod_religiao"]}" : "educar_religiao_lst.php";
     $nomeMenu = $retorno == "Editar" ? $retorno : "Cadastrar";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "{$nomeMenu} religi&atilde;o"));
     $this->enviaLocalizacao($localizacao->montar());
     $this->nome_url_cancelar = "Cancelar";
     return $retorno;
 }
开发者ID:secteofilandia,项目名称:ieducar,代码行数:33,代码来源:educar_religiao_cad.php

示例5: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_tipo_regime = $_GET["cod_tipo_regime"];
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(568, $this->pessoa_logada, 3, "educar_tipo_regime_lst.php");
     if (is_numeric($this->cod_tipo_regime)) {
         $obj = new clsPmieducarTipoRegime($this->cod_tipo_regime);
         $registro = $obj->detalhe();
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             //** verificao de permissao para exclusao
             $this->fexcluir = $obj_permissoes->permissao_excluir(568, $this->pessoa_logada, 3);
             //**
             $retorno = "Editar";
         }
     }
     $this->url_cancelar = $retorno == "Editar" ? "educar_tipo_regime_det.php?cod_tipo_regime={$registro["cod_tipo_regime"]}" : "educar_tipo_regime_lst.php";
     $this->nome_url_cancelar = "Cancelar";
     return $retorno;
 }
开发者ID:eritter-ti,项目名称:ieducar,代码行数:27,代码来源:educar_tipo_regime_cad.php

示例6: Inicializar

 function Inicializar()
 {
     $retorno = 'Novo';
     session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     // Verifica se o usuário tem permissão para realizar o cadastro
     $obj_permissao = new clsPermissoes();
     $obj_permissao->permissao_cadastra(554, $this->pessoa_logada, 1, 'educar_tipo_usuario_lst.php', TRUE);
     $this->cod_tipo_usuario = $_GET['cod_tipo_usuario'];
     if (is_numeric($this->cod_tipo_usuario)) {
         $obj = new clsPmieducarTipoUsuario($this->cod_tipo_usuario);
         if (!($registro = $obj->detalhe())) {
             header('Location: educar_tipo_usuario_lst.php');
         }
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 $this->{$campo} = $val;
             }
             $this->fexcluir = $obj_permissao->permissao_excluir(554, $this->pessoa_logada, 1, null, true);
             $retorno = "Editar";
         }
     }
     $this->url_cancelar = $retorno == 'Editar' ? 'educar_tipo_usuario_det.php?cod_tipo_usuario=' . $registro['cod_tipo_usuario'] : 'educar_tipo_usuario_lst.php';
     $this->nome_url_cancelar = 'Cancelar';
     return $retorno;
 }
开发者ID:krlsdu,项目名称:ieducar,代码行数:27,代码来源:educar_tipo_usuario_cad.php

示例7: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_deficiencia = $_GET["cod_deficiencia"];
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(631, $this->pessoa_logada, 7, "educar_deficiencia_lst.php");
     if (is_numeric($this->cod_deficiencia)) {
         $obj = new clsCadastroDeficiencia($this->cod_deficiencia);
         $registro = $obj->detalhe();
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             if ($obj_permissoes->permissao_excluir(631, $this->pessoa_logada, 7)) {
                 $this->fexcluir = true;
             }
             $retorno = "Editar";
         }
     }
     $this->url_cancelar = $retorno == "Editar" ? "educar_deficiencia_det.php?cod_deficiencia={$registro["cod_deficiencia"]}" : "educar_deficiencia_lst.php";
     $this->nome_url_cancelar = "Cancelar";
     return $retorno;
 }
开发者ID:krlsdu,项目名称:ieducar,代码行数:27,代码来源:educar_deficiencia_cad.php

示例8: Gerar

 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Aluno Beneficio - Detalhe";
     $this->cod_aluno_beneficio = $_GET["cod_aluno_beneficio"];
     $tmp_obj = new clsPmieducarAlunoBeneficio($this->cod_aluno_beneficio);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_aluno_beneficio_lst.php");
         die;
     }
     if ($registro["cod_aluno_beneficio"]) {
         $this->addDetalhe(array("C&oacute;digo Benef&iacute;cio", "{$registro["cod_aluno_beneficio"]}"));
     }
     if ($registro["nm_beneficio"]) {
         $this->addDetalhe(array("Benef&iacute;cio", "{$registro["nm_beneficio"]}"));
     }
     if ($registro["desc_beneficio"]) {
         $this->addDetalhe(array("Descri&ccedil;&atilde;o", nl2br("{$registro["desc_beneficio"]}")));
     }
     //** Verificacao de permissao para cadastro
     $obj_permissao = new clsPermissoes();
     if ($obj_permissao->permissao_cadastra(581, $this->pessoa_logada, 3)) {
         $this->url_novo = "educar_aluno_beneficio_cad.php";
         $this->url_editar = "educar_aluno_beneficio_cad.php?cod_aluno_beneficio={$registro["cod_aluno_beneficio"]}";
     }
     //**
     $this->url_cancelar = "educar_aluno_beneficio_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe do benef&iacute;cio de alunos"));
     $this->enviaLocalizacao($localizacao->montar());
 }
开发者ID:secteofilandia,项目名称:ieducar,代码行数:35,代码来源:educar_aluno_beneficio_det.php

示例9: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_infra_predio = $_GET["cod_infra_predio"];
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(567, $this->pessoa_logada, 7, "educar_infra_predio_lst.php");
     if (is_numeric($this->cod_infra_predio)) {
         $obj = new clsPmieducarInfraPredio($this->cod_infra_predio);
         $registro = $obj->detalhe();
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             //** verificao de permissao para exclusao
             $this->fexcluir = $obj_permissoes->permissao_excluir(567, $this->pessoa_logada, 7);
             //**
             $retorno = "Editar";
         } else {
             header("Location: educar_infra_predio_lst.php");
             die;
         }
     }
     $this->url_cancelar = $retorno == "Editar" ? "educar_infra_predio_det.php?cod_infra_predio={$registro["cod_infra_predio"]}" : "educar_infra_predio_lst.php";
     $this->nome_url_cancelar = "Cancelar";
     return $retorno;
 }
开发者ID:eritter-ti,项目名称:ieducar,代码行数:30,代码来源:educar_infra_predio_cad.php

示例10: Gerar

 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Defici&ecirc;ncia - Detalhe";
     $this->cod_deficiencia = $_GET["cod_deficiencia"];
     $tmp_obj = new clsCadastroDeficiencia($this->cod_deficiencia);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_deficiencia_lst.php");
         die;
     }
     if ($registro["nm_deficiencia"]) {
         $this->addDetalhe(array("Deficiência", "{$registro["nm_deficiencia"]}"));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(631, $this->pessoa_logada, 7)) {
         $this->url_novo = "educar_deficiencia_cad.php";
         $this->url_editar = "educar_deficiencia_cad.php?cod_deficiencia={$registro["cod_deficiencia"]}";
     }
     $this->url_cancelar = "educar_deficiencia_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe da defici&ecirc;ncia"));
     $this->enviaLocalizacao($localizacao->montar());
 }
开发者ID:secteofilandia,项目名称:ieducar,代码行数:27,代码来源:educar_deficiencia_det.php

示例11: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_serie = $_GET["cod_serie"];
     //die();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(583, $this->pessoa_logada, 3, "educar_serie_lst.php");
     /*if( is_numeric( $this->cod_serie ) )
     		{
     
     			$obj = new clsPmieducarSerie( $this->cod_serie );
     			$registro  = $obj->detalhe();
     			if( $registro )
     			{
     				foreach( $registro AS $campo => $val )	// passa todos os valores obtidos no registro para atributos do objeto
     					$this->$campo = $val;
     
     				$obj_curso = new clsPmieducarCurso($registro["ref_cod_curso"]);
     				$obj_curso_det = $obj_curso->detalhe();
     				$this->ref_cod_instituicao = $obj_curso_det["ref_cod_instituicao"];
     				$this->fexcluir = $obj_permissoes->permissao_excluir( 583, $this->pessoa_logada,3 );
     				$retorno = "Editar";
     			}
     		}*/
     //		$this->url_cancelar = ($retorno == "Editar") ? "educar_serie_det.php?cod_serie={$registro["cod_serie"]}" : "educar_serie_lst.php";
     $this->script_cancelar = "window.parent.fechaExpansivel(\"div_dinamico_\"+(parent.DOM_divs.length-1));";
     $this->nome_url_cancelar = "Cancelar";
     $this->campoOculto("ref_cod_instituicao", $this->ref_cod_instituicao);
     $this->campoOculto("ref_cod_curso", $this->ref_cod_curso);
     return $retorno;
 }
开发者ID:secteofilandia,项目名称:ieducar,代码行数:34,代码来源:educar_serie_cad_pop.php

示例12: Inicializar

 function Inicializar()
 {
     //	print_r($_POST);die;
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     //$this->ref_cod_turma=$_GET["ref_cod_turma"];
     foreach ($_GET as $key => $value) {
         $this->{$key} = $value;
     }
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, "educar_matricula_lst.php");
     if (is_numeric($this->ref_cod_matricula) && is_numeric($this->formando)) {
         $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, null, null, null, null, null, null, null, $this->formando);
         $registro = $obj->detalhe();
         if ($registro) {
             if (!$obj->edita()) {
                 echo "erro ao cadastrar";
                 die;
             }
             $des = "";
             if (!$this->formando) {
                 $des = "des";
             }
             echo "<script>alert('Matrícula {$des}marcada como formando com sucesso!'); window.location='educar_matricula_det.php?cod_matricula={$this->ref_cod_matricula}';</script>";
         }
     }
     header("location: educar_matricula_lst.php");
     die;
 }
开发者ID:secteofilandia,项目名称:ieducar,代码行数:31,代码来源:educar_matricula_formando_cad.php

示例13: Gerar

 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Pontos - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->campoNumero("cod_ponto", "C&oacute;digo do ponto", $this->cod_ponto, 20, 255, false);
     $this->campoTexto("descricao", "Descrição", $this->descricao, 50, 255, false);
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     $this->addCabecalhos(array("C&oacute;digo do ponto", "Descrição"));
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     $obj_ponto = new clsModulesPontoTransporteEscolar();
     $obj_ponto->setOrderBy(' descricao asc ');
     $obj_ponto->setLimite($this->limite, $this->offset);
     $pontos = $obj_ponto->lista($this->cod_ponto, $this->descricao);
     $total = $pontos->_total;
     foreach ($pontos as $registro) {
         $this->addLinhas(array("<a href=\"transporte_ponto_det.php?cod_ponto={$registro["cod_ponto_transporte_escolar"]}\">{$registro["cod_ponto_transporte_escolar"]}</a>", "<a href=\"transporte_ponto_det.php?cod_ponto={$registro["cod_ponto_transporte_escolar"]}\">{$registro["descricao"]}</a>"));
     }
     $this->addPaginador2("transporte_ponto_lst.php", $total, $_GET, $this->nome, $this->limite);
     $this->acao = "go(\"../module/TransporteEscolar/Ponto\")";
     $this->nome_acao = "Novo";
     $this->largura = "100%";
 }
开发者ID:krlsdu,项目名称:ieducar,代码行数:32,代码来源:transporte_ponto_lst.php

示例14: Gerar

 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Escolaridade - Detalhe';
     $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet');
     $this->idesco = $_GET['idesco'];
     $tmp_obj = new clsCadastroEscolaridade($this->idesco);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header('Location: educar_escolaridade_lst.php');
         die;
     }
     if ($registro['descricao']) {
         $this->addDetalhe(array('Descri&ccedil;&atilde;o', $registro['descricao']));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(632, $this->pessoa_logada, 3)) {
         $this->url_novo = 'educar_escolaridade_cad.php';
         $this->url_editar = 'educar_escolaridade_cad.php?idesco=' . $registro['idesco'];
     }
     $this->url_cancelar = 'educar_escolaridade_lst.php';
     $this->largura = '100%';
 }
开发者ID:eritter-ti,项目名称:ieducar,代码行数:25,代码来源:educar_escolaridade_det.php

示例15: Inicializar

 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_nivel_ensino = $_GET["cod_nivel_ensino"];
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(571, $this->pessoa_logada, 3, "educar_nivel_ensino_lst.php");
     if (is_numeric($this->cod_nivel_ensino)) {
         $obj = new clsPmieducarNivelEnsino($this->cod_nivel_ensino);
         $registro = $obj->detalhe();
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             $this->fexcluir = $obj_permissoes->permissao_excluir(571, $this->pessoa_logada, 3);
             $retorno = "Editar";
         }
     }
     //		$this->url_cancelar = ($retorno == "Editar") ? "educar_nivel_ensino_det.php?cod_nivel_ensino={$registro["cod_nivel_ensino"]}" : "educar_nivel_ensino_lst.php";
     $this->nome_url_cancelar = "Cancelar";
     $this->script_cancelar = "window.parent.fechaExpansivel(\"div_dinamico_\"+(parent.DOM_divs.length-1));";
     return $retorno;
 }
开发者ID:secteofilandia,项目名称:ieducar,代码行数:26,代码来源:educar_nivel_ensino_cad_pop.php


注:本文中的clsPermissoes类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。