Arquivado
Este tópico foi arquivado e está fechado para novas respostas.
Menu (navbar) com Bootstrap
Por
juninhogpe, em Desenvolvimento frontend
Recommended Posts
-
Conteúdo Similar
-
Por clovis.sardinha
Como fazer para colocar um spinner antes de carregar os dados do bd? Eu clico no link e entra na função do controle e só vai para a página da views quando já está pronto a query. Vi uns exemplos de colocação de spinner, mas se a página ainda não apareceu como faço? Vou anexar a função que chama a página para facilitar.
public function inativos() { $session = \Config\Services::session(); $pager = \Config\Services::pager(); $usuarios=$this->usuarios->getInativos();//faz a query no bd. $dados=[ 'usuarios'=>$usuarios, 'pager'=>$this->usuarios->pager, ]; echo view('Admin/Relatorios/listaInativos',$dados); }
-
Por Giovanird
Olá a todos!
Tenho um script para favoritar com estrela um registro na lista da tabela.
O problema é que quando a pagina foi rolada para baixo e ao clicar sobre a estrela, a tela rola para o topo.
Abaixo o script:
<a href="#" class="favourite" data-id="<?=$id;?>"><img src=assets/images/star3.png></a> <script> $(document).ready(function() { $('.favourite').on('click', null, function() { var _this = $(this); var post_id = _this.data('id'); $.ajax({ type : 'POST', url : 'addfavorito.php', dataType : 'json', data : 'id='+ post_id, complete : function(data) { if(_this.siblings('.typcn-star-outline')) { _this.html('<img src=assets/images/star3.png>'); } else { _this.html('<img src=assets/images/star4.png>'); } } }); }); }); </script>
-
Por Kisha
Estou procurando um programador web para desenvolver um site front responsivo, de preferência pessoas com referências e trabalhos já feitos.
Contato via discord: quando eu tinha uma glock#5547
-
Por Ilano
Olá pessoal,
Utilizo Visual Studio para desenvolver minhas aplicações web e estou tendo problemas ao montar meus submenus. O menu normal está sendo montado direitinho mas, quando preciso montar os submenus não dá certo. Já pesquisei pela web e o máximo que consegui foi a montagem de um menu normal. Alguém poderia me dar uma dica de como melhorar meu código para que finalmente consiga montar um menu com vários níveis de submenus? Abaixo segue todo o código.
Aqui está minha tabela:
CREATE TABLE [dbo].[MENUS]( [ID] [int] NOT NULL, [PARENTEID] [int] NULL, [NOME] [varchar](100) NOT NULL, [DESCRICAO] [varchar](100) NOT NULL, [ARQUIVO] [varchar](100) NULL, [TARGETMENU] [varchar](10) NULL, [NIVEL] [int] NULL, [ORDENAR] [int] NOT NULL, CONSTRAINT [PK_MENUS] PRIMARY KEY CLUSTERED ( [ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO ALTER TABLE [dbo].[MENUS] WITH CHECK ADD CONSTRAINT [MENUS_fk] FOREIGN KEY([PARENTEID]) REFERENCES [dbo].[MENUS] ([ID]) GO ALTER TABLE [dbo].[MENUS] CHECK CONSTRAINT [MENUS_fk] GO
Aqui segue os inserts:
(Nenhum nome de coluna) INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 1, NULL,'Auxiliares', 'Cadastro de auxiliares', '#', '_self', 1,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 2, NULL,'Cursos', 'Cadastro de cursos e editais', '#', '_self', 2,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 3, NULL,'Matricula', 'Cadastro de matrículas', '#', '_self', 3,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 4, NULL,'Seguranca', 'Cadastros de segurança', '#', '_self', 4,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 5, NULL,'Marketing', 'Cadastro de marketing', '#', '_self', 5,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 6, NULL,'Ferramentas', 'Cadastro de ferramentas', '#', '_self', 6,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 7, 1, 'Benefícios', 'Cadastro de benfícios do edital', 'cadBeneficios.aspx', '_self', 1,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 8, 1, 'Cargos', 'Cadastro de cargos', 'cadCargos.aspx', '_self', 1,2); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 9, 1, 'Países', 'Cadastro de países', 'cadPaises.aspx', '_self', 1,3); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 10, 1, 'Estados', 'Cadastro de estados', 'cadEstados.aspx', '_self', 1,4); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 11, 1, 'Macrorregião', 'Cadastro de macrorregiões', 'cadMacroregiao.aspx', '_self', 1,5); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 12, 1, 'Cidades', 'Cadastro de cidades', 'cadCidades.aspx', '_self', 1,6); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 13, 1, 'Escolaridade', 'Cadastro de escolaridades', 'cadEscolaridade.aspx', '_self', 1,7); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 14, 1, 'Estado civil', 'Cadastro de estado civil', 'cadEstadoCivil.aspx', '_self', 1,8); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 15, 1, 'Expectativas', 'cadastro de expectativas', 'cadExpectativas.aspx', '_self', 1,9); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 16, 1, 'Fonte de recursos', 'Cadastro de fontes de recursos', 'cadFonteRecursos.aspx', '_self', 1,10); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 17, 1, 'Lotação', 'Cadastro de lotação', 'cadLotacao.aspx', '_self', 1,11); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 18, 1, 'Modalidades', 'Cadastro de modalidades', 'cadModalidades.aspx', '_self', 1,12); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 19, 2, 'Motivos', 'Cadastro de motivos', 'cadMotivos.aspx', '_self', 2,4); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 20, 1, 'Necessidades especiais', 'Cadastro de necessidades especiais', 'cadNecessidadesEspeciais.aspx', '_self', 1,14); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 21, 1, 'Pré-requisitos', 'Cadastro de pré-requisitos', 'cadPrerrequisitos.aspx', '_self', 1,15); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 22, 1, 'Profissões', 'Cadastro de profissões', 'cadProfissoes.aspx', '_self', 1,16); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 23, 1, 'Projetos', 'Cdastro de projetos', 'cadProjetos.aspx', '_self', 1,17); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 24, 1, 'Setor beneficiado', 'Cdastro de setores beneficiados', 'cadSetorBeneficiado.aspx', '_self', 1,18); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 25, 2, 'Eixos', 'Cadastro de eixos', 'cadEixos.aspx', '_self', 2,1); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 26, 2, 'Cursos', 'Cadastro de cursos', 'cadCursos.aspx', '_self', 2,2); INSERT INTO MENUS (ID, PARENTEID, NOME, DESCRICAO, ARQUIVO, TARGETMENU, NIVEL, ORDENAR) VALUES ( 27, 2, 'Editais', 'Cadastro de editais', 'cadEdital.aspx', '_self', 2,3); Aqui tem o objeto objMenus.vb
Imports System.Data.SqlClient Namespace DETI Public Class objMenu Private Db As classDatabase.DbSql Private Cm As SqlCommand Private Fn As New Funcoes.classFuncao ' DeclaMENUo das variaveis Private vlID As Integer Private vlNOME As String Private vlDESCRICAO As String Private vlARQUIVO As String Private vlTARGETMENU As String Private vlPARENTEID As Integer Private vlNIVEL As Integer Private vlORDENAR As Integer ' DeclaMENUo das propriedades Property ID() Get Return vlID End Get Set(ByVal Value) vlID = Value End Set End Property Property NOME() Get Return vlNOME End Get Set(ByVal Value) vlNOME = Value End Set End Property Property DESCRICAO() Get Return vlDESCRICAO End Get Set(ByVal Value) vlDESCRICAO = Value End Set End Property Property ARQUIVO() Get Return vlARQUIVO End Get Set(ByVal Value) vlARQUIVO = Value End Set End Property Property TARGETMENU() Get Return vlTARGETMENU End Get Set(ByVal Value) vlTARGETMENU = Value End Set End Property Property PARENTEID() Get Return vlPARENTEID End Get Set(ByVal Value) vlPARENTEID = Value End Set End Property Property NIVEL() Get Return vlNIVEL End Get Set(ByVal Value) vlNIVEL = Value End Set End Property Property ORDENAR() Get Return vlORDENAR End Get Set(ByVal Value) vlORDENAR = Value End Set End Property ' DeclaMENUo dos procedimentos Public Function Inserir() Dim pParametro As String = DBNull.Value.ToString If vlPARENTEID > 0 Then pParametro = " AND A.PARENTEID = " & vlPARENTEID Try Cm = New SqlCommand ' Gera o código Db = New classDatabase.DbSql Db.NomeTabela = "MENUS" vlID = Db.Chave("ID") Db = Nothing With Cm.Parameters .AddWithValue("@ID", vlID) If vlPARENTEID > 0 Then .AddWithValue("@PARENTEID", vlPARENTEID) Else .AddWithValue("@PARENTEID", DBNull.Value) .AddWithValue("@NOME", Trim(vlNOME)) If Trim(vlDESCRICAO) <> DBNull.Value.ToString Then .AddWithValue("@DESCRICAO", Trim(vlDESCRICAO)) Else .AddWithValue("@DESCRICAO", DBNull.Value) If Trim(vlARQUIVO) <> DBNull.Value.ToString Then If Right(Trim(vlARQUIVO), 5) <> ".aspx" Then .AddWithValue("@ARQUIVO", Trim(vlARQUIVO) & ".aspx") Else .AddWithValue("@ARQUIVO", Trim(vlARQUIVO)) Else If Trim(vlARQUIVO) = DBNull.Value.ToString Then .AddWithValue("@ARQUIVO", "#") End If End If If Trim(vlTARGETMENU) <> DBNull.Value.ToString Then .AddWithValue("@TARGETMENU", Trim(vlTARGETMENU)) Else .AddWithValue("@TARGETMENU", "_self") .AddWithValue("@NIVEL", vlNIVEL) .AddWithValue("@ORDENAR", vlORDENAR) End With If Busca(" A.NOME = '" & Trim(vlNOME) & "' AND A.ARQUIVO = '" & Trim(vlARQUIVO) & "' " & pParametro) Then Return "REGISTRO JÁ CADASTRADO!" Else ' Cria uma instância do objeto de conexao com o banco de dados ' e preenche os dados necessarios para realizar as operacoes Db = New classDatabase.DbSql Db.NomeTabela = "MENUS" Return Db.Salvar(Cm) End If Catch ex As Exception Return "OCORREU UM ERRO AO TENTAR INCLUIR UM NOVO REGISTRO:" & ex.Message Finally Cm = Nothing Db = Nothing End Try End Function Public Function Alterar() As String Dim pParametro As String = DBNull.Value.ToString If vlPARENTEID > 0 Then pParametro = " AND A.PARENTEID = " & vlPARENTEID Try Cm = New SqlCommand With Cm.Parameters If vlPARENTEID > 0 Then .AddWithValue("@PARENTEID", vlPARENTEID) Else .AddWithValue("@PARENTEID", DBNull.Value) .AddWithValue("@NOME", Trim(vlNOME)) If Trim(vlDESCRICAO) <> DBNull.Value.ToString Then .AddWithValue("@DESCRICAO", Trim(vlDESCRICAO)) Else .AddWithValue("@DESCRICAO", DBNull.Value) If Trim(vlARQUIVO) <> DBNull.Value.ToString And Trim(vlARQUIVO) <> "#" And Trim(vlARQUIVO) <> "#.aspx" Then If Right(Trim(vlARQUIVO), 5) <> ".aspx" Then .AddWithValue("@ARQUIVO", Trim(vlARQUIVO) & ".aspx") Else .AddWithValue("@ARQUIVO", Trim(vlARQUIVO)) Else If Trim(vlARQUIVO) = DBNull.Value.ToString Then .AddWithValue("@ARQUIVO", "#") End If End If If Trim(vlTARGETMENU) <> DBNull.Value.ToString Then .AddWithValue("@TARGETMENU", Trim(vlTARGETMENU)) Else .AddWithValue("@TARGETMENU", "_self") .AddWithValue("@NIVEL", vlNIVEL) .AddWithValue("@ORDENAR", vlORDENAR) End With If Busca(" A.ID <> " & vlID & pParametro & " AND A.NOME = '" & Trim(vlNOME) & "' AND A.ARQUIVO = '" & Trim(vlARQUIVO) & "' ") Then Return "REGISTRO JÁ CADASTRADO!" Else ' Cria uma instância do objeto de conexao com o banco de dados ' e preenche os dados necessarios para realizar as operacoes Db = New classDatabase.DbSql Db.NomeTabela = "MENUS" Return Db.Salvar(Cm, "ID", vlID) End If Catch ex As Exception Return "Erro:" & ex.Message Finally Cm = Nothing Db = Nothing End Try End Function Public Function Excluir() As String Try ' Cria uma instância do objeto de conexao com o banco de dados ' e preenche os dados necessarios para realizar as operacoes Db = New classDatabase.DbSql Db.NomeTabela = "MENUS" Return Db.Excluir("ID", vlID) Catch ex As Exception Return "OCORREU UM ERRO AO TENTAR EXCLUIR ESTE REGISTRO: " & ex.Message Finally Db = Nothing End Try End Function Public Function Consultar(ByVal pParametro As String, ByVal pOrdem As String) As Data.DataSet Dim SQL As New System.Text.StringBuilder SQL.Append(" SELECT A.ID, PARENTEID = ISNULL(A.PARENTEID, 0), A.NOME, A.DESCRICAO, ") SQL.Append(" A.ARQUIVO, A.ORDENAR, ORDEMPARENTE = B.ORDENAR, PARENTE = B.NOME, ") SQL.Append(" CONTAR = ROW_NUMBER() OVER(PARTITION BY A.PARENTEID ORDER BY A.PARENTEID ASC), ") SQL.Append(" LINKARQUIVO = CASE WHEN B.ARQUIVO Is NULL And A.PARENTEID Is NULL THEN '' ") SQL.Append(" WHEN LTRIM(RTRIM(B.ARQUIVO)) IS NULL AND A.PARENTEID IS NULL THEN 'http://localhost:1219/' + A.ARQUIVO ") SQL.Append(" WHEN LTRIM(RTRIM(B.ARQUIVO)) = '' AND A.PARENTEID IS NULL THEN '' ") SQL.Append(" ELSE 'http://localhost:1219/' + ISNULL(B.NOME + '/', '') + ISNULL(A.ARQUIVO, '#') END, ") SQL.Append(" A.TARGETMENU, A.NIVEL, ") SQL.Append(" SELECIONA_TARGET = CASE A.TARGETMENU WHEN '_blank' THEN 'True' ELSE 'False' END, ") SQL.Append(" PARENTE = ISNULL(B.NOME, '') ") SQL.Append(" FROM MENUS A ") SQL.Append(" LEFT JOIN MENUS B ON (B.ID = A.PARENTEID) ") If Trim(pParametro) <> "" Then SQL.Append(" WHERE " & pParametro & "") If Trim(pOrdem) <> "" Then SQL.Append(" ORDER BY " & Trim(pOrdem)) Else SQL.Append(" ORDER BY A.PARENTEID, CONTAR ") Try ' Cria uma instância do objeto de conexao com o banco de dados ' e preenche os dados necessarios para realizar as operacoes Db = New classDatabase.DbSql Return Db.Consultar(SQL.ToString) Catch ex As Exception Return Nothing Finally Db = Nothing End Try End Function Public Function ConsultarTopo(ByVal pParametro As String) As Data.DataSet Dim SQL As New System.Text.StringBuilder SQL.Append(" SELECT TOP " & vlID & " ID ") SQL.Append(" FROM MENUS ") If Trim(pParametro) <> "" Then SQL.Append(" WHERE " & pParametro & " ") SQL.Append(" ORDER BY NOME ") Try ' Cria uma instância do objeto de conexao com o banco de dados ' e preenche os dados necessarios para realizar as operacoes Db = New classDatabase.DbSql Return Db.Consultar(SQL.ToString) Catch ex As Exception Return Nothing Finally Db = Nothing End Try End Function Public Function ConsultaGenerica(ByVal pSQL As String) As Data.DataSet Dim SQL As New System.Text.StringBuilder SQL.Append(pSQL) Try ' Cria uma instância do objeto de conexao com o banco de dados ' e preenche os dados necessarios para realizar as operacoes Db = New classDatabase.DbSql Return Db.Consultar(SQL.ToString) Catch ex As Exception Return Nothing Finally Db = Nothing End Try End Function Public Function ExecutaSQLGenerica(ByVal pSQL As String) As String Dim Sql As New System.Text.StringBuilder Sql.Append(pSQL) Try 'Cria uma instância do objeto de conexao com o banco de dados ' e preenche os dados necessarios para realizar as operacoes Db = New classDatabase.DbSql Return Db.ExecutaSql(pSQL) Catch ex As Exception Return Nothing Finally Db = Nothing End Try End Function 'Função para retornar verdadeiro quando estação encontrada Private Function Busca(ByVal pParametro As String) As Boolean Dim Ds As Data.DataSet Ds = Consultar(pParametro, "") If Ds.Tables(0).Rows.Count <> 0 Then Return True Else Return False End If End Function End Class End Namespace
Em seguida, a página HTML:
<%@ Master Language="VB" CodeFile="MasterPage.master.vb" Inherits="inicio_MasterPage" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="../bootstrap/js/bootstrap.min.js"></script> <script src="../bootstrap/js/jquery.3.6.0.min.js"></script> <script src="../Scripts/ckeditor/ckeditor.js"></script> <link href="../bootstrap/css/bootstrap.css" rel="stylesheet" /> <link href="../bootstrap/meuMenu.css" rel="stylesheet" /> <link href="../bootstrap/css/panel-tabs.css" rel="stylesheet" /> <link href="../bootstrap/css/meu-menu.css" rel="stylesheet" /> <link href="../Scripts/ckeditor/contents.css" rel="stylesheet" /> <script src="../CPF_CNPJ.js"></script> <script src="../Funcoes.js"></script> <style> .cssUsuario { background-color:transparent; background-image:url("../bootstrap/images/user.svg"); background-position:left; background-repeat:no-repeat; padding-left:22px; text-align:left; height:20px; width:auto; border:0px none; border-collapse:collapse; cursor:pointer; } .cssFilial { background-color:transparent; background-image:url("../bootstrap/images/filial.svg"); background-position:left; background-repeat:no-repeat; padding-left:22px; text-align:left; height:20px; width:auto; border:0px none; border-collapse:collapse; cursor:pointer; } .cssEmail { background-color:transparent; background-image:url("../bootstrap/images/email.svg"); background-position:left; background-repeat:no-repeat; padding-left:22px; text-align:left; height:20px; width:auto; border:0px none; border-collapse:collapse; cursor:pointer; } .visible { display:block; } .invisible { display:none; } </style> <asp:ContentPlaceHolder id="head" runat="server"> </asp:ContentPlaceHolder> </head> <body> <form id="form1" runat="server"> <div><asp:ScriptManager ID="ScriptManager1" runat="server" EnableScriptGlobalization="True"></asp:ScriptManager></div> <div> <ajaxToolkit:ModalPopupExtender ID="mpeFilial" runat="server" PopupControlID="panTrocaFilial" BackgroundCssClass="ajaxModal" TargetControlID="BtnTrocaFilialOculto" CancelControlID="BtnCancela" DropShadow="true"> </ajaxToolkit:ModalPopupExtender> </div> <div style="display:none;"> <asp:Button ID="BtnTrocaFilialOculto" runat="server" Text="Confirma" /> </div> <div> <asp:Panel ID="panTrocaFilial" runat="server" CssClass="alert alert-info" style="padding:10px !important; display:none;" > <div class="row"> <div class="col-sm-12"> <div><h5>TROCA DE FILIAL</h5></div> <div> <asp:UpdatePanel ID="upLbFiliais" runat="server"> <ContentTemplate> <asp:ListBox ID="lbFiliais" runat="server" CssClass="form-control small" DataTextField="FANTASIA" DataValueField="ID" style="height:200px !important;"></asp:ListBox> </ContentTemplate> </asp:UpdatePanel> </div> <div style="margin-top:10px;"> <div class="row"> <div class="col-sm-6"> <asp:UpdatePanel ID="upConfirmaTrocaUser" runat="server"> <ContentTemplate> <asp:Button ID="BtnConfirma" runat="server" CssClass="btn btn-success small" style="margin-right:5px;" Text="Confirma" /> </ContentTemplate> </asp:UpdatePanel> </div> <div class="col-sm-6"> <asp:Button ID="BtnCancela" runat="server" CssClass="btn btn-secondary small" style="margin-right:5px;" Text="Cancela" /> </div> </div> </div> </div> </div> </asp:Panel> </div> <div class="container-fluid"> <div class="row" style="background-color:greenyellow !important;"> <div class="col-sm-12"> <h3>Início</h3> </div> </div> <div class="row" style="background-color:greenyellow !important;"> <div class="col-sm-12"> <div> <asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" RenderingMode="List" CssClass="navbar-nav mr-auto" StaticMenuItemStyle-CssClass="nav-item" > <DynamicHoverStyle CssClass="dropdown-menu" /> <DynamicMenuItemStyle CssClass="dropdown-item" VerticalPadding="5px" /> <DynamicMenuStyle CssClass="dropdown-menu" VerticalPadding="5px" /> <StaticHoverStyle CssClass="dropdown-menu" /> <StaticMenuItemStyle CssClass="dropdown-item" VerticalPadding="5px" ></StaticMenuItemStyle> </asp:Menu> </div> </div> </div> <div class="row" style="margin-bottom:20px !important; padding-bottom:10px; background-color:greenyellow;"> <div class="col-sm-4"> <asp:UpdatePanel ID="upUsuarioLogado" runat="server"> <ContentTemplate> <asp:Button ID="mpBtnUsuario" runat="server" /> </ContentTemplate> </asp:UpdatePanel> </div> <div class="col-sm-4"> <asp:UpdatePanel ID="upFilialLogado" runat="server"> <ContentTemplate> <asp:Button ID="mpBtnFilial" runat="server" /> </ContentTemplate> </asp:UpdatePanel> </div> <div class="col-sm-4"> <asp:UpdatePanel ID="upEmailLogado" runat="server"> <ContentTemplate> <asp:Button ID="mpBtnEmail" runat="server" /> </ContentTemplate> </asp:UpdatePanel> </div> </div> <div class="row"> <div class="col-sm-12"> <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"></asp:ContentPlaceHolder> </div> </div> </div> </form> </body> </html>
E, finalmente, o código VB
Imports System.Data Imports System.Data.DataSet Imports System.Data.SqlClient Imports System.Linq Imports System.IO Imports System.Collections.Generic Imports System.Web.UI Imports System.Web.UI.Control Partial Class inicio_MasterPage Inherits System.Web.UI.MasterPage Private Menu As New DETI.objMenu Private MenuPerfil As New DETI.objPerfisMenus Private Menus As DataTable = New DataTable() Private Usuario As New DETI.objUsuarios Private Fn As New Funcoes.classFuncao Private Sub getMenu() Dim Ds As DataSet = New DataSet() Dim dt As DataTable = New DataTable() Dim pItem As Integer = 0 'Ds = Menu.Consultar(" A.ID IN (SELECT X.MENUID FROM PERFISMENUS X WHERE X.PERFILID = " & Session("sPerfilID") & ") ", "") Ds = Menu.Consultar("", "") Menu1.Items.Add(New MenuItem("<span style='padding:1px 5px 1px 5px;'>Home</span>", 0, "", Fn.PegaDominioDaAplicacao & "/inicio/index.aspx")) If Not ds Is Nothing Then If ds.Tables(0).Rows.Count > 0 Then dt = ds.Tables(0) Dim drowpar As DataRow() = dt.[Select]("PARENTEID = " & 0) For Each dr As DataRow In drowpar Menu1.Items.Add(New MenuItem("<span style='padding:1px 5px 1px 5px;'>" & dr("NOME").ToString() & "</span>", dr("ID").ToString(), "", dr("LINKARQUIVO").ToString())) pItem = dr("ID") Next For Each dr As DataRow In dt.[Select]("PARENTEID > " & 0) Dim mnu As MenuItem = New MenuItem("<span style='padding:1px 5px 1px 5px;'>" & dr("NOME").ToString() & "</span>", dr("ID").ToString(), "", dr("LINKARQUIVO").ToString()) Menu1.FindItem(dr("NIVEL").ToString()).ChildItems.Add(mnu) Next If pItem > 0 Then pItem = pItem + 1 End If End If Menu1.Items.Add(New MenuItem("<span style='padding:5px;'>Sair</span>", pItem, "", Fn.PegaDominioDaAplicacao & "/index.aspx")) End Sub Private Sub IdentificaUsuario() Dim Ds As Data.DataSet Ds = Usuario.ConsultaGenerica(" SELECT A.USUARIOID, B.LOGIN, B.EMAIL, C.FANTASIA " & " FROM USUARIOSFILIAIS A " & " INNER JOIN USUARIOS B ON (B.ID = A.USUARIOID) " & " INNER JOIN FILIAL C ON (C.ID = A.FILIALID) " & " WHERE A.USUARIOID = " & Session("sUsuario") & " AND A.FILIALID = " & Session("sFilial") & " AND B.PERFILID = " & Session("sPerfilID")) mpBtnUsuario.Text = "" If Not Ds Is Nothing Then If Ds.Tables(0).Rows.Count > 0 Then mpBtnUsuario.CssClass = "cssUsuario visible" mpBtnUsuario.Text = Ds.Tables(0).Rows(0)("LOGIN") mpBtnFilial.CssClass = "cssFilial visible" mpBtnFilial.Text = Ds.Tables(0).Rows(0)("FANTASIA") mpBtnEmail.CssClass = "cssEmail visible" mpBtnEmail.Text = Ds.Tables(0).Rows(0)("EMAIL") getMenu() Else If Ds.Tables(0).Rows.Count = 0 Then mpBtnUsuario.CssClass = "invisible" mpBtnFilial.CssClass = "invisible" mpBtnEmail.CssClass = "invisible" Response.Redirect("../index.aspx") End If End If Else If Ds Is Nothing Then Response.Redirect("../index.aspx") End If End If End Sub Private Sub inico_MasterPage_Load(sender As Object, e As EventArgs) Handles Me.Load If Not IsPostBack Then If Session("sUsuario") Is Nothing Then Response.Redirect("../index.aspx") Else If Not Session("sUsuario") Is Nothing Then If Session("sUsuario") > 0 Then IdentificaUsuario() Else If Session("sUsuario") = 0 Then Response.Redirect("../index.aspx") End If End If End If End If End If End Sub Protected Sub mpBtnFilial_Click(sender As Object, e As EventArgs) Handles mpBtnFilial.Click Dim Ds As Data.DataSet Ds = Usuario.ConsultaGenerica(" SELECT B.ID, B.FANTASIA " & " FROM USUARIOSFILIAIS A " & " INNER JOIN FILIAL B ON (B.ID = A.FILIALID) " & " WHERE B.ATIVO = 'True' " & " AND A.USUARIOID = " & Session("sUsuario")) lbFiliais.DataSource = Ds lbFiliais.DataBind() If Not Ds Is Nothing Then If Ds.Tables(0).Rows.Count > 0 Then mpeFilial.Show() End If End If End Sub Protected Sub BtnConfirma_Click(sender As Object, e As EventArgs) Handles BtnConfirma.Click If lbFiliais.SelectedIndex > -1 Then Session("sFilial") = lbFiliais.SelectedValue Usuario.ExecutaSQLGenerica(" UPDATE USUARIOS " & " SET ULTIMOFILIALID = " & lbFiliais.SelectedValue & " WHERE ID = " & Session("sUsuario")) IdentificaUsuario() mpeFilial.Hide() Else If lbFiliais.SelectedIndex = -1 Then End If End If End Sub End Class
Desde já agradeço a atenção.
Obrigado,
Ilano.
-
Por gabrielpaiva2
Gostaria de centralizar o card 1,2 e 3 e colocar o 4 e 5 em baixo, que tipo de alteração faço
algo como na img Cards Projeto (codepen.io)
<!DOCTYPE html> <html lang="pt-BR"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.0/css/all.min.css"> <script defer src="js/jquery.js"></script> <script defer src="js/script.js"></script> <script defer src="js/script-form-list.js"></script> <!-- Bootstrap --> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-Zenh87qX5JnK2Jl0vWa8Ck2rdkQ2Bzep5IDxbcnCeuOxjzrPF/et3URy9Bv1WTRi" crossorigin="anonymous"> <link rel="stylesheet" href="./css/style.css"> <title>TITULO</title> </head> <body> <!--cabeçalho:logo,menu,login--> <header> <div class="logo"> <i><img src="" alt="Image" height="460" width="520"></i> </div> <div> <nav id='menu'> <nav class="cabeçalho-link"> <a href='item1.html'><button>Base</button></a> <a href='item1.html'><button>Sobre</button></a> <a href='item1.html'><button>Contatos</button></a> <a href='item1.html'><button>Planos</button></a> <div class="icones"> <a id='iconLogin' class="fa-sharp fa-solid fa-users-line"></a> </div> <section id='login'> campo login <a id='fecharLogin'>X</a> </section> </nav> </div> </header> <main> <section class="main-content"> <div class="container"> <h1 class="page-title text-center">Equipe<b></b></h1> <div class="row"> <div class="col-md-3 col-sm-4"> <div class="card"> <div class="card_cover"> </div> <div class="card_padding"> <div class="card_image"> <img src="https://png.pngtree.com/element_our/png_detail/20181130/web-search-vector-icon-png_253149.jpg" alt=""> </div> <div class="card_details"> <h3>NOME1</h3> <p class="text">Função</p> </div> <div class="card_social"> <a href=#!> <img src="./imagens/card/social/linkedin.png" alt="Linkedin"> </a> <a href=> <img src="./imagens/card/social/github.png" alt="Twitter"> </a> </div> </div> </div> </div> <div class="col-md-3 col-sm-4"> <div class="card"> <div class="card_cover"> </div> <div class="card_padding"> <div class="card_image"> <img src="https://png.pngtree.com/element_our/png_detail/20181130/web-search-vector-icon-png_253149.jpg" alt=""> </div> <div class="card_details"> <h3>NOME2</h3> <p class="text">Função</p> </div> <div class="card_social"> <a href=#!> <img src="./imagens/card/social/linkedin.png" alt="Linkedin"> </a> <a href=> <img src="./imagens/card/social/github.png" alt="Twitter"> </a> </div> </div> </div> </div> <div class="col-md-3 col-sm-4"> <div class="card"> <div class="card_cover"> </div> <div class="card_padding"> <div class="card_image"> <img src="https://png.pngtree.com/element_our/png_detail/20181130/web-search-vector-icon-png_253149.jpg" alt=""> </div> <div class="card_details"> <h3>NOME3</h3> <p class="text">Função</p> </div> <div class="card_social"> <a href=#!> <img src="./imagens/card/social/linkedin.png" alt="Linkedin"> </a> <a href=> <img src="./imagens/card/social/github.png" alt="Twitter"> </a> </div> </div> </div> </div> <div class="col-md-3 col-sm-4"> <div class="card"> <div class="card_cover"> </div> <div class="card_padding"> <div class="card_image"> <img src="https://png.pngtree.com/element_our/png_detail/20181130/web-search-vector-icon-png_253149.jpg" alt=""> </div> <div class="card_details"> <h3>NOME4</h3> <p class="text">Função</p> </div> <div class="card_social"> <a href=#!> <img src="./imagens/card/social/linkedin.png" alt="Linkedin"> </a> <a href=> <img src="./imagens/card/social/github.png" alt="Twitter"> </a> </div> </div> </div> </div> <div class="col-md-3 col-sm-4"> <div class="card"> <div class="card_cover"> </div> <div class="card_padding"> <div class="card_image"> <img src="https://png.pngtree.com/element_our/png_detail/20181130/web-search-vector-icon-png_253149.jpg" alt=""> </div> <div class="card_details"> <h3>NOME5</h3> <p class="text">Função</p> </div> <div class="card_social"> <a href=#!> <img src="./imagens/card/social/linkedin.png" alt="Linkedin"> </a> <a href=> <img src="./imagens/card/social/github.png" alt="Twitter"> </a> </div> </div> </div> </div> </section> </main> <div id='muleta'></div> <footer class="w-100 py-4 flex-shrink-0"> <div class="container py-4"> <div class="row gy-4 gx-5"> <div class="col-lg-4 col-md-6"> <h5 class="h1 text-white">PS</h5> <p class="small text-muted">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt.</p> <p class="small text-muted mb-0">© Copyrights. All rights reserved. <a class="text-primary" href="#">Bootstrap</a></p> </div> <div class="col-lg-2 col-md-6"> <h5 class="text-white mb-3">Informações</h5> <ul class="list-unstyled text-muted"> <li><a href="#">Home</a></li> <li><a href="#">Sobre</a></li> <li><a href="#">Contato</a></li> <li><a href="#">Planos</a></li> </ul> </div> <div class="col-lg-2 col-md-6"> <h5 class="text-white mb-3">Categorias</h5> <ul class="list-unstyled text-muted"> <li><a href="#">Home</a></li> <li><a href="#">Contato</a></li> <li><a href="#">FAQ</a></li> <li><a href="#">#</a></li> </ul> </div> <div class="col-lg-4 col-md-6"> <h5 class="text-white mb-3">Newsletter</h5> <p class="small text-muted">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt.</p> <form action="#"> <div class="input-group mb-3"> <input class="form-control" type="text" placeholder="Email" aria-label="Recipient's username" aria-describedby="button-addon2"> <button class="btn btn-primary" id="button-addon2" type="button"><i class="fas fa-paper-plane"></i></button> </div> </form> </div> </div> </div> </footer> </div> </body> </html> * { padding: 0; margin: 0; } header { width: 100%; height: 120px; background-color: #010138; position: absolute; } header .logo { color: black; font-size: 1px; font-weight: bolder; } header .logo i { color: black; } header div { width: 70%; left: 0; right: 0; margin: auto; } /* este é o cabeçalho todas as configurações de posições das opções para os usuarios estão aqui*/ header .logo { color: black; font-size: 1px; font-weight: bolder; } header .logo i { color: black; } header .cabeçalho-link { padding-left: 100px; cursor: pointer; gap: 3rem; display: flex; padding-top: 20px; font-weight: 500; border-radius: 5rem; color: aliceblue; } header .cabeçalho-link a { color: rgb(255, 255, 255); font-size: 20px; border-radius: 4rem; font-size: 1.7rem; } button { background-color: #FFCC15; color: rgb(0, 0, 0); padding: 5px; width: 150px; border-radius: 15px; font-size: 15px; cursor: pointer; } /* margem e bordas modificadas, para possuir um formato mais oval, incluindo aqui também a cor preta para as letras*/ button:hover { background-color: rgb(99, 78, 0); color: #FFCC15; } /* quando o usuario passar o cursor em cima de cada opção, ele mudará de cor*/ .logo { /*para pode adicionar a logo do meu site*/ height: 100px; width: 60px; padding-top: 49px; padding-left: 720px; padding-right: 220px; display: inline-flex; justify-content: center; text-align: center; align-items: center; cursor: pointer; } .icones { height: 100px; cursor: pointer; gap: 1rem; display: flex; border-radius: 5rem; } header .icones i, header .icones a { cursor: pointer; height: 4.5rem; width: 4.5rem; text-align: center; font-size: 40px; border-radius: 50%; padding: 5rem, 1.5rem; line-height: 4.5rem; } header .icones i:hover, header .icones a:hover { transform: rotate(360deg); border-radius: 20px; transition: 0.5s all; } .sobre .row .content .icones-container .icones span { font-size: 1.5rem; color: var(black); } #iconLogin { float: right; color: white; background: #0D0A97; } #login { display: none; position: fixed; background: white; top: 70px; right: 15%; width: 100px; height: 100px; } /* CARDS */ .main-content { margin: 50px auto; margin-top: 0; padding: 80px; max-width: 1350px; background: #fff; -webkit-box-shadow: 0 20px 100px -15px rgba(0, 0, 0, 0.1); box-shadow: 0 20px 100px -15px rgba(0, 0, 0, 0.1); } .page-title { font-size: 45px; margin: 0 auto 80px auto; margin-top: 150px; } .page-title:after { content: ""; width: 110px; height: 4px; background: #F39745; display: block; margin: 15px auto 0 auto; -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); } .card { background: #fff; -webkit-box-shadow: 0 2px 30px rgba(0, 0, 0, 0.1); box-shadow: 0 2px 30px rgba(0, 0, 0, 0.1); text-align: center; margin-bottom: 30px; border-radius: 10px; } .card .card_cover { height: 130px; overflow: hidden; background-color: #27408B; } .card .card_padding { padding: 25px; position: relative; margin-top: -85px; } .card .card_image { width: 125px; height: 125px; border-radius: 125px; overflow: hidden; border: 4px solid #FFCC15; margin: 0 auto 15px auto; -webkit-box-shadow: 0 5px 30px rgba(0, 0, 0, 0.1); box-shadow: 0 5px 30px rgba(0, 0, 0, 0.1); } .card .card_image img { width: 125px; height: 125px; -o-object-fit: cover; object-fit: cover; } .card .card_details h3 { font-size: 21px; } .card .card_details p { font-size: 16px; margin-bottom: 15px; } .card .card_social { text-align: center; } .card .card_social a { display: inline-block; } .card .card_social img { width: 33px; margin: 5px 10px; } /* SLIDE CARD */ /* FOOTER */ #muleta { clear: both; } footer { background-color: #010138; } footer a { color: black; text-decoration: none; transition: all 0.3s; } .form-control { background: #212529; border-color: #545454; } .form-control:focus { background: #212529; } @media (max-width:768px) { header .cabeçalho-link { display: list-item; } header .icones { display: list-item; } header .logo { display: auto; max-width: 200px; margin: auto; } header .backgroundFoto { max-width: 200px; margin: auto; } }
-