How do I remove a video from the Facebook Ads library?

I use the Facebook Ads personal account (not the sales manager),

I realize that Facebook stores all the videos that I have used for advertising in the past.

How do I delete these videos?

library – Store and manage site page templates centrally in one place and use them on all subpages

I would like to create a template for the site pages and use it on all sub-websites.
A template can be found on the top website of the standard page library. I get this template when I use the drop down menu on the start page and want to create a new page. There are the three models that are displayed by default and mine. It works as usual on the website, but this template should work on all subsites. I don't want to have them redundant in sharepoint, which leads to errors and more effort if the model needs to be changed.

Can you think of a solution to this problem?

iphone – iCloud Photo Library does not upload any photos (iOS)

When I try to see "old" photos on my iPhone (iOS 13.3), Photos simply displays an exclamation point icon:

It happens all the time. If a photo loads, it's a miracle.


  • Internet works
  • All photos are successfully uploaded
  • I have 40 GB available on iCloud
  • MacOS photos and works fine, they allow me to download the originals
  • I even updated my iPhone and restored from iCloud
  • I have the latest iOS (13.3, same problem from the start, with 12.x)


Hide users from three dots in a specific user library folder

How to hide the three dots of a library folder, after the file name?

I need that only the administrator or other specific role can see the users that appear when accessing the three dots.

computed column – Create a split point view filtered by current quarter in share point / library lists

If your projects have a completion date and you want to find the quarter using that, you can use the approach and steps below,

You can do this by creating a calculated column with the formula below:


Note: CompletedDate is project completion date

Once you have created this column, all reports will be divided into 4 sections Q1, Q2, Q3 and Q4. You can now create 4 views with the filter on the calculated column equal to Q1 to Q4.

For more information, follow the URLs below

Create a list view by quarter

2013 – Improved performance of creating / copying files and folders (using code) in our large document library

We have a local SharePoint 2013 team site and we have a document library that contains around 29,000 +++ items, and these files are structured under around 4,000 folders and subfolders. now inside our server side event receiver, i use the following method to copy files and folders, as follows: –

