Giter Club home page Giter Club logo

yafnet's Introduction

YAFLogo

YetAnotherForum.NET (YAF.NET) ASP.NET Open Source Forum solution! The YAF.NET project is an international collaboration of like-minded, skilled, and creative individuals who are striving to make YAF.NET the most robust and malleable forum solutions available.

Quality Gate Status

license

build status

build status

Documentation

We have a preliminary documentation on the Github Wiki page

Prerequisites:

  • ASP.NET .NET Framework 4.8.1 (YAF v3.2.x)
  • ASP.NET Core 8.0 (YAF v4.x)
  • BuildPackages requires .NET v8

Source

Building the Source

Installation & Upgrade

  1. New Installation
  2. Upgrade an Existing YAF.NET Installation

DNN Module

YAF v3.x.x is also available as a DNN Module, you can download it on the GitHub Project Page

Screen Shots

mainscreen

forumsscreen

topicsscreen

Admin Control Panel adminpanel

Community Support Forum

See a real live YAF Forum by visiting the YetAnotherForum.NET community support forum: https://yetanotherforum.net/Forums. Also, get your questions answered by the YAF community.

License

Yet Another Forum.NET is licensed under the Apache 2.0 license.

Yet Another Forum Community Support

If you have any questions, please visit the YAF Community Support forum: https://yetanotherforum.net/Forums, or visit the Wiki for More Informations.

yafnet's People

Contributors

albertop57 avatar amnats avatar azarbara avatar danfbach avatar dependabot[bot] avatar dragonk avatar gavinharriss avatar iam-sysop avatar jaben avatar janhebnes avatar joriswit avatar kevinduganjr avatar maxdm avatar mend-bolt-for-github[bot] avatar mesutcakir avatar moorehojer avatar orawalters avatar phonicuk avatar spinks90 avatar tbolon avatar voquanghoa avatar vzrus avatar w8tcha avatar wuchang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

yafnet's Issues

Registration: null reference against UserIpLocator during registration

In register.ascx.cs the following line crashes (~ line 625) due to this._UserIpLocator being null (upgrading from production YAF to current trunk build).

if (this.Get<YafBoardSettings>().EnableIPInfoService && this._UserIpLocator == null || this._UserIpLocator["StatusCode"] != "OK")

The following change is suggested to prevent the use of the null _UserIpLocator object:

if ((this.Get<YafBoardSettings>().EnableIPInfoService && this._UserIpLocator == null) || (this._UserIpLocator != null && this._UserIpLocator["StatusCode"] != "OK"))

Modal popup login does not seem to work

I am referencing #7 with this post.

I have managed to login to my test forum via the yaf_login aspx form, but the modal Ajax login seems to be broken. With #7 I was using the modal popup forum login. So straight form login works for me, but not the popup login.

Nothing happens when I enter user/password, and the popup stays on the screen with the user/password filled in with a dimmed background.

An Ajax request is made according to Glimpse, but there seems to be no callback/response handling the request properly - so the screen stays as it is with the popup displayed and a greyed out background...

Error when clicking Admin link from users profile

Clicked on a username and then clicked "Admin" and was thrown this error. I'm using the advanced URL Writer and also YAF with Sample Application.

I think this was fixed before, but not sure.


Compilation Error

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: CS1061: 'ASP.forum_controls_edituserskill_ascx' does not contain a definition for 'Report_OnClick' and no extension method 'Report_OnClick' accepting a first argument of type 'ASP.forum_controls_edituserskill_ascx' could be found (are you missing a using directive or an assembly reference?)

Source Error:

Line 55:
Line 56: <asp:Button runat="server" ID="Kill" Text="Kill User" CssClass="pbutton" OnClick="Kill_OnClick" />
Line 57: <asp:Button runat="server" ID="ReportUser" Text="Report User" CssClass="pbutton" OnClick="Report_OnClick" />
Line 58:
Line 59:

Source File: \forum\controls\EditUsersKill.ascx Line: 57

Question - Stopforumspam integration

I've added the stopforumspam.com & botscout options to my test site, but stopforumspam doesn't really work in my opinion...

How is the check made towards stopforumspam?
Are you checking all 3 entities - user, email & IP ?

In my opinion it should be evaluated as pairs (2/3) too - user & email, email + IP address and user + IP in addition to the all 3 match when evaluating the response from stopforumspam... If one of the pairs match -> block access....

I tried to register with a notorious spammer user & email, and it was accepted with no problems at all since I did it from my own computer (ie IP not spam registered) ...

