solved How to limit size/number of profile timeline images?

Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
I've always had my Image Support module set so that the regular member quota cannot upload images larger than 1.5 MB, and no more than 6 images per day can be added to the photo galleries.

However, I'm seeing this by a new member, and I want to know how I can stop them from loading so many large images to their profile timeline:
https://fotmd.com/ryan-carrell/timeline/52671#cm139517

(note that they added 11 images, and many are larger than 1.5 MB)
Not sure where/how I can adjust my site settings to prevent this?

I've always had the Timeline module "Quickshare" disabled, and the Timeline module set to prune entries after 120 days, but I notice this help item:
"NOTE: Timeline entries that are manually created by users are never deleted. "
-Does this mean that fellow can keep adding giant photos to his profile timeline and I'm stuck with hosting them forever? I want to prevent that and discourage profile Timeline use altogether for regular members- non-savvy members tend to use it instead of learning how to participate in forums etc.... and that wrecks the site participation flow for my site.

Just now, in the Timeline general settings I've disabled the "WYSIWYG editor for the "Post a new Activity Update" form field"... not sure if that would prevent this kind of timeline update..?

Thanks for any suggestions.


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015

updated by @strumelia: 01/07/18 12:36:15AM
michael
@michael
7 years ago
7,717 posts
Thought I'd fixed this already..... are you up to date with the latest stuff in the marketplace? ( especially the Profile Daily Limits module )?
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
Michael- no I have been holding off on the newest JR version with its many module updates- because I'm about to go away for several days and wanted to 'leave well enough alone' until I got back next week... to avoid any potential issues while I was away.

Once I get back home and do the updates, is there a particular setting I need to go look for to adjust that will prevent this fellow from using his profile timeline to do all his site participation and uploading excessive images? Thanks


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
michael
@michael
7 years ago
7,717 posts
no. Not if we're talking about the uploading to the profiles gallery via the quick share buttons

https://www.jamroom.net/the-jamroom-network/networkmarket/113/profile-daily-limits?expanded_changelog=1
Quote:

Profile Daily Limits module changelog

Version 1.0.8:
- Bug Fix: Uploads to the Gallery from the Quick Upload feature of the timeline were not being limited
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
He's not uploading these images to his gallery... he's inserting them into his profile Timeline comments, and the usual image size and # limits I've set dont' seem to be limiting what he's posting there:
https://fotmd.com/ryan-carrell/timeline/52671#cm139517
...I need to figure out how to prevent this use of member profile timelines. I need to prevent members from using their timelines kind of like their own personal 'forums' (I actually have member profile forums disabled) and prevent members from posting excessive images and holding long conversations in their own timelines. This member, and a couple other previous members, is using their Timeline as a lazy way to participate on the site without bothering to learn to use the normal site forums or the Image Galleries like all the other members do. I guess they think the site is like FB or something.


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
Here he is inserting excessive images into his timeline Comments:
https://fotmd.com/comment/update/id=139517
I don't even have the option of locking his comment 'discussion' if I go into editing it. And I don't want to be so rude as to delete it. But I want to prevent members from continuing to do this in the future. I don't want profile timelines to be used for long conversations and attaching multiple images with no size limits.


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
michael
@michael
7 years ago
7,717 posts
I'll look into that. That might need limiting.
michael
@michael
7 years ago
7,717 posts
Got some code in the "Profile Daily Limits" ( jrProfileLimit ) module ver 1.0.9 to deal with "Comment Attachments" and "Forum Attachments".

Need to get some other eyes on the code before release though.
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
That's wonderful Michael !- I'm afraid I'm leaving on a music festival trip this morning for 5 days though, so I won't be able to do much except check in from afar until I get home again on tuesday. Thanks for your help!


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
SteveX
SteveX
@ultrajam
7 years ago
2,584 posts
Have a lovely festi Strumelia! :)


--
¯\_(ツ)_/¯ Education, learning resources, TEL, AR/VR/MR, CC licensed content, panoramas, interactive narrative, sectional modules (like jrDocs), lunch at Uni of Bristol. Get in touch if you share my current interests or can suggest better :)

