-
Notifications
You must be signed in to change notification settings - Fork 2
/
DataJuggler.BlazorGallery.csproj
198 lines (163 loc) · 9.39 KB
/
DataJuggler.BlazorGallery.csproj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<PackageType>Template</PackageType>
<TargetFramework>net8.0</TargetFramework>
<Nullable>disable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<IsPackable>true</IsPackable>
<Version>1.6.5</Version>
<Description>A project template for creating a Blazor Image Gallery project that uses SQL Server for a backend.
You will need SQL Server or SQL Server Express to run this project. See the Read Me for more info.
Watch this video to see a demo https://youtu.be/yQz1dqYiy2g.</Description>
<PackageProjectUrl>https://github.com/DataJuggler/BlazorGallery</PackageProjectUrl>
<PackageIcon></PackageIcon>
<PackageReadmeFile>README.md</PackageReadmeFile>
<RepositoryUrl>https://github.com/DataJuggler/BlazorGallery.git</RepositoryUrl>
<RepositoryType>Git/GitHub</RepositoryType>
<PackageTags>C#;Blazor;FileUpload;Images;</PackageTags>
<PackageReleaseNotes>
1.6.3
7.22.2023: 3 Nuget packages have updates, DataJuggler.NET8, DataJuggler.Blazor.Components and
DataJuggler.Blazor.FileUpload. The code for this project has not changed.
1.6.1
7.19.2023: I fixed a couple of bugs around navigation. I also added a new feature where Main Gallery
Images can be scrolled through in slide show mode, similar to the way a user's folder can.
1.5.9
7.16.2023: I fixed a bug where if you are unable to log in when the timer is finished, a message is shown.
I may have to change the speed of timer to be slower or add more time till it gives up.
1.5.8
7.16.2023: There have been many fixes in the last month. The site should look better for browsers with
100% zoom. I always test at 150% due to my vision isn't great, and noticed a few things didn't look good.
It should be similar layout, just a bigger font size now.
1.4.6
6.26.2023: I fixed a bug where the ImageViewer component was defaulting to LikeButtonEnabled in the
constructor. This didn't work when a logged in user was viewing their own gallery if they enter by clicking
on their own name from the MainGalleryComponent. I also moved the version number to where it should
be visible before a user logs in now.
1.4.5
6.26.2023: Bug fixed where clicking the back button on the FullScreenImageViewer was taking the Logged In User
back to their own gallery, instead of the MainGallery. Also on the FullScreenImageViewer the previous and next
buttons were showing when the user was in the MainGallery, which isn't supported (yet). And finally if a user
tries to log in with an invalid user name, a validation message now shows up. I had to change the thread to
run in the current thread, as when set to BackgroundThread = true it wasn't working.
1.4.4
6.24.2023: Finished liking an image in the Main Gallery.
1.4.3
6.24.2023: I added the first phase of liking an image, although there are more places that need this.
1.4.2
6.24.2023: Fixed a bug where after a user signs in, the Upload Button and Add Folder button were not visible.
The fix was calling FolderSelected in MainLayout.cs after the user logged in.
1.4.1
6.24.2023: Sign Out now clears the GalleryOwner and SelectedFolder from MainLayout, which prevents
the folders from showing after you sign out.
1.4.0
6.24.2023: I created a MainGalleryComponent, MainGalleryImageViewer, Gallery page and the database
has a new view MainGalleryView and two new stored procedures MainGalleryView_FetchAll and
MainGalleryView_FetchMostRecent. I also refactored how the Index and Gallery pages work, so that the
LoggedInUser stays logged in, even when viewing another user's galleries. Also, there is now a button to
go back to the User's Galleries while viewing the MainGallery if there is a logged in user.
1.3.7
6.17.2023: A new user needs to be shown the Email Verification component during the signup
process for the live site (if Admin.RequireEmailVerification is true).
1.3.6
6.17.2023: Fixed the Terms of Service component where a new user could not upload.
1.3.5
6.17.2023: Previous publish had the incorrect version number.
1.3.4
6.17.2023: Terms of Service Component was not replacing the ParentMainLayout object
which had the accepted terms of service date.
1.3.3
6.17.2023: I added a slide show feature to the FullScreenImageViewer and MainLayout.
v1.3.2
6.15.2023: I added a copy direct link button to the FullScreenImageViewer component.
v1.3.0
6.7.2023: My first attempt for fixing BlazorGallery to run without EmailVerification didn't work.
Now this is fixed, and after the user accepts the terms of service, ParentMainLayout.LoggedInUser
is replaced. This fixes the upload button not showing up.
v1.2.9
6.6.2023: I realized when I added Email Verification, I made the app stop working for people
who did not have Azure Email Service setup and configured. To fix this, I added a new property
to the Admin table 'EmailVerificationRequired'. This value is set to 0 in Insert Admin.sql unless you
change it. This allows people to test in Visual Studio without wiring up Email Verification.
v1.2.7
6.3.2023: I have finished adding Email verification using Azure Email Service.
The way I wrote this, if you want to implement Email Verification Required, set an Environment
Variable named BlazorGalleryEmail to the connection string of your Azure Email Service domain.
If you don't set this environment variable, you can test in Visual Studio without email verification
required.
v1.2.5
5.31.2023: I have added numerous features including, but not limited to:
1. View Large Image button on every image. Click to see an almost full screen image
2. You can now rename folders by double clicking. Hit Enter to Save or Escape to cancel.
3. I changed the logo and images to a dark theme.
4. Redid the layout to be position: fixed, so things do not jump around when the Copy URL button is clicked.
v1.2.0:
5.27.2023: I added a View Full Screen button to each image and created a FullScreenImageViewer component.
It is not actually full screen, but in ViewImage mode, only the selected image is shown.
I also added a field for Image.LikesCount and User.ProfileVisibility. These two fields are not shown
yet, but i did create a component that prompts a user if they wish to show their profile publicly.
My plan is to create a public gallery and all images are allocated a certain amount of time on the main screen. The more likes an image
gets, the longer it gets to stay. The Nuget package and database scripts have also been updated.
v1.1.9
5.17.2023: I added a Terms of Service component and a user must accept thea Terms of Service
or they are sent to Google.
5.15.2023: I fixed the Upload issue not showing up in the folder for a Nuget package.
The issue was resolved by including a file ReadMe.txt in the Upload folder and packing
the read me file similar to the other two ReadMe.md files.
This is the first working version of BlazorGallery. To run this project, create a SQL Server database named
BlazorGallery, then execute the SQL file BlazorGalleryDatabase.sql. Finally, build a connection string and
set a user level environment variable named BlazorGalleryConnString holding the connection string a second
user level environment variable named BlazorGalleryKeyCode, and make up a string for its value.
BlazorGalleryKeyCode is used to create password hashes when a user signs up.</PackageReleaseNotes>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<NoWarn>1701;1702;BL0007;IDE0017;IDE0090;IDE0059;</NoWarn>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
<NoWarn>1701;1702;BL0007;IDE0017;IDE0090;IDE0059;</NoWarn>
</PropertyGroup>
<ItemGroup>
<Compile Remove="Data\**" />
<Compile Remove="ProjectTemplates\**" />
<Compile Remove="Tools\**" />
<Content Remove="Data\**" />
<Content Remove="ProjectTemplates\**" />
<Content Remove="Tools\**" />
<EmbeddedResource Remove="Data\**" />
<EmbeddedResource Remove="ProjectTemplates\**" />
<EmbeddedResource Remove="Tools\**" />
<None Remove="Data\**" />
<None Remove="ProjectTemplates\**" />
<None Remove="Tools\**" />
</ItemGroup>
<ItemGroup>
<None Include="wwwroot\Upload\.gitignore" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Azure.Communication.Email" Version="1.0.1" />
<PackageReference Include="BlazorPro.BlazorSize" Version="8.0.0" />
<PackageReference Include="DataJuggler.Blazor.Components" Version="8.6.19" />
<PackageReference Include="DataJuggler.Blazor.FileUpload" Version="8.0.0" />
<PackageReference Include="DataJuggler.Net8" Version="8.0.3" />
<PackageReference Include="DataJuggler.PixelDatabase" Version="8.2.7" />
</ItemGroup>
<ItemGroup>
<Folder Include="wwwroot\Upload\">
<Pack>True</Pack>
<PackagePath>\</PackagePath>
</Folder>
<ProjectReference Include="Data\ApplicationLogicComponent\ApplicationLogicComponent.csproj" />
<ProjectReference Include="Data\DataGateway\DataGateway.csproj" />
<ProjectReference Include="Data\ObjectLibrary\ObjectLibrary.csproj" />
<None Update="README.md">
<Pack>True</Pack>
<PackagePath>\</PackagePath>
</None>
<None Update="SQL\README.md">
<PackagePath>\</PackagePath>
<Pack>True</Pack>
</None>
</ItemGroup>
</Project>