private void copyfiles(SPItemEventProperties properties, SPListItem currentItem, string from, string to)
      SPFolder folder = properties.Web.GetFolder(properties.Web.ServerRelativeUrl + "/Shared Documents/" + currentItem("ReferenceNumber") + "" + from + "");
      SPDocumentLibrary currentDL = (SPDocumentLibrary)properties.Web.GetList(properties.Web.ServerRelativeUrl + "/Shared Documents/");
      SPListItem softemplete = null;
      TaxonomyFieldValue taxFieldValue = currentItem("CustomerName") as TaxonomyFieldValue;

      var label = taxFieldValue.Label;
      var titlewithoutspecialchar = currentItem("Title").ToString().Replace("~", " ").Replace(""", " ").Replace("", " ").Replace("%", " ").Replace("&", " ").Replace("*", " ").Replace(":", " ")
              .Replace("<", " ").Replace(">", " ").Replace("?", " ").Replace("", " ").Replace("\", " ").Replace("{", " ").Replace("}", " ").Replace("|", " ").Replace(".", " ");
       if (folder.ItemCount > 0)
            SPList list = properties.Web.GetList(properties.Web.ServerRelativeUrl + "/Shared Documents/");
            SPQuery query = new SPQuery();
            query.Folder = folder;
            SPListItemCollection listitem = list.GetItems(query);
              foreach (SPListItem i in listitem)
                 if ((i.Name.ToLower().Contains(currentItem("ReferenceNumber").ToString().ToLower() + " -") &&
                    (i.Name.ToLower().Contains("sof") || i.Name.ToLower().Contains("pof") || i.Name.ToLower().Contains("qo"))

                     i.Name.ToLower().Contains("request for approval"))
                     softemplete = i;
                       if (softemplete != null)
                            byte() fileBytes = softemplete.File.OpenBinary();
                            string destUrl = properties.Web.ServerRelativeUrl + "" + currentDL.RootFolder.Url + "" +
                             currentItem("ReferenceNumber") + "" + to + "" + currentItem("ReferenceNumber") + " - " + label + " - " + titlewithoutspecialchar.Trim() + ".xlsx";
                             if (i.Name.ToLower().Contains("request for approval.oft"))
                                    destUrl = properties.Web.ServerRelativeUrl + "" + currentDL.RootFolder.Url + "" +
                                   currentItem("ReferenceNumber") + ""+to+"/Request for Approval.oft";
                              else if (i.Name.ToLower().Contains("request for approval.xlsm"))
                                    destUrl = properties.Web.ServerRelativeUrl + "" + currentDL.RootFolder.Url + "" +
                                   currentItem("ReferenceNumber") + "" + to + "/Request for Approval.xlsm";
                                    SPFile destFile = currentDL.RootFolder.Files.Add(destUrl, fileBytes, false);



Now this method takes enough time to finish copying (sometimes around 10 seconds), although I use the CAML query to find only the files in the desired folder usingquery.Folder = folder;. so can anyone provide advice on improving this method? as i think it is already set to the maximum, is this correct?

php – add a custom metabox to the custom widget in the media library

I am implementing a custom widget to create a logo slider. The initial code works fine, but when I added a metabox to the attachment screen to allow the user to add an external link to the images, I did problems.
What I want to do is add the metabox, save its value and when the widget is loaded on the front end, find the link that the user added for each image. The images are not attached to any message, and for now I can see the new metabox but it can only be edited if the user clicks on the edit link of each image in the media library , I prefer to see the box on the main selection screen of the media gallery. I also cannot get the value of the field, I think that in the code, the identifiers of the images are not loaded.

public function initMetabox()
      __('Link image to url'),
      array($this, 'renderMetabox'),

  public function renderMetabox( $post )
    $url = get_post_meta( $post->ID, '_image_link_url', true );
    ID, '_image_link_url', true );


The foreach loop for image links will produce an error Invalid argument supplied... and the variable $ post-> ID is not available. Do not hesitate to send us your suggestions

Kotlin DSL validation library – Code Review Stack Exchange

In the process of creating a validation library for Kotlin and I would like to take full advantage of Kotlin's expressiveness by creating a powerful DSL. I'm off to a good start, but I'm looking for comments on the following:

  • DSL general design
  • Will this current approach easily adapt to future capabilities (some examples will be below)
  • All the cool things about Kotlin that I don't currently enjoy

The fundamental validation API uses the idea of FieldValidationRules which are applied to an instance field / property. A rule can be created for each field that must be validated. FieldValidationRules contains a list FieldConstraint instances that "constrain" the field to certain valid values. When the validator is called on a given instance, all the rules are applied to this instance.

I will only share the DSL code here, but if reviewers want the full project context, here is a link to the full project. Although I mainly seek comments on DSL, all comments on the project are welcome.


annotation class KalidDslMarker

class FieldValidationRuleConfiguration {
    private val _fieldConstraints: MutableList> = mutableListOf()

    val fieldConstraints: List>
        get() = _fieldConstraints

    fun notNull() {

    fun isNull() {

    fun between(min: Int, max: Int) {
        _fieldConstraints.add(RangeLengthFieldConstraint(min, max))

    fun maximum(max: Int) {

    fun minimum(min: Int) {

    fun lengthOf(length: Int) {

class ValidatorConfiguration {
    private val _validationRules: MutableList> = mutableListOf()

    val validationRules: List>
        get() = _validationRules

    fun  rule(
        expression: (T) -> R,
        block: FieldValidationRuleConfiguration.() -> Unit
    ) {
        with(FieldValidationRuleProvider(block)) {
            val rule = createFieldRule(expression)

    fun  ruleForAll(
        expression: (T) -> Iterable,
        block: FieldValidationRuleConfiguration.() -> Unit
    ) {
        with(FieldValidationRuleProvider(block)) {
            val rule = createCollectionFieldRule(expression)


class FieldValidationRuleProvider(init: FieldValidationRuleConfiguration.() -> Unit) {
    private val config: FieldValidationRuleConfiguration = FieldValidationRuleConfiguration().apply(init)

    fun createFieldRule(expression: (T) -> Any?): FieldValidationRule =
        FieldValidationRuleBase(config.fieldConstraints, expression)

    fun createCollectionFieldRule(expression: (T) -> Iterable): FieldValidationRule> =
        CollectionFieldValidationRule(config.fieldConstraints, expression)

class ValidatorProvider(init: ValidatorConfiguration.() -> Unit) {
    val config: ValidatorConfiguration = ValidatorConfiguration().apply(init)

inline fun  ValidatorProvider.createValidator(): Validator =
    BasicValidator(T::class, config.validationRules)

Syntax for creating the validator

inline fun  validator(noinline block: ValidatorConfiguration.() -> Unit): Validator =
    with(ValidatorProvider(block)) { createValidator() }


Commented code are possible ideas to pursue in the future if this current architecture supports them.

val addressValidator = validator
{ rule({ }) { // Wanted behavior // lengthOf(5) granted (address.state == "Texas") otherwise lengthOf(6) } } val personValidator = validator { rule({ it.age }) { // Wanted behavior // when (person.address.state) { // "Texas" -> minimum(21) // "Louisiana" -> minimum(18) // } } rule({ it.address }) { // Wanted behavior // withValidator(addressValidator) } ruleForAll({ it.friendNames }) { notNull() maximum(2) } } fun main() { val person = ... val result = personValidator.validate(person) }

document library – SharePoint Online: Video files in the Quick Links Web Part do not work

Using SPO, I create a Quick Links Web Part (on a modern page), add a link, select Site, and choose a video file (MP4) from a document library on the site.

The link appears, I can choose a thumbnail, etc. However, clicking on it does nothing at all, except that it sometimes scrolls the window to place this link at the top.

Curiously, at least in Firefox if I press F5 to reload, then the video loads. It is inexplicable to me.

If, instead of using the Site option when adding a link, I use the From link and paste the link from the "Copy link" function of the document library, everything works.

SharePoint bug? Is there work around?

c # – How to track a document from a SharePoint document library (SharePoint online) on behalf of other users

Hi, I had reached the functionality to track the SharePoint document using the code below.

            url: webUrl + "/_api/social.following/follow",
            type: "POST",
            dataType: 'json',
            processData: false,
            contentType: "application/json;odata=verbose",
            data: JSON.stringify({
                "actor": {
                    "__metadata": {
                        "type": "SP.Social.SocialActorInfo"
                    "ActorType": 1,
                    "ContentUri": DocumentUrl,
                    "Id": null

            headers: {
                "Accept": "application/json;odata=verbose",
                "X-RequestDigest": data.d.GetContextWebInformation.FormDigestValue

But my requirement is to follow the document by dynamic user and not current user.
Is there any way to get this functionality, whether we use Rest Api, CSOM, SSOM or PowerShell?
Need urgent help.

Help should be appreciated.

Thank you.