updated by @ultrajam: 09/07/17 12:03:09PM
brian
@brian
7 years ago
10,148 posts
michael:
Got some code in the "Profile Daily Limits" ( jrProfileLimit ) module ver 1.0.9 to deal with "Comment Attachments" and "Forum Attachments".

Need to get some other eyes on the code before release though.

Michael has run this by me, and I'm not sold on this at this time - I want to make sure this is handled correctly. The problem is that we have to decide how we want to handle attachments. Do we want it to be per ITEM? i.e. "max 1 attachment per comment, post, etc." or per day? Then we have to decide to we allow it to be broken up by media type? I.e. a user hits their daily limit on images but now wants to attach an audio file or a video or whatever - but since they have hit their limit they are done? Feels like it could get complicated real quick.

Since this is first time this has ever been brought up, I'm also not sure it warrants changes and additions to modules that 99% of our users will never use, so it needs to be thought through.

Sorry - don't mean to rain on anything.


--
Brian Johnson
Founder and Lead Developer - Jamroom
https://www.jamroom.net
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
Thanks, no rain detected. :)
I will bring this thread up again in maybe a week to see how I might adjust something for my site.
Unfortunately, I've very sick for over 10 days (yes while traveling and music festing too) and doctor today suspects a tick-bourne bacterial infection...Erlichiosis.
It can get very serious if untreated, so good thing I went to dr and didn't continue trying to home treat what we first thought was a severe sinus infection.
I'm now on the meds for it and lots of bed rest. Too groggy and weak to attend to updating my site to the newsest JR v. or other stuff like this thread. My site is working fine (thanks for being Jamroom).
So I need to sleep and get better for several days before I even consider touching my site workings or trying to understand what I need to do regarding updating..
Big hugs to you all!


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015

updated by @strumelia: 09/15/17 11:14:53AM
paul
@paul
7 years ago
4,326 posts
Get well soon Strum :-)


--
Paul Asher - JR Developer and System Import Specialist
michael
@michael
7 years ago
7,717 posts
Hope your feeling better soon :)
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
Ok, it's now 3 weeks later and I'm (finally) feeling better... plus I've now updated my two sites to the latest JR version and all.
I'm now re-visiting this issue, and I can understand Brian's concerns as he posted above.
I'd like to approach my issue from a new and different standpoint, with hopefully easier fixes...

I continue to have new members joining and cluelessly posting things on other people's profile Timelines, thinking they are in a forum discussion or group or something- actually probably having no clue WHERE they are on my site. See this one for example from today: ""I am having trouble figuring out how to get around this website, so forgive me."

I started this thread to try to limit the attachments and size of profile timeline 'updates' members could leave for each other, or on their own Timelines. Well Forget that... now I just need to prevent them from posting on Timelines altogether! It's becoming a headache, my moderators are also complainging becasue we can't adequately explain things to these members... it's apparent they don't really know where they are posting- they seem to get there by clicking on links and buttons that I want to eliminate. Then they post something and wonder why nobody responds and why it's not a discussion.
Hope I can explain this clearly, so I'll use screenshots showing the links/buttons I need to eliminate...


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015

updated by @strumelia: 10/03/17 02:23:57PM
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
OK problem #1:

I log in as a regular member, and I go to my own profile page. I click on my Latest Activity TAB, or I click on my Activities, ALL link... and it brings me to a text input box for a Status Update. I type in the box, then click "save update".... and I get the dreaded "You do not have the proper privileges to perform that action!" error message. See Screenshot.
This has really annoyed some of my more clueless members...they don't know what they're doing wrong, and I never see or hear about it until they complain. If they aren't allowed to post status updates (and I DON'T want them to be able to), then they shouldn't be able to get access to a textbox for typing their updates into. I can understand their being frustrated!
How do I fix this?

BTW, not sure if it has any bearing on this but....As master admin, and also my Moderator quota- we need to be able to delete items from the Main Page Timeline- I have the trashcan/hover button set up there only viewable to admins. I also like the Admins to be able to see and use the "Add to Timeline" checkbox when we post items.
1.jpg
1.jpg  •  417KB




