Pokaż
Ignoruj:
Data:
2009-10-02 13:15:40 (17 years ago)
Autor:
alina
Opis:

fix #207, #193, #205

Pliki:
1 zmodyfikowane

Legenda:

Bez zmian
Dodane
Usunięte
  • trunk/Wierszowki/Wierszowki.Web/Views/MagazineItem/Create.aspx

    r785 r842  
    11<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<Wierszowki.Models.MagazineItemViewData>" %> 
    2  
     2<%@ Import namespace="Wierszowki.Core.Validation"%>  
    33<asp:Content ID="js" ContentPlaceHolderID="jsContent" runat="server"> 
    44    <script src="../../Scripts/jquery-1.3.1.js" type="text/javascript"></script> 
     
    1010    <script src="../../Scripts/spiffy.js" type="text/javascript"></script> 
    1111    <script src="../../Scripts/jHelper.js" type="text/javascript"></script> 
     12    <script src="../../Scripts/jquery.validate.js" type="text/javascript" ></script> 
     13    <script src="../../Scripts/xVal.jquery.validate.js" type="text/javascript"></script> 
    1214</asp:Content> 
    1315 
     
    1719 
    1820<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> 
    19 <script type="text/javascript"> 
    20     $(function() { 
    21         $("#Magazine").change(function() { 
    22         var magazineId = $("#Magazine > option:selected").attr("value"); 
    23         var urlAction = "<%= Url.Action("FindIssuesById", "Magazine") %>"; 
    24         urlAction = urlAction + "/" + magazineId; 
    25         $.getJSON(urlAction, function(data) { 
    26                 $("#MagazineItem_IssueId").addItems(data); 
     21    <script type="text/javascript"> 
     22        $(function() { 
     23             
     24            $("#Magazine").change(function() { 
     25                var magazineId = $("#Magazine > option:selected").attr("value"); 
     26                var urlAction = "<%= Url.Action("FindIssuesById", "Magazine") %>"; 
     27                urlAction = urlAction + "/" + magazineId; 
     28                $.getJSON(urlAction, function(data) { 
     29                    $("#IssueId").addItems(data); 
     30                }); 
     31            });  
     32            jQuery.validator.setDefaults({ 
     33                   success: "valid" 
    2734            }); 
    28         }); 
    29     }); 
    30 </script> 
    31      
     35            jQuery.validator.addMethod("DateCorrectFormat", function(data, element) { 
     36                return data.match(/^(19|20)\d\d(-)(0[1-9]|1[012])$/); 
     37                    }, "Podaj prawid³ow¹ datê i format (0000-00)."); 
     38             
     39            jQuery.validator.addMethod("RangePrice", function(cena, element) { 
     40                return cena.match(/^((0)|(0[,]\d\d)|([1-9]\d[,]\d\d)|([1-9]\d\d[,]\d\d)|([1]{1}[0]{3}[,][0]{2}))$/); 
     41                },"Wymagany format to 0,00 , a wartoœæ nie mo¿e byæ wiêksza ni¿ 1000."); 
     42             
     43            $("#myform").validate({ 
     44                rules: { 
     45                     AuthorId:    { required: true }, 
     46                     IssueId:     { required: true, min:1 }, 
     47                     ItemTypeId:  { required: true }, 
     48                     Date:        { required: true, DateCorrectFormat: true }, 
     49                     Caption:     { required: true, maxlength: 255 }, 
     50                     Description: { maxlength: 255 }, 
     51                     Bonus:       { required: true, RangePrice: true}, 
     52                     Price:       { required: true, RangePrice: true} 
     53                }, 
     54                messages: { 
     55                     AuthorId:    { required: "Proszê wybraæ autora." }, 
     56                     IssueId:     { required: "Proszê wybraæ numer wydania.", min: "Prosze wybraæ numer wydania. Musisz najpierw wybraæ Gazetê." }, 
     57                     ItemTypeId:  { required: "Proszê wybraæ typ wierszówki." }, 
     58                     Date:        { required: "Proszê podaæ miesi¹c"}, 
     59                     Caption:     { required: "Proszê podaæ tytu³ wierszówki.", maxlength: "Tytu³ jest za d³ugi." }, 
     60                     Description: { maxlength:"Opis jest za d³ugi."}, 
     61                     Bonus:       { required: "Proszê wprowadziæ bonus dla wierszówki."}, 
     62                     Price:       { required: "Proszê wprowadziæ wycenê wierszówki."} 
     63                } 
     64             }); 
     65             $("#myform").change(function() { 
     66                $("#myform").valid(); 
     67             }); 
     68         }); 
     69    </script> 
     70    <style type="text/css"> 
     71        select,input { border: 1px solid black;} 
     72            select.error, input.error { border: 1px solid red; } 
     73        br { clear: both; } 
     74 
     75        label.error { 
     76                    background: url('http://dev.jquery.com/view/trunk/plugins/validate/demo/images/unchecked.gif') no-repeat; 
     77                    padding-left: 18px; 
     78                    margin-left: 270px; 
     79                    margin-top: 3px; 
     80            } 
     81    </style> 
    3282    <h2>Dodaj wierszówkê</h2> 
    33     <%= Html.ValidationSummary("Proszê poprawiæ b³êdy i spróbowaæ ponownie.") %> 
    34  
    35     <div>                         
    36         <div id="messages"></div> 
    37         <% using (Html.BeginForm("Create", "MagazineItem", Model.MagazineItem)) 
    38            { %> 
     83    <%= Html.ValidationSummary("Proszê poprawiæ b³êdy i spróbowaæ ponownie.")%> 
     84    <div>                       
     85        <% Html.BeginForm("Create", "MagazineItem", Model.MagazineItem, FormMethod.Post, new { id = "myform" }) ; 
     86            %> 
    3987            <fieldset> 
    4088                <legend>Nowa wierszówka</legend> 
    4189                <div class="formitem"> 
    4290                    <label for="MagazineItem.AuthorId">Autor:</label> 
    43                     <%= Html.DropDownList("MagazineItem.AuthorId", ViewData.Model.AuthorList, "-- proszê wybraæ --")%> 
    44                     <%= Html.ValidationMessage("MagazineItem.AuthorId", "*")%> 
     91                    <%= Html.DropDownList("AuthorId", ViewData.Model.AuthorList, "-- proszê wybraæ --")%> 
     92                    <%= Html.ValidationMessage("AuthorId", "*")%> 
     93                    <br /> 
    4594                </div> 
    4695                <div class="formitem"> 
     
    4897                    <%= Html.DropDownList("Magazine", ViewData.Model.MagazineList, "-- proszê wybraæ --")%> 
    4998                    <%= Html.ValidationMessage("Magazine", "*")%> 
     99                    <br /> 
    50100                </div> 
    51101                <div class="formitem"> 
    52102                    <label for="MagazineItem.IssueId">Wydanie:</label> 
    53                     <%= Html.DropDownList("MagazineItem.IssueId", ViewData.Model.IssueList, "-- proszê wybraæ --")%> 
    54                     <%= Html.ValidationMessage("MagazineItem.IssueId", "*")%> 
     103                    <%= Html.DropDownList("IssueId", ViewData.Model.IssueList, "-- proszê wybraæ --")%> 
     104                    <%= Html.ValidationMessage("IssueId", "*")%> 
     105                    <br /> 
    55106                </div> 
    56107                <div class="formitem"> 
    57108                    <label for="MagazineItem.ItemTypeId">Typ:</label> 
    58                     <%= Html.DropDownList("MagazineItem.ItemTypeId", ViewData.Model.ItemTypeList, "-- proszê wybraæ --")%> 
    59                     <%= Html.ValidationMessage("MagazineItem.ItemTypeId", "*")%> 
     109                    <%= Html.DropDownList("ItemTypeId", ViewData.Model.ItemTypeList, "-- proszê wybraæ --")%> 
     110                    <%= Html.ValidationMessage("ItemTypeId", "*")%> 
     111                     <br /> 
    60112                </div> 
    61113                <div class="formitem"> 
    62114                    <label for="MagazineItem.Date">Miesi¹c:</label> 
    63                     <%= Html.TextBox("MagazineItem.Date", Model.MagazineItem.Date, new { Class = "date-pick" })%> 
    64                     <%= Html.ValidationMessage("MagazineItem.Date", "*")%> 
     115                    <%= Html.TextBox("Date", ViewData.Model.MagazineItem.Date, new { Class = "date-pick" })%> 
     116                    <%= Html.ValidationMessage("Date", "*")%> 
     117                    <br /> 
    65118                </div> 
    66119                 
    67120                <div class="formitem"> 
    68121                    <label for="MagazineItem.Caption">Tytu³:</label> 
    69                     <%= Html.TextBox("MagazineItem.Caption", Model.MagazineItem.Caption, new { title = "Proszê wprowadziæ tytu³ artyku³u." })%> 
    70                     <%= Html.ValidationMessage("MagazineItem.Caption", "*")%> 
     122                    <%= Html.TextBox("Caption", ViewData.Model.MagazineItem.Caption, new { title = "Proszê wprowadziæ tytu³ artyku³u." })%> 
     123                    <%= Html.ValidationMessage("Caption", "*")%> 
     124                    <br /> 
    71125                </div> 
    72126                <div class="formitem"> 
    73127                    <label for="MagazineItem.Description">Opis:</label> 
    74                     <%= Html.TextArea("MagazineItem.Description", Model.MagazineItem.Description, new { title = "Proszê wprowadziæ opis artyku³u." })%> 
     128                    <%= Html.TextArea("Description", ViewData.Model.MagazineItem.Description, new { title = "Proszê wprowadziæ opis artyku³u." })%> 
     129                    <br /> 
    75130                </div> 
    76131                <div class="formitem"> 
    77132                    <label for="MagazineItem.Price">Wycena:</label> 
    78                     <%= Html.TextBox("MagazineItem.Price", Model.MagazineItem.Price.ToString("#0.00"), new { title = "Proszê wprowadziæ wycenê artyku³u." })%> 
    79                     <%= Html.ValidationMessage("MagazineItem.Price", "*")%> 
     133                    <%= Html.TextBox("Price", ViewData.Model.MagazineItem.Price)%> 
     134                    <%= Html.ValidationMessage("Price", "*")%>  
     135                    <br /> 
    80136                </div> 
    81137                <div class="formitem"> 
    82138                    <label for="MagazineItem.Bonus">Bonus:</label> 
    83                     <%= Html.TextBox("MagazineItem.Bonus", Model.MagazineItem.Bonus.ToString("#0.00"), new { title = "Proszê wprowadziæ bonus do wyceny artyku³u." })%> 
    84                     <%= Html.ValidationMessage("MagazineItem.Bonus", "*")%> 
     139                    <%= Html.TextBox("Bonus", ViewData.Model.MagazineItem.Bonus)%> 
     140                    <%= Html.ValidationMessage("Bonus", "*")%> 
     141                    <br /> 
    85142                </div> 
    86                 <div class="submit">                 
    87                     <input type="submit" value="Dodaj" />                 
     143                <div>                 
     144                    <input type="submit" value="Dodaj" name="dodaj" id="dodaj"/>                 
    88145                </div> 
    89146            </fieldset>         
    90         <% } %>                
     147        <% Html.EndForm();%>                
    91148    </div> 
    92149    <div> 
    93150        <%=Html.ActionLink("Powrót", "Index", "Home") %> 
     151        <%=Html.ClientSideValidation<MagazineItemValidation>("MagazineItem")%> 
    94152    </div> 
    95153</asp:Content>