* DataManager.cs:

* InitDb.aspx:
* Created.aspx:
* DataAccess.cs:
* AdminController.cs:  Refactoring

* App.master:
* NoLogin.master: Fixes not wanted differences between NoLogin and App
  master pages

* instdbws.sql: Fixes an useless ownership attribution.
vnext
Paul Schneider 10 years ago
parent cfd023411d
commit 4bb83ce552
8 changed files with 63 additions and 48 deletions

@ -4,6 +4,7 @@ using System.IO;
using Yavsc.Model.Admin;
using Npgsql.Web.Blog;
using System.Resources;
using System.Reflection;
namespace Yavsc.Admin
{
@ -91,11 +92,12 @@ namespace Yavsc.Admin
string sql;
try {
using (Stream sqlStream = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("Yavsc.instdbws.sql"))
Assembly a = System.Reflection.Assembly.GetExecutingAssembly();
using (Stream sqlStream = a.GetManifestResourceStream("Yavsc.instdbws.sql"))
{
using (StreamReader srdr = new StreamReader (sqlStream)) {
try { using (StreamReader srdr = new StreamReader (sqlStream)) {
sql = srdr.ReadToEnd ();
using (var cnx = new Npgsql.NpgsqlConnection (da.ConnectionString())) {
using (var cnx = new Npgsql.NpgsqlConnection (da.ConnectionString)) {
using (var cmd = cnx.CreateCommand ()) {
cmd.CommandText = sql;
cnx.Open();
@ -103,6 +105,12 @@ namespace Yavsc.Admin
cnx.Close();
}
}
} } catch (Exception exg) {
res.ExitCode = 1;
res.Error =
string.Format ("Exception of type {0} occred retrieving the script",
exg.GetType ().Name);
res.Message = exg.Message;
}
}
}

@ -11,7 +11,6 @@ using Yavsc.Admin;
using System.IO;
using Yavsc.Model;
namespace Yavsc.Controllers
{
/// <summary>
@ -40,11 +39,10 @@ namespace Yavsc.Controllers
{
if (doInit=="on") {
if (ModelState.IsValid) {
// TODO BETTER
datac.BackupPrefix = Server.MapPath (datac.BackupPrefix);
DataManager mgr = new DataManager (datac);
TaskOutput t = mgr.CreateDb ();
return View ("Created", t);
TaskOutput tcdb = mgr.CreateDb ();
return View ("Created", tcdb);
}
}
return View ();

@ -34,8 +34,8 @@ ViewState["orgtitle"] = T.GetString(Page.Title);
<asp:ContentPlaceHolder ID="MainContent" runat="server">
</asp:ContentPlaceHolder>
</main>
<asp:ContentPlaceHolder ID="MASContent" runat="server">
</asp:ContentPlaceHolder>
<asp:ContentPlaceHolder ID="MASContent" runat="server">
</asp:ContentPlaceHolder>
<aside>
<div id="login" >
<% if (Membership.GetUser()==null) { %>
@ -58,7 +58,7 @@ ViewState["orgtitle"] = T.GetString(Page.Title);
<% } %>
</div>
</aside>
<div style="float:right; height:5em; z-index:-1;"></div>
<div style="float:right; height:5em; z-index:-1;"></div>
<footer>
<%= Html.ActionLink("Contact","Contact","Home",null, new { @class="footerlink" }) %> <br/>
<% foreach ( string link in Yavsc.ThanksHelper.Links()) { %>

@ -1,18 +1,18 @@
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<asp:ContentPlaceHolder id="init" runat="server">
</asp:ContentPlaceHolder>
<% ViewState["orgtitle"] = T.GetString(Page.Title); %>
<% Page.Title = ViewState["orgtitle"] + " - " + YavscHelpers.SiteName; %>
<head runat="server">
</asp:ContentPlaceHolder><%
ViewState["orgtitle"] = T.GetString(Page.Title);
Page.Title = ViewState["orgtitle"] + " - " + YavscHelpers.SiteName;
%><head runat="server">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="stylesheet" href="/Theme/style.css"/>
<link rel="icon" type="image/png" href="/favicon.png" />
<asp:ContentPlaceHolder id="head" runat="server">
<link rel="icon" type="image/png" href="/favicon.png?v=2" />
<script type="text/javascript" src="<%=Url.Content("~/Scripts/jquery-2.1.3.js")%>"></script>
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
<link href='http://fonts.googleapis.com/css?family=Dancing+Script:400,700' rel='stylesheet' type='text/css'/>
</head>
@ -22,32 +22,40 @@
<h1><a href="<%= Html.Encode(Request.Url.AbsoluteUri.ToString()) %>"> <%=ViewState["orgtitle"]%> </a> -
<a href="<%=Request.Url.Scheme + "://" + Request.Url.Authority%>"><%= YavscHelpers.SiteName %></a>
</h1>
</asp:ContentPlaceHolder>
<asp:ContentPlaceHolder ID="header" runat="server"></asp:ContentPlaceHolder>
<% if (ViewData["Error"]!=null) { %>
<div class="error">
<%= Html.Encode(ViewData["Error"]) %>
</div>
<% } %>
<% if (ViewData["Message"]!=null) { %>
<div class="message">
<%= Html.Encode(ViewData["Message"]) %>
</div>
<% } %>
</header>
</asp:ContentPlaceHolder><asp:ContentPlaceHolder ID="header" runat="server"></asp:ContentPlaceHolder><%
if (ViewData["Error"]!=null) {
%><div class="error"><%= Html.Encode(ViewData["Error"]) %>
</div><% }
if (ViewData["Message"]!=null) {
%><div class="message"><%= Html.Encode(ViewData["Message"]) %></div><% }
%>
</header>
<main>
<asp:ContentPlaceHolder ID="MainContent" runat="server">
</asp:ContentPlaceHolder>
</main>
<aside>
<asp:ContentPlaceHolder ID="MASContent" runat="server">
</asp:ContentPlaceHolder>
</aside>
<footer>
<% foreach ( string link in Yavsc.ThanksHelper.Links()) { %>
<asp:ContentPlaceHolder ID="MASContent" runat="server">
</asp:ContentPlaceHolder>
<div style="float:right; height:5em; z-index:-1;"></div>
<footer>
<%= Html.ActionLink("Contact","Contact","Home",null, new { @class="footerlink" }) %> <br/>
<% foreach ( string link in Yavsc.ThanksHelper.Links()) { %>
<%= link %>
<% } %>
</footer>
<script type="text/javascript">
var apiBaseUrl = '<%=Url.Content(Yavsc.WebApiConfig.UrlPrefixRelative)%>';
</script> <script>
$( ".bshd" ).on("click",function(e) {
if (e.target == "[object HTMLElement]") {
var panel = $(this).children(".bshpanel");
if (panel.hasClass("hidden")) panel.css("cursor","zoom-out");
else panel.css("cursor","zoom-in");
panel.toggleClass("hidden");
$(this).children(".bsh").toggleClass("hidden");
} });
</script>
</body>
</html>

@ -1,8 +1,12 @@
<%@ Page Title="Db init" Language="C#" MasterPageFile="~/Models/App.master" Inherits="System.Web.Mvc.ViewPage<TaskOutput>" %>
<asp:Content ID="MainContentContent" ContentPlaceHolderID="MainContent" runat="server">
<%@ Page Title="Db init" Language="C#" MasterPageFile="~/Models/NoLogin.master" Inherits="System.Web.Mvc.ViewPage<TaskOutput>" %>
<asp:Content ContentPlaceHolderID="MainContent" ID="MainContentContent" runat="server">
<h1>Initialisation de la base de données</h1>
<div><h2>Error message </h2> <%= Html.Encode(Model.Error) %></div>
<div><h2>Message </h2> <%= Html.Encode(Model.Message) %></div>
<div><h2>Exit Code</h2> <%= Html.Encode(Model.ExitCode) %></div>
<form><fieldset><legend>Acces à la base de donnée</legend>
<label>db Name:</label><%= Html.Encode(Model.Dbname) %><br/>
<label>db User:</label><%= Html.Encode(Model.Dbuser) %><br/>
<Label>Pass:</label><%= Html.Encode(Model.Password[0]) %> ... You should already know it.<br/>
<label>Hôte:</label><%= Html.Encode(Model.Host) %>:<%= Model.Port %></filedset>
</asp:Content>

@ -17,7 +17,7 @@
<%= Html.LabelFor(model => model.Password) %>:
<%= Html.Password( "Password" ) %>
<%= Html.ValidationMessage("Password", "*") %><br/>
<label for="doInit">Executer le script de création de la base:</label><input type="checkbox" name="doInit" id="doInit" >
<label for="doInit">Executer le script de création de la base: </label><input type="checkbox" name="doInit" id="doInit" >
<input type="submit"/>
<% } %>
</asp:Content>

@ -217,8 +217,7 @@ CREATE TABLE commandes
WITH (
OIDS=FALSE
);
ALTER TABLE commandes
OWNER TO yavsc;
COMMENT ON COLUMN commandes.id IS 'Identifiant unique de commande e, cours';
COMMENT ON COLUMN commandes.validation IS 'Date de validation';
COMMENT ON COLUMN commandes.prdref IS 'Product reference from the unique valid catalog at the validation date';

@ -100,10 +100,8 @@ namespace Yavsc.Model.Admin
/// Connections the string.
/// </summary>
/// <returns>The string.</returns>
public string ConnectionString() {
return string.Format ("Server={0};Port={1};Database={2};User Id={3};Password={4};Encoding=Unicode;",
Host,Port,Dbuser,Password);
}
public string ConnectionString { get { return string.Format ("Server={0};Port={1};Database={2};User Id={3};Password={4};Encoding=Unicode;",
Host, Port, Dbname, Dbuser, Password); } }
}
}

Loading…