Am I right in my assumption - that user, email & IP all have to match in the current code implementation before any blocking action occurs? Or is it just an IP check that is implemented?

issue in rss feed and atom feed

error

hello everyone,
i have problem in yaf forum in my website if user click on rss feed and atom feed is showing an error directory not found. please how to make it correct or any way to remove rss and atom feed from the page.
Thanks in advance

Facebook/Twitter login

login via Fb and Twitter isn't working the way it's supposed to... it keeps throwing a pop-up saying 'Enable single sign-on for the user' (even though I've done it for that particular user)... the second pop-up says 'FB user id is invalid' don't understand this the FB user id is pulled into the db via the fb APIs, how can it be invalid? ... please do help me with a solution... Thanks

BootStrap Theme/Support

Ok this will be a large task, adding support for bootstrap themes or move completely to bootstrap architecture.

I am currently in the process of making yaf ready for BootStrap, it is mostly adding CSS classes and adding div wrappers when necessary.

My current goal is to add bootstrap as additionally themes, to keep legacy support with the current themes.And in the long term i think the best way would be to move completely to almost table less designs and to bootstrap.

Feel free to leave any additionally ideas here

Suggestion for active users list(s)...

When looking at the forum stats at the bottom:

image

Then I press the 172 guests...

image

As an admin, I would be happy if this list could be sortable on eg the IP address to determine if a rouge Romanian magpie bot has spawned like 100 of threads from the same IP that slows the forum down... Grid column sortability would be a very nice option to have from an admin point of view... Also in the admin section "Who is online" pane...

image

Just a suggestion for future releases, can be done client-side so it it doesn't load the db so much...

Could not load file or assembly: Autofac

Upon updating to 2.0RC1 from 1.9.6.1.
Following the ReadMe instructions for updating.
Attempting to access /install

Could not load file or assembly 'Autofac, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da' or one of its dependencies. The system cannot find the file specified.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.IO.FileNotFoundException: Could not load file or assembly 'Autofac, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da' or one of its dependencies. The system cannot find the file specified.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Assembly Load Trace: The following information can be helpful to determine why the assembly 'Autofac, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da' could not be loaded.

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value HKLM\Software\Microsoft\Fusion!EnableLog to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

Stack Trace:

[FileNotFoundException: Could not load file or assembly 'Autofac, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da' or one of its dependencies. The system cannot find the file specified.]
YAF.Core.YafTaskModule.Init(HttpApplication httpApplication) +0
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +575
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +352
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +407
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +375

[HttpException (0x80004005): Could not load file or assembly 'Autofac, Version=3.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da' or one of its dependencies. The system cannot find the file specified.]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +11791440
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +141
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +4928277


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1008

export users

Server Error in '/YetAnotherForum.NET' Application.

Column 'Google' does not belong to table YafUser.

More improvement suggestions for Admin User pages - User Kill Activity...

I am rather impressed about this formerly "forgotten" tab now.... :-)

From here we can now also suspend users for 5 years and report them to Stopforumspam.com as well as ban their IP (that didn't work in 1.9.6.1...).
Have tested the Stopforumspam reporting and it works... (happened to do it twice for "markl"...)

image

But as usual, I have some thoughts and suggestions regarding possible future improvements... :-)

Stopforumspam reporting:

I think you should only be able to report a user profile once... Kind of a status flag needed...
Some kind of message "User already reported by us" and no additional report for the same username entry since a site with a mod team may have eager moderators who will maybe report the same user independently ... In short an "Already reported" message or such as well as a block against duplicate reports. Or even a check against stopforumspam if the user exists (match on all 3 conditions) in their database before submitting the entry to stopforumspam with the message "Already reported to Stopforumspam"...

User suspension:

There is now a default 5 year suspension checkbox, which is great. However on my site we suspend spammers into eternity (999999 days) which is about until year 4800 or such. We can of course use the user suspend tab to modify afterwards, so this is not a real problem. 5 years is probably "good enough" so this is a "comfort issue"...

Delete all user messages:

I'm afraid that this is a much too aggressive default approach. I think it should be possible to either delete all user messages - or optionally move all user messages to a dedicated topic or forum - or neither, and leave messages in the forum as they are. As we work in my forum, we move most spam messages to a separate topic only viewed by moderators and we analyze the kind of spam that is "the latest news" in the message body and user signature spam links and such...

