* bg.gif:
* asc.gif:
* desc.gif:
* style.css: moved to App_Themes
* style.css:
* bg.gif:
* asc.gif:
* bg.png:
* rect.png:
* asc.png:
* desc.gif:
* jquery-ui.css:
* mdd_styles.css:
* croix.png:
* desc.png:
* style.css:
* jquery-ui.min.css:
* mdd_gripper.png:
* mdd_toolbar.png:
* jquery.timepicker.css:
* mdd_ajax_loader.gif:
* mdd_modal_background.png: moved to /App_Themes
* NpgsqlBlogProvider.cs: * Remove post by id
* Manage collections of entries on a couple (user,title), not a single
post
* NpgsqlCircleProvider.cs: Fixes the "Match" method.
* IDbModule.cs:
* Edit.aspx:
* Estimates.aspx:
* WorkFlowManager.cs:
* NpgsqlContentProvider.cs: refactoring
* NpgsqlMRPProviders.csproj: new NpgsqlUserName provider
* NpgsqlRoleProvider.cs: simpler init method
* NpgsqlUserNameProvider.cs: impements a UserNameProvider
* MyClass.cs: refactoring from Yavsc.Model
* BlogsController.cs: access control simplified
* FrontOfficeController.cs: Pdf generation made public ni case of
formatting exception
* mdd_styles.css: Theme -> App_Themes
* style.css: yet another style impact
* AccountController.cs: Fixes the user name modification
* BlogsController.cs: * Fixes the removal process
* On a title and user name, we get collection of posts, not only one.
* Implements an Access on circle
* FrontOfficeController.cs: * implements a new Get method.
* ensure a membership existence before delivering an estimate.
* GoogleController.cs: Fixes the user name modification on a Google
account
* ErrorHtmlFormatter.cs: nice error message in html (using Markdown
helper)
* FormatterException.cs: formatter exception exposes error and
standard output of the process
* TexToPdfFormatter.cs: * generates temporary files in the folder
returned by Path.GetTempPath()
* throws FormatterException
* Global.asax.cs: new route map:
Blogs/{action}/{user}/{title}
Blog/{user}/{title}
B/{id}
{controller}/{action}/{id}
* App.master: * refactoring: Theme moved to App_Themes
* a link to the logged user's blog
*
* NoLogin.master: refactoring: Theme moved to App_Themes
* Circles.aspx: refactoring : circles now are given as select items
* Login.aspx: fixes the html presentation
* Register.aspx: Fixes a Typo
* Index.aspx: Implements a blog index, due to M&C changes with this
commit
* RemovePost.aspx: links to the new route to the "RemovePost" action,
giving it a post id
* RemoveTitle.aspx: fixes a not yet linked page to remove a post
collection under a given title
* EventPub.aspx: code refactoring
* Writting.ascx: cleans the code
* Web.config: fills the config with new names in the space
* Web.config: configures the new NpgsqlUserNameProvider
* Web.csproj: refactoring and others
* BlogEntryCollection.cs: implement the BlogEntryCollection
* BlogManager.cs: the manager helps to filter on access
* BlogProvider.cs: The title is not unique anymore, and one can modify
it, post a lot under it, drop all posts under it.
A Post is deleted by id.
* UUBlogEntryCollection.cs: implements a collection of post under a
given user name.
* UUTBlogEntryCollection.cs: implements a collection of post under a
given couple (user name, title).
* ListItem.cs: ListItem is declared obsolete in this model, helpers
can build MVC SelectListItem on data returned by the manager.
* LocalizedText.Designer.cs:
* LocalizedText.fr.Designer.cs: autogenerated from xml
* LocalizedText.resx:
* LocalizedText.fr.resx: new labels
* ChangeUserNameProvider.cs: xml doc
* Profile.cs: the UserName property is read only, and comes from
authentication, to change it, we set a Name and validate it agains
the "Profile" method
* UserManager.cs: simpler code a init time
* IContentProvider.cs: implements the new IDataProvider interface
* IDataProvider.cs: defines the new IDataProvider interface
* YavscModel.csproj: includes new classes
* UserPosts.aspx: adds a link to remove a post
* UserPost.aspx: now uses the new BlogEntryCollection object
main
|
Before Width: | Height: | Size: 54 B |
|
Before Width: | Height: | Size: 64 B |
|
Before Width: | Height: | Size: 54 B |
@ -1,39 +0,0 @@
|
||||
/* tables */
|
||||
table.tablesorter {
|
||||
font-family:arial;
|
||||
background-color: #CDCDCD;
|
||||
margin:10px 0pt 15px;
|
||||
font-size: 8pt;
|
||||
width: 100%;
|
||||
text-align: left;
|
||||
}
|
||||
table.tablesorter thead tr th, table.tablesorter tfoot tr th {
|
||||
background-color: #e6EEEE;
|
||||
border: 1px solid #FFF;
|
||||
font-size: 8pt;
|
||||
padding: 4px;
|
||||
}
|
||||
table.tablesorter thead tr .header {
|
||||
background-image: url(bg.gif);
|
||||
background-repeat: no-repeat;
|
||||
background-position: center right;
|
||||
cursor: pointer;
|
||||
}
|
||||
table.tablesorter tbody td {
|
||||
color: #3D3D3D;
|
||||
padding: 4px;
|
||||
background-color: #FFF;
|
||||
vertical-align: top;
|
||||
}
|
||||
table.tablesorter tbody tr.odd td {
|
||||
background-color:#F0F0F6;
|
||||
}
|
||||
table.tablesorter thead tr .headerSortUp {
|
||||
background-image: url(/Theme/blue/asc.gif);
|
||||
}
|
||||
table.tablesorter thead tr .headerSortDown {
|
||||
background-image: url(/Theme/blue/desc.gif);
|
||||
}
|
||||
table.tablesorter thead tr .headerSortDown, table.tablesorter thead tr .headerSortUp {
|
||||
background-color: #8dbdd8;
|
||||
}
|
||||
|
Before Width: | Height: | Size: 54 B |
|
Before Width: | Height: | Size: 64 B |
|
Before Width: | Height: | Size: 172 B |
|
Before Width: | Height: | Size: 54 B |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 2.6 KiB |
@ -1,39 +0,0 @@
|
||||
table.tablesorter {
|
||||
font-size: 12px;
|
||||
background-color: #4D4D4D;
|
||||
width: 1024px;
|
||||
border: 1px solid #000;
|
||||
}
|
||||
table.tablesorter th {
|
||||
text-align: left;
|
||||
padding: 5px;
|
||||
background-color: #6E6E6E;
|
||||
}
|
||||
table.tablesorter td {
|
||||
color: #FFF;
|
||||
padding: 5px;
|
||||
}
|
||||
table.tablesorter .even {
|
||||
background-color: #3D3D3D;
|
||||
}
|
||||
table.tablesorter .odd {
|
||||
background-color: #6E6E6E;
|
||||
}
|
||||
table.tablesorter .header {
|
||||
background-image: url(bg.png);
|
||||
background-repeat: no-repeat;
|
||||
border-left: 1px solid #FFF;
|
||||
border-right: 1px solid #000;
|
||||
border-top: 1px solid #FFF;
|
||||
padding-left: 30px;
|
||||
padding-top: 8px;
|
||||
height: auto;
|
||||
}
|
||||
table.tablesorter .headerSortUp {
|
||||
background-image: url(/Theme/green/asc.png);
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
table.tablesorter .headerSortDown {
|
||||
background-image: url(/Theme/green/desc.png);
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
@ -1,72 +0,0 @@
|
||||
.ui-timepicker-wrapper {
|
||||
overflow-y: auto;
|
||||
height: 150px;
|
||||
width: 6.5em;
|
||||
background: #fff;
|
||||
border: 1px solid #ddd;
|
||||
-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);
|
||||
-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);
|
||||
box-shadow:0 5px 10px rgba(0,0,0,0.2);
|
||||
outline: none;
|
||||
z-index: 10001;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.ui-timepicker-wrapper.ui-timepicker-with-duration {
|
||||
width: 13em;
|
||||
}
|
||||
|
||||
.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-30,
|
||||
.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-60 {
|
||||
width: 11em;
|
||||
}
|
||||
|
||||
.ui-timepicker-list {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.ui-timepicker-duration {
|
||||
margin-left: 5px; color: #888;
|
||||
}
|
||||
|
||||
.ui-timepicker-list:hover .ui-timepicker-duration {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
.ui-timepicker-list li {
|
||||
padding: 3px 0 3px 5px;
|
||||
cursor: pointer;
|
||||
white-space: nowrap;
|
||||
color: #000;
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.ui-timepicker-list:hover .ui-timepicker-selected {
|
||||
background: #fff; color: #000;
|
||||
}
|
||||
|
||||
li.ui-timepicker-selected,
|
||||
.ui-timepicker-list li:hover,
|
||||
.ui-timepicker-list .ui-timepicker-selected:hover {
|
||||
background: #1980EC; color: #fff;
|
||||
}
|
||||
|
||||
li.ui-timepicker-selected .ui-timepicker-duration,
|
||||
.ui-timepicker-list li:hover .ui-timepicker-duration {
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
.ui-timepicker-list li.ui-timepicker-disabled,
|
||||
.ui-timepicker-list li.ui-timepicker-disabled:hover,
|
||||
.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled {
|
||||
color: #888;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.ui-timepicker-list li.ui-timepicker-disabled:hover,
|
||||
.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled {
|
||||
background: #f2f2f2;
|
||||
}
|
||||
|
Before Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 150 B |
|
Before Width: | Height: | Size: 173 B |
|
Before Width: | Height: | Size: 6.9 KiB |
@ -1,198 +0,0 @@
|
||||
div.mdd_modal
|
||||
{
|
||||
position:fixed;
|
||||
top:0;
|
||||
left:0;
|
||||
padding:0;
|
||||
margin:0;
|
||||
width:100%;
|
||||
height:100%;
|
||||
z-index:1000;
|
||||
display:none;
|
||||
font-size:10pt;
|
||||
background-image:url(/Theme/md/mdd_modal_background.png);
|
||||
}
|
||||
div.mdd_modal_frame
|
||||
{
|
||||
width:650px;
|
||||
height:400px;
|
||||
z-index:2000;
|
||||
margin:0 auto;
|
||||
margin-top:60px;
|
||||
border:solid 5px #808080;
|
||||
position:relative;
|
||||
border-radius:5px;
|
||||
-moz-border-radius:5px;
|
||||
-webkit-border-radius:5px;
|
||||
}
|
||||
|
||||
div.mdd_modal_button
|
||||
{
|
||||
position:absolute;
|
||||
top:-33px;
|
||||
right:-5px;
|
||||
padding-left:10px;
|
||||
padding-right:10px;
|
||||
padding-top:4px;
|
||||
padding-bottom:0px;
|
||||
height:20px;
|
||||
z-index:1999;
|
||||
border-radius:4px;
|
||||
-moz-border-radius:4px;
|
||||
-webkit-border-radius:4px;
|
||||
line-height:1em;
|
||||
}
|
||||
|
||||
div.mdd_modal_button a
|
||||
{
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
div.mdd_modal_button a:hover
|
||||
{
|
||||
}
|
||||
|
||||
div.mdd_modal_content
|
||||
{
|
||||
overflow:scroll;
|
||||
overflow-x:hidden;
|
||||
position:relative;
|
||||
width:100%;
|
||||
height:100%;
|
||||
}
|
||||
|
||||
div.mdd_ajax_loader
|
||||
{
|
||||
background-position: center center;
|
||||
background-image: url(/Theme/md/mdd_ajax_loader.gif);
|
||||
background-repeat: no-repeat;
|
||||
width:100%;
|
||||
height:200px;
|
||||
}
|
||||
|
||||
div.mdd_syntax
|
||||
{
|
||||
font-size:12pt;
|
||||
padding:10px;
|
||||
}
|
||||
|
||||
div.mdd_syntax h2
|
||||
{
|
||||
font-size:14pt;
|
||||
}
|
||||
div.mdd_syntax h3
|
||||
{
|
||||
font-size:12pt;
|
||||
}
|
||||
div.mdd_syntax pre
|
||||
{
|
||||
font-size:10pt;
|
||||
border:solid 1px silver;
|
||||
padding:4px;
|
||||
color: black;
|
||||
background-color:#f8f8f8;
|
||||
}
|
||||
|
||||
div.mdd_toolbar
|
||||
{
|
||||
float:left;
|
||||
padding:5px;
|
||||
width:100%;
|
||||
height:20px;
|
||||
}
|
||||
|
||||
div.mdd_toolbar ul
|
||||
{
|
||||
margin:0;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
div.mdd_toolbar li
|
||||
{
|
||||
float:left;
|
||||
margin:0;
|
||||
padding:0;
|
||||
list-style:none;
|
||||
background-color:#777;
|
||||
color:black;
|
||||
}
|
||||
|
||||
div.mdd_toolbar a.mdd_button
|
||||
{
|
||||
background-image:url(/Theme/md/mdd_toolbar.png);
|
||||
width:20px;
|
||||
height:20px;
|
||||
display:block;
|
||||
}
|
||||
|
||||
span.mdd_sep
|
||||
{
|
||||
width:5px;
|
||||
height:20px;
|
||||
display:block;
|
||||
border-left:solid 1px #808080;
|
||||
margin-left:5px;
|
||||
}
|
||||
|
||||
#mdd_bold { background-position:-1px -1px;}
|
||||
#mdd_bold:hover { background-position:-1px -23px; }
|
||||
#mdd_italic { background-position:-23px -1px; }
|
||||
#mdd_italic:hover { background-position:-23px -23px; }
|
||||
#mdd_ullist { background-position:-177px -1px; }
|
||||
#mdd_ullist:hover { background-position:-177px -23px; }
|
||||
#mdd_ollist { background-position:-155px -1px; }
|
||||
#mdd_ollist:hover { background-position:-155px -23px; }
|
||||
#mdd_indent { background-position:-67px -1px; }
|
||||
#mdd_indent:hover { background-position:-67px -23px; }
|
||||
#mdd_outdent { background-position:-89px -1px; }
|
||||
#mdd_outdent:hover { background-position:-89px -23px; }
|
||||
#mdd_link { background-position:-45px -1px; }
|
||||
#mdd_link:hover { background-position:-45px -23px; }
|
||||
#mdd_img { background-position:-133px -1px; }
|
||||
#mdd_img:hover { background-position:-133px -23px; }
|
||||
#mdd_hr { background-position:-221px -1px; }
|
||||
#mdd_hr:hover { background-position:-221px -23px; }
|
||||
#mdd_code { background-position:-111px -1px; }
|
||||
#mdd_code:hover { background-position:-111px -23px; }
|
||||
#mdd_heading { background-position:-199px -1px; }
|
||||
#mdd_heading:hover { background-position:-199px -23px; }
|
||||
#mdd_undo { background-position:-243px -1px; }
|
||||
#mdd_undo:hover { background-position:-243px -23px; }
|
||||
#mdd_redo { background-position:-265px -1px; }
|
||||
#mdd_redo:hover { background-position:-265px -23px; }
|
||||
|
||||
div.mdd_links
|
||||
{
|
||||
float:right;
|
||||
}
|
||||
|
||||
div.mdd_links a
|
||||
{
|
||||
text-decoration:none;
|
||||
font-size:smaller;
|
||||
}
|
||||
div.mdd_links a:hover
|
||||
{
|
||||
}
|
||||
|
||||
textarea.mdd_editor
|
||||
{
|
||||
width:100%;
|
||||
margin:0;
|
||||
}
|
||||
|
||||
div.mdd_resizer
|
||||
{
|
||||
background:#f8f8f8;
|
||||
background-image:url("/Theme/md/mdd_gripper.png");
|
||||
background-position:center center;
|
||||
background-repeat:no-repeat;
|
||||
width:100%;
|
||||
padding-left:2px;
|
||||
padding-right:2px;
|
||||
height:9px;
|
||||
border:solid 1px #d0d0d0;
|
||||
margin-top:-1px;
|
||||
cursor:n-resize;
|
||||
}
|
||||
|
||||
@ -1,256 +0,0 @@
|
||||
|
||||
body {
|
||||
background: black;
|
||||
background-image: url('/images/Banner.png');
|
||||
background-repeat: no-repeat;
|
||||
color: #D0FFD0;
|
||||
font-family: 'Arial', cursive;
|
||||
padding: .5em;
|
||||
margin-bottom:2.8em;
|
||||
}
|
||||
|
||||
textarea {
|
||||
width:25em;
|
||||
height:5em;
|
||||
}
|
||||
|
||||
input, textarea, checkbox {
|
||||
color: #FFFFA0;
|
||||
background: black;
|
||||
}
|
||||
|
||||
main {
|
||||
background-color: rgba(17,0,23,0.65);
|
||||
float:left;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
background-color: rgba(32,16,16,0.8);
|
||||
border-radius:5px; border: solid 1px #000060;
|
||||
float:left;
|
||||
}
|
||||
|
||||
video,img {
|
||||
max-width:100%;
|
||||
max-height:75%;
|
||||
position:relative;
|
||||
}
|
||||
|
||||
footer {
|
||||
position:fixed;
|
||||
bottom:0;
|
||||
left:0;
|
||||
right:0;
|
||||
background-color:rgba(16,0,0,0.8);
|
||||
display: flex;
|
||||
z-index:-1;
|
||||
font-size: smaller;
|
||||
}
|
||||
|
||||
.thanks {
|
||||
max-width: 10%;
|
||||
text-align: center;
|
||||
vertical-align: text-bottom;
|
||||
font-size:smaller;
|
||||
display:block;
|
||||
bottom:0;
|
||||
}
|
||||
|
||||
|
||||
#logo {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.panel,.bshpanel,aside {
|
||||
background-color: rgba(32,16,16,0.8);
|
||||
border-radius:5px; border: solid 1px #000060;
|
||||
float: right;
|
||||
margin:.5em;
|
||||
padding: .5em;
|
||||
}
|
||||
|
||||
.bsh { float: right; }
|
||||
|
||||
#login {
|
||||
top:0;
|
||||
right:0;
|
||||
background-color:rgba(16,16,0,0.8);
|
||||
justify-content: space-around;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
header {
|
||||
background-color:rgba(16,16,0,0.8);
|
||||
top:0;
|
||||
left:0;
|
||||
right:0;
|
||||
text-align: center;
|
||||
}
|
||||
h1 img { vertical-align: text-top; }
|
||||
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: #B0B080;
|
||||
background-color:rgba(20,0,20,0.5);
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
a:visited {
|
||||
color: #90B090;
|
||||
}
|
||||
label {
|
||||
font-size: medium;
|
||||
}
|
||||
|
||||
.message {
|
||||
font-size: large;
|
||||
background-color: rgba(0,64,0,0.1);
|
||||
}
|
||||
.error {
|
||||
color: #f88;
|
||||
font-size: large;
|
||||
background-color: rgba(128,0,0,0.3);
|
||||
}
|
||||
.validation-summary-errors{
|
||||
color: #f88;
|
||||
background-color: rgba(64,0,0,0.3);
|
||||
}
|
||||
|
||||
.editblog {
|
||||
width: 95%;
|
||||
height: 95%;
|
||||
}
|
||||
|
||||
.metablog {
|
||||
font-style: italic;
|
||||
font-size: small;
|
||||
text-align: right;
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.blogtitle {
|
||||
display:inline;
|
||||
}
|
||||
|
||||
.contenu {
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.validation-summary-errors{
|
||||
color: #f88;
|
||||
}
|
||||
|
||||
|
||||
.actionlink {
|
||||
color: #B0B080;
|
||||
border: solid 1px rgb(128,128,128);
|
||||
border-radius:5px;
|
||||
background-color:rgba(0,0,32,0.8);
|
||||
font-size:large;
|
||||
cursor: pointer;
|
||||
font-family: 'Arial', cursive;
|
||||
}
|
||||
|
||||
input, select {
|
||||
color: #B0B080;
|
||||
border: solid 1px rgb(128,128,128);
|
||||
border-radius:5px;
|
||||
background-color:rgba(0,0,32,0.8);
|
||||
font-family: 'Arial', cursive;
|
||||
}
|
||||
|
||||
a.actionlink img { top:4px; }
|
||||
|
||||
.actionlink:hover {
|
||||
background-color:rgba(30,0,124,0.9);
|
||||
border : solid 1px white;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.code {
|
||||
font-family: "monospace";
|
||||
background-color: rgba(0,0,256,0.1);
|
||||
border-radius:25px;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.avatar {
|
||||
max-width: 64px;
|
||||
max-height: 64px;
|
||||
}
|
||||
|
||||
.hidden {
|
||||
display:none;
|
||||
}
|
||||
|
||||
.shoh { display:inline; }
|
||||
|
||||
|
||||
.hiduh {
|
||||
display:none;
|
||||
}
|
||||
.shoh:hover {
|
||||
background-color: rgba(0,60,40,.3);
|
||||
border: solid rgb(256,256,0);
|
||||
}
|
||||
.shoh:hover + .hiduh {
|
||||
display:block; position:absolute; left:20px; right:20px;
|
||||
background-color: rgb(0,0,40); border: solid rgb(256,256,0);
|
||||
}
|
||||
|
||||
.comment {
|
||||
border-radius:25px;
|
||||
border-width:1px;
|
||||
border-style: solid;
|
||||
border-color:rgb(0,64,0);
|
||||
font-size: smaller;
|
||||
}
|
||||
|
||||
.hidcom {
|
||||
display:none; position:fixed; z-index:2;
|
||||
padding:5px; margin:5px;
|
||||
background-color: rgba(0,0,40,.8);
|
||||
}
|
||||
|
||||
a.actionlink:hover + .hidcom {
|
||||
display:block;
|
||||
}
|
||||
|
||||
.input-validation-error { border: solid 1px red; }
|
||||
.field-validation-error { color: red; }
|
||||
|
||||
@media print {
|
||||
body {background-color:white;color:black;}
|
||||
header,footer,.postcomment,.actionlink,.metablog,#login{ display:none;}
|
||||
}
|
||||
@media all and (min-width: 641px) {
|
||||
.bshpanel { display:block; }
|
||||
.bsh { display: none; }
|
||||
}
|
||||
@media all and (max-width: 640px) {
|
||||
|
||||
.bshpanel { cursor:zoom-in; }
|
||||
|
||||
.bshd:hover > .bshpanel {
|
||||
display: block;
|
||||
}
|
||||
.bshd:hover > .bsh {
|
||||
display: none;
|
||||
}
|
||||
footer {
|
||||
font-size: x-small;
|
||||
}
|
||||
|
||||
body { font-size: smaller; }
|
||||
}
|
||||
|
||||
@media all and (max-width: 350px) {
|
||||
footer { font-size: xx-small; }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,60 +1,48 @@
|
||||
<%@ Page Title="Billet" Language="C#" Inherits="System.Web.Mvc.ViewPage<BlogEntry>" MasterPageFile="~/Models/App.master"%>
|
||||
<%@ Page Title="Billet" Language="C#" Inherits="System.Web.Mvc.ViewPage<UUTBlogEntryCollection>" MasterPageFile="~/Models/App.master"%>
|
||||
<asp:Content ContentPlaceHolderID="init" ID="init1" runat="server">
|
||||
<% Title = Model.Title+" - "+((string) ((Profile)ViewData["BlogUserProfile"]).BlogTitle) ; %>
|
||||
<% Title = Model.Title+ " - " + ViewData ["BlogTitle"] ; %>
|
||||
</asp:Content>
|
||||
<asp:Content ContentPlaceHolderID="overHeaderOne" ID="header1" runat="server">
|
||||
<h1 class="blogtitle">
|
||||
<%= Html.ActionLink(Model.Title,"UserPost",new{user=Model.UserName,title=Model.Title}) %> -
|
||||
<a href="/Blog/<%=Model.UserName%>">
|
||||
<% if (ViewData["Avatar"]!=null) { %>
|
||||
<img class="avatar" src="<%=ViewData["Avatar"]%>" alt="" id="logo"/>
|
||||
<h1 class="blogtitle"><% if (ViewData["Avatar"]!=null) { %>
|
||||
<img src="<%=ViewData["Avatar"]%>" alt="" id="logo"/>
|
||||
<% } %>
|
||||
<%=Html.Encode(ViewData["BlogTitle"])%>
|
||||
</a> -
|
||||
<%= Html.ActionLink(Model.Title,"UserPost","Blog",new{user=Model.UserName, title = Model.Title}) %>
|
||||
<span class="c2"> - <%= Html.ActionLink((string)ViewData ["BlogTitle"] ,"UserPosts",new{user=Model.UserName}) %>
|
||||
</span>
|
||||
<span class="c3"> -
|
||||
<a href="<%=Request.Url.Scheme + "://" + Request.Url.Authority%>"><%= YavscHelpers.SiteName %></a>
|
||||
</span>
|
||||
</h1>
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ContentPlaceHolderID="MainContent" ID="MainContentContent" runat="server">
|
||||
|
||||
<asp:Content ContentPlaceHolderID="MainContent" ID="MainContentContent" runat="server">
|
||||
<% foreach (var be in Model) { %>
|
||||
<div class="blogpost">
|
||||
<%= Html.Markdown(Model.Content) %>
|
||||
<%= Html.Markdown(be.Content) %>
|
||||
</div>
|
||||
<% if (Membership.GetUser()!=null) {
|
||||
if (Membership.GetUser().UserName==be.UserName)
|
||||
{ %> <div class="metapost">
|
||||
<%= Html.ActionLink("Editer","Edit", new { id = be.Id }, new { @class="actionlink" }) %>
|
||||
<%= Html.ActionLink("Supprimer","RemovePost", new { id = be.Id }, new { @class="actionlink" } ) %>
|
||||
</div> <% } %>
|
||||
<%
|
||||
string username = "";
|
||||
if (Membership.GetUser()!=null)
|
||||
username = Membership.GetUser().UserName; %>
|
||||
|
||||
<% foreach (var c in (Comment[])ViewData["Comments"]) { %>
|
||||
|
||||
string username = Membership.GetUser().UserName; %>
|
||||
<% foreach (var c in (Comment[]) BlogManager.GetComments(be.Id)) { %>
|
||||
<div class="comment" style="min-height:32px;"> <img style="clear:left;float:left;max-width:32px;max-height:32px;margin:.3em;" src="/Blogs/Avatar/<%=c.From%>" alt="<%=c.From%>"/>
|
||||
<%= Html.Markdown(c.CommentText) %>
|
||||
<% if ( username == Model.UserName || c.From == username ) { %>
|
||||
<%= Html.ActionLink("Supprimer","RemoveComment", new { cmtid = c.Id } , new { @class="actionlink" })%>
|
||||
<% } %>
|
||||
</div>
|
||||
<% } %>
|
||||
|
||||
</asp:Content>
|
||||
<asp:Content ContentPlaceHolderID="MASContent" ID="mas1" runat="server">
|
||||
<% if (Membership.GetUser()!=null) {
|
||||
%>
|
||||
</div><% } %>
|
||||
<div class="postcomment">
|
||||
<% using (Html.BeginForm("Comment","Blogs")) { %>
|
||||
<%=Html.Hidden("UserName")%>
|
||||
<%=Html.Hidden("Title")%>
|
||||
<%=Html.TextArea("CommentText","")%>
|
||||
<%=Html.Hidden("PostId",Model.Id)%>
|
||||
<%=Html.Hidden("PostId",be.Id)%>
|
||||
<input type="submit" value="Poster un commentaire"/>
|
||||
<% } %>
|
||||
</div>
|
||||
<%
|
||||
|
||||
if (Membership.GetUser().UserName==Model.UserName)
|
||||
{ %>
|
||||
<aside>
|
||||
<%= Html.ActionLink("Editer","Edit", new { user = Model.UserName, title = Model.Title }, new { @class="actionlink" }) %>
|
||||
<%= Html.ActionLink("Supprimer","RemovePost", new { user = Model.UserName, title = Model.Title }, new { @class="actionlink" } ) %>
|
||||
<% } } %>
|
||||
</aside>
|
||||
</asp:Content>
|
||||
<% } %><% } %>
|
||||
</asp:Content>
|
||||
|
||||