--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
Problem #2:
Members are posting on timelines and I don't want them to.
I had to figure out HOW these clueless members are making their way to other people's profile Timelines and posting in them, thinking they are posting in some sort of discussion area.
Again I logged in as a regular member and can see here are the TWO ways it's happening (see screenshot):
They are on the Main page of the site, looking at the site's Latest Activity Timeline.
Someone has posted a comment on something, and when they HOVER over that Activity feed comment, they get the LINK button. Instead of the link taking them to the item that was commented on , it instead takes them to the commenter's profile page Timeline, where they get a Timeline Update textbox they can use. This is not what i want. They can simply click on the hotlink of the item that was commented on, right in the main page timeline... that works just fine and most members use that method, so I want to ELIMINATE that 'hover button' with the chainlink icon that takes them instead to a profile timeline.

The second way they are winding up making comments in timelines (like I DON'T want) is by again on the Main page activity feed, they are clicking on the "Share This" link in the comment. That link takes them to another textbox where they can type in another comment and 'share it'. Again, I am having trouble with confused members who are using these textboxes to ask questions, apparently thinking they are joining in some sort of forum thread or conversation. It's confusing others as well, when they try to answer by clicking and not seeing a discussion thread... nobody knows where they are at that point. lol
So is there any 'bad' consequence for me to remove the "Share This" link from the Timeline? Will it cause problems? Can I remove it only from regular member quota while leaving the Timeline "ShareThis" link usable to Admins, or does it get removed from everyone then? I do have the Admins able to see/use the "add to timeline" checkbox, btw.
2.jpg
2.jpg  •  607KB




--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
michael
@michael
7 years ago
7,717 posts
For problem #1 go to
ACP -> MODULES -> PROFILES -> TIMELINE -> TEMPLATES -> create_entry_form.tpl -> MODIFY

And replace the entire contents with something like
{* gone, not using this.  dont want timeline written comments *}

save and activate. that will get rid of the comment area but leave the timeline active
michael
@michael
7 years ago
7,717 posts
Strumelia:.....
BTW, not sure if it has any bearing on this but....As master admin, ...... I also like the Admins to be able to see and use the "Add to Timeline" checkbox when we post items.....
Not an option sorry. Admin stuff done to a profile doesn't get put to the timeline by design. ( there are always ways around it if you MUST have it, but the reasoning is posting something as someone else was considered undesirable.)
michael
@michael
7 years ago
7,717 posts
Problem #2
See if that alteration in problem #1 fixes the being able to comment issue, if there are still locations that have input text areas, we need to figure out which templates they are in and remove them too.

Can help with that, but lets see if they still exist after #1 is fixed.

The share and the link buttons are probably in the jrAction modules item_list.tpl file but could have an override at skin level.
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
YES this has solved Problem #1- thank you! :) Now members will no longer be complaining about the "You do not have permission' errors.

Problem #2 still exists, however (after Integ checks and cache clearing). --When logged in as a regular member, both the "share this" link and the 'chainlink icon' button appear in both the main page Timeline and on Profile page timelines, as per my screenshot above... and they both lead to usable timelineupdate text input boxes. I'd like to get rid of both these pathways in the timelines.

michael:
For problem #1 go to
ACP -> MODULES -> PROFILES -> TIMELINE -> TEMPLATES -> create_entry_form.tpl -> MODIFY
And replace the entire contents with something like
{* gone, not using this.  dont want timeline written comments *}
save and activate. that will get rid of the comment area but leave the timeline active



--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
michael:
Strumelia:.....
BTW, not sure if it has any bearing on this but....As master admin, ...... I also like the Admins to be able to see and use the "Add to Timeline" checkbox when we post items.....
Not an option sorry. Admin stuff done to a profile doesn't get put to the timeline by design. ( there are always ways around it if you MUST have it, but the reasoning is posting something as someone else was considered undesirable.)

I only meant that we Admins have (and would like to keep) the "add to timeline" checkbox when we post something within our OWN profiles... not applying it on other members' items or post edits. That's fine, right? I currently give the checkbox option only to Admins, but not to regular members- when reg members post something, it just always goes into the timelines by default the way i have it now.
I just wanted to be sure not to lose this checkbox option when fussing with the issues I've raised in this thread- problems #1 and #2.


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015

updated by @strumelia: 10/05/17 08:18:07AM
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
michael:
Problem #2
The share and the link buttons are probably in the jrAction modules item_list.tpl file but could have an override at skin level.

As per Problem #2:
I do not have a jrAction item_list template in my skin.

You're right, these two references are in my item_list tmeplate in my jrAction module.

Here is the current code... can you suggest how to eliminate those two links from all timelines?:
{if isset($_items)}

    {jrCore_module_url module="jrAction" assign="murl"}
    {foreach from=$_items item="item"}

        <div id="action-item{$item._item_id}" class="action_item_holder">
            <div class="container">
                <div class="row">

                    <div class="col2">
                        <div class="action_item_media">
                            {jrCore_module_function function="jrImage_display" module="jrUser" type="user_image" item_id=$item._user_id size="icon" crop="auto" alt=$item.user_name class="action_item_user_img img_shadow img_scale"}
                        </div>
                    </div>

                    <div class="col10 last" style="position:relative">

                        <script type="text/javascript">
                            $(function() {
                                var d = $('#action-controls{$item._item_id}');
                                $('#action-item{$item._item_id}').hover(function()
                                {
                                    d.show();
                                }, function()
                                {
                                    d.hide();
                                });
                            });
                        </script>

                        <div id="action-controls{$item._item_id}" class="action_item_delete">
                            <a href="{$jamroom_url}/{$item.profile_url}/{$murl}/{$item._item_id}">{jrCore_icon icon="link"}</a>
                            {jrCore_item_delete_button module="jrAction" profile_id=$item._profile_id item_id=$item._item_id}
                        
                            {if jrUser_is_admin() && !jrProfile_is_profile_view()}
                            <a onclick="xxDeleteEntry('{$item._item_id}');">{jrCore_icon icon="trash" size=30}</a>
                            {/if}                        
                        
                        </div>

                        <div>

                            <span class="action_item_title"><a href="{$jamroom_url}/{$item.profile_url}" title="{$item.profile_name|jrCore_entity_string}">@{$item.profile_url}</a></span>

                            <span class="action_item_actions">
                                &bull; {$item._created|jrCore_date_format:"relative"}
                                {if jrUser_is_logged_in() && $_user._user_id != $item._user_id && $item.action_shared_by_user != '1'}
                                    &bull; <a onclick="jrAction_share('jrAction','{$item._item_id}')">{jrCore_lang module="jrAction" id="10" default="Share This"}</a>
                                {/if}
                                {if $_post.module_url == $_user.profile_url && $item.action_shared_by_user == '1'}
                                    &bull; <a href="{$jamroom_url}/{$item.profile_url}/{$murl}/{$item._item_id}">{jrCore_lang module="jrAction" id="26" default="shared by you"}</a>
                                {elseif $item.action_shared_by_count > 0}
                                    &bull; {jrCore_lang module="jrAction" id="24" default="shared by"} <a href="{$jamroom_url}/{$item.profile_url}/{$murl}/{$item._item_id}">{$item.action_shared_by_count} {jrCore_lang module="jrAction" id="25" default="follower(s)"}</a>
                                {/if}

                                {* We do not show comment links on Follower entires *}
                                {if $item.action_module != 'jrFollower'}
                                    {if isset($item.action_original_item_comment_count)}
                                        &bull; <a href="{$item.action_original_item_url}">{jrCore_lang module="jrAction" id="22" default="Comments"}: {$item.action_original_item_comment_count}</a>
                                    {elseif isset($item.action_item_comment_count)}
                                        &bull; <a href="{$item.action_item_url}">{jrCore_lang module="jrAction" id="22" default="Comments"}: {$item.action_item_comment_count}</a>
                                    {/if}
                                {/if}

                            </span>
                            <br>

                            {* Mention *}
                            {if isset($item.action_mode) && $item.action_mode == 'mention'}

                                {$item.action_text|jrCore_format_string:$item.profile_quota_id|jrCore_strip_html|truncate:160}

                            {* Shared Action *}
                            {elseif isset($item.action_shared)}

                                {if strlen($item.action_text) > 0}
                                <div class="action_item_text">
                                    {$item.action_text|jrCore_format_string:$item.profile_quota_id}
                                </div>
                                {/if}

                                {if strlen($item.action_original_html) > 0}
                                <div class="action_item_shared">
                                    {$item.action_original_html}
                                </div>
                                {/if}

                            {* Activity Update *}
                            {elseif $item.action_module == 'jrAction' && isset($item.action_text)}

                                <div class="action_item_text">
                                    {$item.action_text|jrCore_format_string:$item.profile_quota_id}
                                </div>

                            {* Module Actions *}
                            {elseif isset($item.action_html)}

                                {$item.action_html}

                            {/if}

                        </div>
                    </div>

                </div>
            </div>
        </div>

    {/foreach}
{/if}

<script>
    function xxDeleteEntry(id) {
        if (confirm('Are you sure you want to Delete this timeline entry?')) {
            var url = core_system_url + '/' + jrAction_url + '/browser_item_delete/id=' + id + '/__ajax=1';
            jrCore_set_csrf_cookie(url);
            $.get(url, function (r)
            {
                $('#a' + id).fadeOut();
            });
        }
    }
</script>



--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
I successfully removed the "Share This" link from all Timelines by removing the following bit of code from my jr Timeline module's item_list.tpl:
{if jrUser_is_logged_in() && $_user._user_id != $item._user_id && $item.action_shared_by_user != '1'}
                                    &bull; <a onclick="jrAction_share('jrAction','{$item._item_id}')">{jrCore_lang module="jrAction" id="10" default="Share This"}</a> {/if} 
I'm sure some of the surrounding associated code should have probably been removed too, but I left it to be safe and just removed the link itself.

Now to figure out where the "link.png" is appearing in my templates... over riding in my skin, or in my Timeline module...? Maybe I can find it and not destroy the planet....


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015
Strumelia
Strumelia
@strumelia
7 years ago
3,603 posts
Ok, I found and removed the timeline "link.png" button... also in the Timeline module's item_list template... as in here:
<div id="action-controls{$item._item_id}" class="action_item_delete">
                            {* timeline comment link.png icon button removed *}
                            {jrCore_item_delete_button module="jrAction" profile_id=$item._profile_id item_id=$item._item_id}                      
                            {if jrUser_is_admin() && !jrProfile_is_profile_view()}
                            <a onclick="xxDeleteEntry('{$item._item_id}');">{jrCore_icon icon="trash" size=30}</a>
                            {/if}                        
                        </div>
Seems to have gotten rid of the link button in all the Timelines.
Now my members can no longer try to start conversations in other people's timelines and wonder where they are and why nobody else is responding to their questions and comments. Yikes, how retro to be removing such 'Share' avenues!... but really, I had gotten tired of members wandering into timelines and getting confused and then declaring that the site was confusing to navigate.

Somehow I managed to find the bits of code to delete and now those three 'garden paths' my confused members were getting lost wandering down inadvertently... have their gates CLOSED. :)
This removal of the timeline comment accesses also solves the original issue at the beginning of this thread- now members can't post excessive content or images into their timelines like that fellow with his massive jpgs that weren't limited by the profile limit functions. Now he can't access any timeline comment textboxes and post his 'stuff'.... he'll have to use the site Forums, the Groups, the Photo Gallery etc. to post his content, just like everyone else. And then other members can comment on it normally... and know where they are. :D

SOLVED! (whew, sorry for the length of this thread, but these little things were all very much related to each other)


--
...just another satisfied Jamroom customer.
Migrated from Ning to Jamroom June 2015

updated by @strumelia: 10/07/17 11:07:12AM
michael
@michael
7 years ago
7,717 posts
Note to self: read the last line of the thread before checking the middle. :)

Great that you sorted it out. Well done! :)