Otherwise the "User Kill" is now a very big improvement to 1.9.6.1 where it only deleted the user messages... But I think there are still more improvements that could be made for future versions to make moderator life easier...

Very well done, finally the "User Kill" is actually usable now...

Admin pages - User admin throws error in 2.1 Beta...

I do like this:

I select Admin from the forum top bar.
I then select Users and Roles in the left menu.
I select Users.

I fill in the "User Name Contains:" with an existing user or a part of it and then this happens:

image

However, if I enter a non-existent user name,ie user not found, then all is fine and I am returned to the dialog... So when a user is found, something goes wrong...

Using the "Master 7ba38ea w8tcha authored 7 hours ago"

UrlRewriter breaks forum urls

I guess new UrlRewriter (commit: 348d855) needs more testing.

If I'm not logged in and run the forum on my local dev machine and try to fetch anything (like a picture from http://localhost:43565/forumlogo.jpg) I get redirected to default.

And even if I set YAF.EnabledURLRewriting to false the problem persits - the only way to go around it for now is to both set value to false and remove lines below in UrlRewriter.config

Running YAF from a subfolder...

Have downloaded the latest Master and compiled it...

Runs fine in VS 2012 debug mode as a standalone site application.

However - When trying to run it as an application on my test site from the /forum folder, I cannot log in to the site and even the upgrade password is not read from the app.config file...

I am a bit confused since this has always worked in earlier "codeplex" versions...

YAFNET 2.0.0 RC1 - An unhandled exception has occurred

On my test forum I found this.
Not sure what triggered it.
I didn't notice any problems on the forum but in my event log, I found this.

Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 10/16/2013 3:32:07 PM
Event time (UTC): 10/16/2013 7:32:07 PM
Event ID: f43c8a024e5a47908308262c6ccb450c
Event sequence: 30
Event occurrence: 1
Event detail code: 0

Application information:
Application domain: /LM/W3SVC/9/ROOT-1-130264252540193858
Trust level: Full
Application Virtual Path: /
Application Path: X:\IIS\HTTP\Forum\
Machine name: SERVER

Process information:
Process ID: 7068
Process name: w3wp.exe
Account name: DOMAIN\yaf

Exception information:
Exception type: NullReferenceException
Exception message: Object reference not set to an instance of an object.
at YAF.Controls.MessagePostData.OnPreRender(EventArgs e) in c:\TeamCity\buildAgent\work\486389e89d993eec\yafsrc\YAF.Controls\MessagePostData.cs:line 249
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Request information:
Request URL: http://site.tld/Default.aspx?g=search&postedby=admin
Request path: /Default.aspx
User host address: 2001:XXX:XXXX:XX::XX
User: admin
Is authenticated: True
Authentication Type: Forms
Thread account name: DOMAIN\yaf

Thread information:
Thread ID: 31
Thread account name: DOMAIN\yaf
Is impersonating: False
Stack trace: at YAF.Controls.MessagePostData.OnPreRender(EventArgs e) in c:\TeamCity\buildAgent\work\486389e89d993eec\yafsrc\YAF.Controls\MessagePostData.cs:line 249
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Custom event details:

Email contents are not recognizable!

Hello
Using YAF for past two years I have recently (After updating to latest version of SVN) been reported that emails sent to users such as from PM or Registration are not recognizable and sometimes are in Chinese!
Forum is in Arabic.
untitled

Example:
ไ €ๆ”€ๆฐ€ๆฐ€ๆผ€โฐ€โ€€ไ„€โ€€ๆธ€ๆ”€็œ€โ€€ๅ€€็ˆ€ๆค€็˜€ๆ„€็€ๆ”€โ€€ได€ๆ”€็Œ€็Œ€ๆ„€ๆœ€ๆ”€โ€€ๆ˜€็ˆ€ๆผ€ๆด€โ€€ๅ€ๆผ€็”€็ˆ€ๆ„€ๆ€ๆœ€โ€€ๆ„€ๆˆ€ๆผ€็”€็€โ€€ไ˜†ใ„†ไ”†โ€€โœ†ไ„†ใˆ†โœ†ใ„†โ€€ไœ€ๆ„€ๆด€ๆ”€ไœ€ๆ„€ๆค€ๆธ€โ€€โ †ใ„†โœ†์ฐ†โ€€๊ค†โœ†ใ„†โ †ใ„†โœ†ไ˜†โ€€โœ†์ฐ†ใ„†โœ†ไ˜†ใŒ†์ฐ†ไ”†โ€€็œ€ๆ„€็Œ€โ€€็Œ€ๆ”€ๆธ€ๆ€โ€€็€ๆผ€โ€€็ค€ๆผ€็”€โ€€ๆ„€็€โ€€ใ†โ †์ฐ†ไœ†โ€€ใŒ†โœ†ใˆ†โ€€็ธ†ใ„†ไ †โœ†ใˆ†โ€€โœ†์ฐ†ใ„†โœ†ไ˜†ใŒ†์ฐ†ไ”†โ€€โธ€โ€€โ€€ๅ€ๆผ€โ€€็ˆ€ๆ”€ๆ„€ๆ€โ€€็€ๆ €ๆ”€โ€€ๆด€ๆ”€็Œ€็Œ€ๆ„€ๆœ€ๆ”€โฐ€โ€€ๆผ€็€€ๆ”€ๆธ€โ€€็€ๆ €ๆ”€โ€€ๆ˜€ๆผ€ๆฐ€ๆฐ€ๆผ€็œ€ๆค€ๆธ€ๆœ€โ€€ๆฐ€ๆค€ๆธ€ๆฌ€โ€€ๆค€ๆธ€โ€€็ค€ๆผ€็”€็ˆ€โ€€ๆˆ€็ˆ€ๆผ€็œ€็Œ€ๆ”€็ˆ€ใจ€โ€€โ€€ๆ €็€็€็€€ใจ€โผ€โผ€ๆค€็ˆ€ๆ„€ๆธ€็Œ€ๆค€ๆด€โธ€ๆค€็ˆ€โผ€ๆ˜€ๆผ€็ˆ€็”€ๆด€โผ€ๆ€ๆ”€ๆ˜€ๆ„€็”€ๆฐ€็€โธ€ๆ„€็Œ€็€€็ €ใผ€ๆœ€ใด€ๆŒ€็€€ๅผ€ๆด€ๆ”€็Œ€็Œ€ๆ„€ๆœ€ๆ”€โ˜€็€€ๆด€ใด€ใ€ใ€€ใ€€ใ˜€เด€เจ€เด€เจ€โ€€โ€€ไ €ๆ„€็€€็€€็ค€โ€€ไฐ€ๆ„€ๆธ€ๆ€ๆค€ๆธ€ๆœ€็Œ€โ€€ไค€็ˆ€ๆ„€ๆธ€็Œ€ๆค€ๆด€โ€€ไ„€ๆ”€็ˆ€ๆผ€็Œ€็€€ๆ„€ๆŒ€ๆ”€โ€€ๅŒ€ๆค€ๆด€็”€ๆฐ€ๆ„€็€ๆค€ๆผ€ๆธ€็Œ€

Markdown Editor

Add support for a clean and simple markdown editor to YAF.NET.

Missing column DeleteReason in sproc message_reply_list

Create a new topic. Add 2 messages. Reply on the 2nd message. If you try to delete the 2nd msg, an error occurs in YAF.Controls.MessagePostData in RenderMessage() in code:

var deleteText =
                    !string.IsNullOrEmpty(
                        this.Get<HttpContextBase>().Server.HtmlDecode(Convert.ToString(this.DataRow["DeleteReason"])))
                        ? this.Get<IFormatMessage>().RepairHtml((string)this.DataRow["DeleteReason"], true)
                        : this.GetText("EDIT_REASON_NA");
System.ArgumentException: Column 'DeleteReason' does not belong to table .     at System.Data.DataRow.get_Item(String columnName)     at YAF.Controls.MessagePostData.RenderMessage(HtmlTextWriter writer) in e:\tmp\YetAnotherForum.Net.5596\yafsrc\YAF.Controls\MessagePostData.cs:line 291     at YAF.Controls.MessagePost.Render(HtmlTextWriter writer) in e:\tmp\YetAnotherForum.Net.5596\yafsrc\YAF.Controls\MessagePost.cs:line 280     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at YAF.Core.ForumPage.Render(HtmlTextWriter writer) in e:\tmp\YetAnotherForum.Net.5596\yafsrc\YAF.Core\BasePages\ForumPage.cs:line 557     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at YAF.Forum.Render(HtmlTextWriter writer)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at ASP.templates_ui_layouts_sitemaster_master.__RendergtkForm(HtmlTextWriter __w, Control parameterContainer)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer)     at System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at ASP.templates_ui_layouts_sitemaster_master.__Render__control1(HtmlTextWriter __w, Control parameterContainer)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)     at System.Web.UI.Page.Render(HtmlTextWriter writer)     at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Sproc message_reply_list is missing column DeleteReason, and two methods in LegacyDB that takes care of the return values there.

Issues with 2.0.0 RC1 upgrade

I just upgraded my test forum here: http://forum.djxmmx.net/
However, it seems I'm unable to browse anywhere on the forum.
None of the links on the page seem to work.
You can not login or view any posts.
I'm hoping I just missed something simple.

Problem after forum logout.

This is the scenario:

I am logged in to the forum.

I press the logout link.

I get the popup and confirm logout.
Forum looks normal.

I press the browser back button.
Same URL in the address field.

I get this:
image

Avatar Styles in Team Page Ignore CSS

Inline styles in the Team page cause the specified avatarimage style in the CSS to be ignored.

From Page:

YetAnotherForum.NET\pages\team.ascx

<asp:Image ID="AdminAvatar" runat="server" CssClass="avatarimage" Width="40px" Height="40px" />
<asp:Image ID="ModAvatar" runat="server" CssClass="avatarimage" Width="40px" Height="40px" />

From Theme Style Sheet:

.avatarimage {
    display: inline-block;
    overflow: hidden;
}
.topicLastPost .avatarimage,
.topicMain .avatarimage,
.YAF_Pages_members .avatarimage,
.YAF_Pages_team .avatarimage {width: 40px; height: 45px;}

Failed to start: LatestInformationTask

Failed to start: LatestInformationTask
System.ArgumentException: An item with the same key has already been added.
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at YAF.Types.Extensions.CollectionExtensions.AddOrUpdate[TKey,TValue](IDictionary`2 dictionary, TKey key, TValue value) in c:\Projects\YAFNET\yafsrc\YAF.Types\Extensions\CollectionExtensions.cs:line 60
   at YAF.Core.YafDbLogger.InitLookup() in c:\Projects\YAFNET\yafsrc\YAF.Core\Logger\YafDbLogger.cs:line 212
   at YAF.Core.YafDbLogger.IsLogTypeEnabled(EventLogTypes type) in c:\Projects\YAFNET\yafsrc\YAF.Core\Logger\YafDbLogger.cs:line 104
   at YAF.Core.YafDbLogger.Log(String message, EventLogTypes eventType, String username, String source, Exception exception) in c:\Projects\YAFNET\yafsrc\YAF.Core\Logger\YafDbLogger.cs:line 131
   at YAF.Types.Interfaces.LoggerExtensions.Debug(ILogger logger, String format, Object[] args) in c:\Projects\YAFNET\yafsrc\YAF.Types\Interfaces\LoggerExtensions.cs:line 47
   at YAF.Core.Tasks.IntermittentBackgroundTask.Run() in c:\Projects\YAFNET\yafsrc\YAF.Core\Tasks\IntermittentBackgroundTask.cs:line 103
   at YAF.Core.AppInitTaskManager.&lt;&gt;c__DisplayClass4.

Avatars don't show in admin maintenance....

Well, just a cosmetic thingy, but when administering site administrators avatars do not show in admin the admins page...

image

They do show up perfectly well on the "Team" page though..

image

Ignore user

When a user is ignored, their post is still showing up, but the content is hidden. Can the post just not be shown at all?

Also, if an ignored users post is quoted, it is then displayed. Any possible way of having that hidden?

URLRewriting issue with Unicode switch

If you enable urlrewriting and set URLRewritingMode to Unicode ,you get not found for every link you click.This happens in all languages with unicode standard like Persian, Arabic etc.

Youtube BBcode issue.

The [YOUTUBE] tag does not support https:// , only http:// is understood as the URL prefix for a video link. Youtube supports both ways of linking to the same video..

Auto-lock inactive accounts (with setting)

In reference to this comment - #16 (comment) - this would be a nice feature -- helps lock down old accounts automatically just in case an attacker gets past the user's password - when they see they're locked, they'll email or contact somehow...

Additional would be setting in admin for auto-lock inactivity period, and ability to give reason for lock to user (or maybe a notification email sent when locked so user can restore account) - like hotmail does (did)

(Not sure where this went, but was intentioned for 2.1 milestone or beyond)

Suggestion for small improvement of the forum jump box.

In the forum jump box at the bottom of pages, you can jump to all forum sections except to the forum home. It should be there as an option for those using the jump box.

I myself have the breadcrumb links at the bottom of the forum pages too for easier navigation, but it would be nice to select "Forum home" from the jump box too while you are using that feature...

Not an important issue, just a small suggestion regarding user-friendliness & consistency...

Please reclassify from "issue" to something more suitable...

Installation error

I am trying to install YAF in my machine, using Web Platform Installer. However, wen the initialization starts it gives the following error message:

Invalid Xml: The element "feed" is missing the required child element "id"

I have tried to repair and uninstall the Web Platform Installer" with pout any success.

Any advise would be very much appreciate it.

Thank you,

QuiQue

Install Problem with YAF-v2.0-RC1-BIN

Hi i cant able run this version to in my localhost.i didn't know to do process to install.when am able to install i got this error An error occurred loading a configuration file: Failed to map the path '/'.please help me to do this process.Thanks in advance

Jump to first unread broken.

The go to first unread post in the forum topic listings does not work ok anymore.
It jumps to the last post instead instead of the first unread. So the same end result is given by the both "jump to" options.

I am using the db option in tracking user status...

Login Issue on my Local Dev System

Ingo, this is the issue I'm seeing that stopping me from logging in on my system:

Uncaught Sys.WebForms.PageRequestManagerServerErrorException:
Sys.WebForms.PageRequestManagerServerErrorException: Procedure or function yaf_user_update_single_sign_on_status has too many arguments specified.
ScriptResource.axd?d=vlh7r7BnMZOOibdNEne4ZfHtpRkQK_8X0s_FgA1h2s0WGjvQIjPdXUXN5EGC4OvavBU4F5xfnBuPZ7โ€ฆ:237

Error on My topics, changing value of 'Since' dropdown

I have the latest version 1.9.6.
and if I click on My Topics & change between the various tabs, and then change the value of 'Since' dropdown, after several tries, I get this error:

... some image or name of image not being found??
I have tried changing themes, and checking to see if all the images are there, but i can't find anything wrong.
Best Regards
Nick Smith

Server Error in '/forum' Application.
o cannot be null
Parameter name: o
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentNullException: o cannot be null
Parameter name: o

Source Error:

Line 17:
Line 18: <% string imgTitle = "";
Line 19: string imgSrc = this.GetTopicImage(this.TopicRow, ref imgTitle);
Line 20: %>
Line 21: <%=imgTitle%>

Source File: e:\wwwroot\YAF\YetAnotherForum.NET\controls\TopicLine.ascx Line: 19

Stack Trace:

[ArgumentNullException: o cannot be null
Parameter name: o]
YAF.Types.CodeContracts.ArgumentNotNull(T obj, String argumentName) +91
YAF.Controls.TopicLine.GetTopicImage(Object o, String& imgTitle) +130
ASP.controls_topicline_ascx.__Render__control1(HtmlTextWriter __w, Control parameterContainer) in e:\wwwroot\YAF\YetAnotherForum.NET\controls\TopicLine.ascx:19
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +131
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
System.Web.UI.WebControls.WebControl.RenderContents(HtmlTextWriter writer) +15
System.Web.UI.WebControls.WebControl.Render(HtmlTextWriter writer) +52
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
YAF.Core.ForumPage.Render(HtmlTextWriter writer) +31
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
YAF.Forum.Render(HtmlTextWriter writer) +376
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer) +315
System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer) +48
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +246
System.Web.UI.Page.Render(HtmlTextWriter writer) +40
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5290

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1008

SQL Error on v2.0 RC1 Upgrade

System.Exception: FILE:
mssql/constraints.sql

ERROR:
The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_yaf_GroupMedal_yaf_Group". The conflict occurred in database "YAF", table "dbo.yaf_Group", column 'GroupID'.

STATEMENT:
if not exists (select top 1 1 from sys.objects where name='FK_yaf_GroupMedal_yaf_Group' and parent_object_id=object_id('[dbo].[yaf_GroupMedal]') and type in (N'F'))
alter table [dbo].[yaf_GroupMedal] add constraint [FK_yaf_GroupMedal_yaf_Group] foreign key(GroupID) references [dbo].yaf_Group
at YAF.Classes.Data.LegacyDb.system_initialize_executescripts(String script, String scriptFile, Boolean useTransactions) in c:\TeamCity\buildAgent\work\486389e89d993eec\yafsrc\YAF.Classes\YAF.Classes.Data\mssql\LegacyDb.cs:line 6127
at YAF.Core.Services.InstallUpgradeService.ExecuteScript(String scriptFile, Boolean useTransactions) in c:\TeamCity\buildAgent\work\486389e89d993eec\yafsrc\YAF.Core\Services\InstallUpgradeService.cs:line 353
at YAF.Core.Services.InstallUpgradeService.UpgradeDatabase(Boolean fullText, Boolean upgradeExtensions) in c:\TeamCity\buildAgent\work\486389e89d993eec\yafsrc\YAF.Core\Services\InstallUpgradeService.cs:line 262
at YAF.Install._default.Wizard_NextButtonClick(Object sender, WizardNavigationEventArgs e)
at System.Web.UI.WebControls.Wizard.OnBubbleEvent(Object source, EventArgs e)
at System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

URL rewriting revisited...

Earlier,with 1.9.6.1, I have always been able to show/link posts from "non-forum locations" using the native URL format even if rewriting is enabled, like:

http://test.m-users.net/forum/default.aspx?g=posts&m=33828#post33828

Works ok in 1.9.6.1+ - http://www.marklin-users.net/forum/default.aspx?g=posts&m=33828#post33828

But now it only takes me to the forum home page and not to the referenced post... ???
Using the "Advanced" rewriting option in the app.config at the moment... Have also tested with "Standard" and "Translit" but to no avail - still just shows the forum home page...

I can of course recode the links to the rewritten format to try to make it work (At least I think so...) but it is a bit tedious, since it means that whenever I change the rewriting format - it will fail again...

Running the site on a 2012 R2 server... IIS has the URL Rewrite 2.0 installed.

Just wonder it YAF 2.0.0 has been successfully tested on 2012 R2... 1.9.6.1 works ok on 2012 R2...

Individual Block Option For PM/Email/Friend Request

From: http://forum.yetanotherforum.net/yaf_postsm61337_User-Option-In-CP-for-PM-Email-Friend-Request.aspx

Can we add an option in user control panel to allow user to have an option to block receiving PM/Email/Friend request from other users?

Currently the only way to block PM is to have admin create a role with PM=0 and manually move user to that role. Also currently there is no option to block email/friend request from others.

Is it possible to add this as a feature request. It would be very simple to implement:

In user control panel, add three check box:

  1. Block other users from sending me PM
  2. Block other users from sending me Email.
  3. Block other users from sending me friend request.

In backend DB, just add one more column in users table called "BlockContact"

It can have values "pm,email,friend" for each user.

If it has all three values, it means users does not want to receive pm, email and friend request.

If it has values "pm, email", it means user does not want to receive pm and email only. He is fine with others sending him friend request.

If it is NULL, then they are no blocks.

All this assumes that pm, email and friend request are enabled in Admin settings.

YAF can't be installed in folder?

It seems that YAF don't work in a folder anymore.

Unable to Locate Provider Named "System.Data.SqlClient" in Data Access Providers (DLL Not Located in Bin Directory?).

[NoValidDbAccessProviderFoundException: Unable to Locate Provider Named "System.Data.SqlClient" in Data Access Providers (DLL Not Located in Bin Directory?).]
YAF.Core.Data.DbAccessProvider.<.ctor>b__0() +312
YAF.Core.Helpers.SafeReadWriteProvider1.get_Instance() +87 YAF.Core.Data.DbAccessProvider.get_Instance() +41 YAF.Core.BaseModule.<RegisterDataBindings>b__4(IComponentContext c) +74 Autofac.<>c__DisplayClass101.b__f(IComponentContext c, IEnumerable1 p) +47 Autofac.Builder.<>c__DisplayClass11.b__0(IComponentContext c, IEnumerable1 p) +59 Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable1 parameters) +191
Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable1 parameters) +109 Autofac.Core.Resolving.InstanceLookup.Execute() +158 Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable1 parameters) +282
Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +72 Autofac.Core.Activators.Reflection.<>c__DisplayClass2.<CanSupplyValue>b__0() +82 Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate() +233 Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable1 parameters) +563
Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable1 parameters) +109 Autofac.Core.Resolving.InstanceLookup.Execute() +158 Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable1 parameters) +282
Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +72 Autofac.Core.Activators.Reflection.<>c__DisplayClass2.<CanSupplyValue>b__0() +82 Autofac.Core.Activators.Reflection.ConstructorParameterBinding.Instantiate() +233 Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance(IComponentContext context, IEnumerable1 parameters) +563
Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable1 parameters) +109 Autofac.Core.Resolving.InstanceLookup.<Execute>b__0() +63 Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func1 creator) +201
Autofac.Core.Resolving.InstanceLookup.Execute() +262
Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable1 parameters) +282 Autofac.Core.Resolving.InstanceLookup.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +72
Autofac.Features.Collections.<>c__DisplayClass6.b__1(IComponentRegistration cr) +60
System.Linq.WhereSelectArrayIterator2.MoveNext() +66 System.Linq.Buffer1..ctor(IEnumerable1 source) +335 System.Linq.Enumerable.ToArray(IEnumerable1 source) +77
Autofac.Features.Collections.<>c__DisplayClass4.b__0(IComponentContext c, IEnumerable1 p) +251 Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable1 parameters) +191
Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable1 parameters) +109 Autofac.Core.Resolving.InstanceLookup.Execute() +158 Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable1 parameters) +282
Autofac.Core.Resolving.ResolveOperation.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +60 Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable1 parameters) +73

[DependencyResolutionException: An exception was thrown while executing a resolve operation. See the InnerException for details. ---> Unable to Locate Provider Named "System.Data.SqlClient" in Data Access Providers (DLL Not Located in Bin Directory?). (See inner exception for details.)]
Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable1 parameters) +177 Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +279
Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable1 parameters, Object& instance) +175 Autofac.ResolutionExtensions.ResolveService(IComponentContext context, Service service, IEnumerable1 parameters) +250
Autofac.ResolutionExtensions.Resolve(IComponentContext context, Type serviceType, IEnumerable1 parameters) +72 Autofac.ResolutionExtensions.Resolve(IComponentContext context, IEnumerable1 parameters) +118
Autofac.ResolutionExtensions.Resolve(IComponentContext context) +85
YAF.Core.BaseModule.b__2c(IComponentContext x) +69
Autofac.<>c__DisplayClass101.<Register>b__f(IComponentContext c, IEnumerable1 p) +47
Autofac.Builder.<>c__DisplayClass11.<ForDelegate>b__0(IComponentContext c, IEnumerable1 p) +59
Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance(IComponentContext context, IEnumerable1 parameters) +191 Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable1 parameters) +109
Autofac.Core.Resolving.InstanceLookup.b__0() +63
Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare(Guid id, Func1 creator) +201 Autofac.Core.Resolving.InstanceLookup.Execute() +262 Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable1 parameters) +282
Autofac.Core.Resolving.ResolveOperation.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +60 Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable1 parameters) +111
Autofac.Core.Lifetime.LifetimeScope.ResolveComponent(IComponentRegistration registration, IEnumerable1 parameters) +279 Autofac.ResolutionExtensions.TryResolveService(IComponentContext context, Service service, IEnumerable1 parameters, Object& instance) +175
Autofac.ResolutionExtensions.ResolveService(IComponentContext context, Service service, IEnumerable1 parameters) +250 Autofac.ResolutionExtensions.Resolve(IComponentContext context, Type serviceType, IEnumerable1 parameters) +72
Autofac.ResolutionExtensions.Resolve(IComponentContext context, Type serviceType) +47
YAF.Core.AutoFacServiceLocatorProvider.Get(Type serviceType) +74
YAF.Types.Interfaces.IServiceLocatorExtensions.Get(IServiceLocator serviceLocator) +131
YAF.Types.Interfaces.IServiceLocatorExtensions.Get(IHaveServiceLocator haveLocator) +118
YAF.Core.UnloadSessionForumModule.UnloadSessionModule_Unload(Object sender, EventArgs e) +56
System.Web.UI.Control.OnUnload(EventArgs e) +9695598
YAF.Forum.OnUnload(EventArgs e) +41
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +237
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +173
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +173
System.Web.UI.Page.UnloadRecursive(Boolean dispose) +23
System.Web.UI.Page.ProcessRequestCleanup() +56
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +245
System.Web.UI.Page.ProcessRequest() +72
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
System.Web.UI.Page.ProcessRequest(HttpContext context) +58
ASP.forums_default_aspx.ProcessRequest(HttpContext context) in c:\Users\Vladimir\AppData\Local\Temp\Temporary ASP.NET Files\root\958c4e54\6e15e1fe\App_Web_no4wl45u.5.cs:0
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +341
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69

How to repeat - put YAF into folder in a simple test solution.

New Chat Link

New enhancement/feature request:

Can we add a link called "chat" in the forum header. It will be located besides My profile, my album, my topic.

When a user clicks on this link, they are taken to a separate page where the chat is in "full screen" or larger mode than iframe.

We can keep it simple by just loading the chat popup iframe with a bigger height and width than the current setting.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.